2.8 KiB
Guia de Mineração Zcash
Bem vindo! Este guia destina-se a obter Zcash através de mineração, ou "ZEC", no mainnet Zcash. A unidade para mineração é Sol/s (Soluções por segundo).
Se você tiver problemas, entre em contato conosco. Há muito trabalho necessário para torná-lo utilizável e a sua entrada nos ajudará a aparar as bordas mais afiadas. Para obter ajuda de um usuário, recomendamos que utilize o nosso fórum:
Setup
Primeiro, você precisa configurar seu node local da Zcash. Siga o [Guia de Usuário 1.0] (Guia de Usuário 1.0) até o final da seção "Compilação", depois volte aqui. (Você também pode fazer a seção "Testando" se você quiser!)
Configuração
Configure seu node conforme Guia de Usuário 1.0#configuração, incluindo a seção [Ativando a Mineração por CPU] (https://github.com/zcash/zcash/wiki/1.0-User-Guide#enabling-cpu-mining).
Minerando
Agora, que comece a mineração!
$ ./src/zcashd
Para executá-lo em background (sem a tela de métricas do node que é exibida normalmente):
$ ./src/zcashd -daemon
Você deve ver a seguinte saída no log de depuração (~/.zcash/debug.log
):
Zcash Miner started
Parabéns! Você está agora minerando em mainnet.
Recompensas de Mineração
As moedas são mineradas em um t-addr (endereço transparente), mas só pode ser gasto em um z-addr (endereço blindado). Consulte o nosso [Guia do Usuário 1.0 ] (https://github.com/zcash/zcash/wiki/1.0-User-Guide) para obter instruções sobre como usar o comando z_sendmany
para enviar moedas de um t-addr para um z-addr. Você precisará de pelo menos 4GB de RAM para esta operação.
Modificações
Minere para um único endereço
O minerador interno zcashd
usa um novo endereço transparente para cada bloco minerado. Se você quiser usar o mesmo endereço para cada bloco minado, encontre a seguinte linha em src/miner.cpp
(na função ProcessBlockFound()
) e src/wallet/wallet.cpp
(na função CommitTransaction()
):
reservekey.KeepKey();
Remover ou comentar essa linha em ambos os locais.
Use transações P2PKH
O minerador interno zcashd
herdado do Bitcoin usa P2PK para transações de coinbase. A tendência no blockchain do Bitcoin foi de usar P2PKH em vez disso; Estamos considerando mudar o minerador interno para usar P2PKH, mas não para a versão 1.0.
Se você quiser usar P2PKH para suas transações de coinbase, encontre a seguinte linha em src/miner.cpp
(na função CreateNewBlockWithKey()
):
CScript scriptPubKey = CScript() << ToByteVector(pubkey) << OP_CHECKSIG;
Altere isso para:
CScript scriptPubKey = CScript() << OP_DUP << OP_HASH160 << ToByteVector(pubkey.GetID()) << OP_EQUALVERIFY << OP_CHECKSIG;