Lidando com Bitcoin Core

Índice
Em tutoriais anteriores, vimos uma introdução a BitcoinPudemos ver suas características, usos e também estávamos usando um thin client para explicar como as transações são tratadas por esta tecnologia.
Embora este cliente que usamos sirva aos seus propósitos, ele não é tão completo quanto o Bitcoin Core, também conhecido como Cliente Satoshi, que implementa todos os aspectos do sistema bitcoin, incluindo a carteira, transações, verificações completas da rede bitcoin e um nó completo para ela.
Para obter o cliente vamos à página oficial no link a seguir, lá selecionamos nosso sistema operacional, no caso deste tutorial usaremos a versão do janelas, finalmente selecionamos Bitcoin Core para começar a baixar o tablet:

PROLONGAR

Nós descompactamos e executamos a instalação como de costume, como com qualquer aplicativo de janelasApós a instalação, executamos nosso cliente, que deve ser semelhante a este:

PROLONGAR

Podemos notar várias coisas interessantes na primeira vez que executamos o Bitcoin Core, o primeiro é o estado de fora de sincronia ambos na seção Saldos como de Transações Recente e isso porque nosso cliente mantém uma cópia completa de cada uma das transações que foram feitas desde a criação da rede bitcoin.
É por isso que podemos ver na parte inferior uma mensagem que diz: 3 anos e 46 semanas atrás, este é o tempo restante para Bitcoin Core para terminar de sincronizar todos os dados de rede em nosso computador, então teremos que esperar alguns dias para começar a fazer transações com ele.
RecomendaçãoRecomendamos que para este processo tenhamos espaço suficiente em nosso disco rígido, já que em 2013 um tamanho de 16 GB desta informação, também é importante ter uma boa ligação à Internet porque se não passarmos não dias mas sim meses a tentar sincronizar o nosso cliente e claro o tempo, pois se temos alguma urgência para efectuar transacções é melhor instalar Multibit ou algum outro cliente fino.
Muitos certamente estarão pensando que ganham baixando esse cliente e gastando dias e até semanas tentando sincronizá-lo, claro que a possibilidade de ter um registro de todas as transações feitas desde o início da rede é uma grande vantagem, mas isso é não onde esse cliente realmente brilha.
API JSON-RPCOnde ele brilha Cliente Satoshi está na implementação de uma interface JSON-RPC Pode ser acessado por linha de comando, onde aqui podemos interagir com os recursos que temos na API que até nos permite usá-lo em conjunto com linguagens de programação para obter dados da rede bitcoin através dele.
Para ver como funciona esse recurso, vamos executar nosso cliente novamente, caso o tenhamos fechado e vamos para a guia Ajuda, selecionamos a opção Janela de depuração e nessa interface vamos para a seção Console:

PROLONGAR

Já aqui podemos começar a testar alguns comandos para testar a funcionalidade do API, vamos primeiro usar o comando obter informação, que nos permite exibir informações básicas sobre a rede bitcoin, a carteira e o banco de dados da rede, vamos ver como fica sua resposta:

PROLONGAR

Além dos dados acima citados, podemos obter a versão do cliente que estamos executando, o protocolo, o saldo em nossa carteira que obviamente é zero, bem como os blocos que são visíveis ao cliente. Esta informação é interessante, mas o que é mais interessante é o formato em que a obtemos, se formos desenvolvedores podemos rapidamente identificar que é um JSON que é extremamente fácil de consumir por outras linguagens de programação e até mesmo sua leitura é bastante fácil para o olho humano.
Uma vez que tivemos uma primeira abordagem com o console e pudemos obter informações básicas com ele, vamos dar um passo adiante e usá-lo para realizar algumas operações interessantes com nosso portfólio.
Antes de começar a criação das chaves para a nossa carteira e a utilização dos comandos nela, é importante pensar primeiro na sua segurança, para isso procederemos à sua encriptação com uma palavra-passe à nossa escolha.
Para esta operação usaremos o comando criptografar carteira com a senha solvético, onde vale lembrar que devemos substituir esta senha por outra muito mais robusta, após executar o comando executamos o comando novamente obter informação para ver como nossa carteira foi criptografada. Vejamos então a resposta por console desta ação:

PROLONGAR

Como podemos ver, temos uma nova entrada em nosso JSON chamada desbloqueado_até que indica por quanto tempo a senha da nossa carteira ficará armazenada na memória e a manterá desbloqueada para uso, onde inicialmente como podemos ver o valor será zero, indicando que a carteira está bloqueada.
Agora, para desbloquear nossa carteira, só temos que executar o comando senha da carteira que aceita dois parâmetros, a senha para desbloquear a carteira e o número de segundos até que a carteira seja novamente bloqueada automaticamente, algo bastante útil e que implementa altos níveis de segurança, vamos ver a execução do comando e com o comando obter informação vamos obter os valores para a entrada desbloqueado_até:

PROLONGAR

Então vemos como o valor de desbloqueado_até mudou, indicando que nossa carteira está desbloqueada.
Outra das funcionalidades e vantagens que possui Bitcoin Core É a possibilidade de fazer backups do nosso portfólio e depois restaurá-lo sem problemas. Para isso usaremos o comando carteira de backup seguido do nome que daremos ao nosso arquivo:
 backupwallet wallet.backup
Agora, para realizar a restauração é importante que primeiro desbloqueemos a carteira e com o comando importwallet realizamos a operação:
 importwallet wallet.backup

Para começar a trabalhar com transações dentro da rede bitcoin devemos obter um endereço, que é gerado no pool de endereços da rede, para isso basta usar o comando getnewaddress Para obter alguns, vamos ver a resposta do console:

PROLONGAR

Como podemos ver, o comando nos retorna um endereço, que irá variar quantas vezes o comando for utilizado e é o que nos permitirá iniciar as transações dentro da rede bitcoin. Além disso, podemos ver os endereços que temos em nosso portfólio com o comando getaddressesbyaccount e com o comando getbalance obter o nosso equilíbrio, vamos ver:

PROLONGAR

Como vemos o Cliente Satoshi Ele nos dá uma grande quantidade de comandos para interagir com a rede bitcoin e nos ajudar com nossas transações, o que vimos foi uma pequena amostra do poder dela, bem como dos comandos disponíveis. No caso de desejarmos dar uma olhada em todas as opções de API, vamos para a guia Ajuda e na seção Opções do console de comando podemos consultar o resto deles:

PROLONGAR

Enquanto o cliente Bitcoin Core É o mais completo que existe para a gestão de toda a tecnologia bitcoin, nunca é demais que estejamos cientes de outras alternativas a ela, alternativas além Multibit e que nos permitem interagir com a rede bitcoin e as estruturas de dados nela presentes.
Essas alternativas são implementadas em várias linguagens de programação, dando-nos uma imensa gama de possibilidades para trabalhar com bitcoin:
Ferramentas libbitcoin e sxÉ um cliente e uma livraria, por sua vez, construída sobre C ++, Possui muitas das características que explicamos neste tutorial, como a funcionalidade de poder executar comandos nele para realizar operações.
bitcoinjbitcoinj é um cliente totalmente orientado a nós desenvolvido em Java. Você pode manter uma carteira, receber e enviar transações, onde um dos seus pontos fortes é que você não precisa manter uma cópia de toda a rede e transações na rede bitcoin.
pycoinUm cliente desenvolvido em Pitão e que suporta a manipulação de bitcoins bem como de suas transações, mesmo utilizando a linguagem para lidar com transações não padronizadas.
Como podemos ver, temos outras alternativas além de Bitcoin Core, onde a escolha de um ou de outro dependerá claramente dos requisitos de cada usuário e de sua filosofia para trabalhar com a rede bitcoin.
Com isso terminamos este tutorial, onde pudemos aprender todos os recursos que o Cliente Satoshi para trabalhar com a rede bitcoin, bem como a possibilidade de executar comandos alargando a sua funcionalidade e dando-nos ferramentas adicionais que podemos utilizar em nosso benefício.

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave