Ocorre lançamento de Bitcoin Core 0.17.0

Os desenvolvedores do Bitcoin Core, Gregory Maxwell, Andrew Poelstra, Yannick Seurin e Peter Welle, publicaram o White Paper a respeito da introdução do esquema de autenticação e assinatura eletrônica Shnorr ao protocolo Bitcoin para resolver o problema da escala.

Publicado em 8 de outubro de 2018 por

Os desenvolvedores do Bitcoin Core apresentaram uma grande atualização para o cliente mais popular do Bitcoin.

A nova versão do cliente esteva em desenvolvimento durante sete meses sob a liderança de Wladimir van der Laan e contou com a participação de 135 colaboradores. A atualização também é o resultado do processamento de mais de 700 pedidos de usuários. A nova versão do Bitcoin Core contém uma série de novos recursos. Além disso, o desempenho foi melhorado e alguns erros foram consertados.

Seleção otimizada de moedas

As moedas são armazenadas na carteira como fragmentos separados (saídas de transação). Na maioria dos casos, cada fragmento corresponde a uma transação recebida. Sendo assim, todos esses fragmentos representam quantidades diferentes.

Quando um usuário envia um pagamento de sua carteira e levando em conta a comissão, os fragmentos são combinados para obter o valor necessário. Muitas vezes, não é possível coletar a quantidade exata com fragmentos inteiros. Nesse caso, um chamado “endereço para troca” é adicionado à transação, o que permite a devolução do excesso de fundos para a carteira do remetente.

Até agora, o Bitcoin Core reunia vários fragmentos e calculava a comissão necessária para completar a transação. Em alguns casos, a adição dessa comissão exigia a inclusão de mais um fragmento ausente na transação desde o começo.

O Bitcoin Core 0.17.0 usa o algoritmo “branches and borders” criado pelo desenvolvedor do BitGo, Mark Ehrhardt. Isso traz duas importantes melhorias. Primeiro, a comissão para cada fragmento é calculada antes do mesmo se tornar parte da transação – isso ajuda a evitar a adição de novos fragmentos para cobrir a comissão. Em segundo lugar, o algoritmo “tenta” comparar diferentes fragmentos de modo que uma quantidade tão próxima quanto possível da solicitada pelo remetente é obtida. Assim, em alguns casos, não há necessidade de um “endereço para troca”.

Esta função é particularmente relevante para as carteiras “grandes” à disposição das corretoras de criptomoedas que podem lidar com muitos fragmentos. O novo algoritmo para selecionar moedas no Bitcoin Core 0.17.0 contribui para um certo aumento na privacidade.

Criação e uso simples das novas carteiras

A partir da versão Bitcoin Core 0.15.0, os usuários podem criar várias carteiras: uma para necessidades diárias, uma para negócios, uma para câmbio, etc. Cada uma dessas carteiras tem seu próprio endereço, chave privada e, consequentemente, um saldo.

Até hoje, várias carteiras só podiam ser criadas no estágio de lançamento de um novo nó, e não através da interação com a interface gráfica. No Bitcoin Core 0.17.0, no entanto, essas restrições foram removidas: os usuários agora podem criar carteiras a qualquer momento e por meio de uma interface gráfica.

O Bitcoin Core 0.17.0 inclui mais um recurso chamado “Scantxoutset”, que permite que o usuário verifique rapidamente se uma nova carteira contém fundos (por exemplo, se ela foi restaurada importando uma chave privada de outra carteira). Nesse caso, a verificação é realizada por meio da análise do UTXO e não pela verificação de todo o histórico de transações.

A compatibilidade de carteiras HD e não HD

Versões mais recentes do Bitcoin Core usam carteiras hierarquicamente determinísticas (HD). Os usuários dessas carteiras precisam salvar apenas a frases-seed para fazer backup.

Adicionalmente, os usuários atualizados para a versão 0.13.0 ou superior não eram capazes de criar novas carteiras HD. O Bitcoin Core 0.17.0 corrige este problema permitindo que usuários atualizados usem carteiras no formato HD.

Endereços no formato watch-only

As carteiras BTC armazenam chaves privadas que permitem que os usuários gastem dinheiro. Contudo, a partir de um certo momento, o Bitcoin Core suporta também endereços em um formato “somente visualização”. Chaves privadas para esses endereços não são armazenadas na carteira, mas as moedas associadas a elas ainda são exibidas. Isso permite que os usuários aceitem pagamentos com facilidade e acompanhem o saldo. As chaves privadas são armazenadas offline.

O Bitcoin Core 0.17.0 leva essa ideia a um nível superior, permitindo a criação de carteiras especiais “somente para visualização”. Nessas carteiras, cada endereço separado possui o mesmo status. Essa abordagem facilita o monitoramento dos fundos armazenados em carteiras hardware ou de papel usando frases-seed.

Transações parcialmente assinadas

A Primeira Moeda permite transações complexas. Estas incluem:

  • Transações com assinatura múltipla (com participação de vários usuários);
  • Transações de privacidade maior (tais como CoinJoin, onde vários usuários unem suas transações em uma única transação).

O Bitcoin Core 0.17.0 suporta o framework BIP-174 de Transações Parcialmente Assinadas de Bitcoin (PSBT), desenvolvido por Andrew Chow. Este framework permite que o usuário assine parcialmente uma transação adicionando metadados a ela, que podem ser usados por outra pessoa para concluir a transação.

Além disso, o PSBT permite que o usuário proteja seus fundos bloqueando-os em uma carteira com assinatura múltipla. Para desbloquear os fundos será preciso uma chave privada da carteira Bitcoin Core, bem como a assinatura da carteira de hardware.

Atualmente, a função de transações parcialmente assinadas está disponível somente através da linha de comando do Bitcoin Core ou de aplicativos conectados.

Redução do volume da Blockchain

O tamanho da Blockchain do Bitcoin já ultrapassou 180 GB e continua a crescer. No entanto, existe um método chamado “abreviatura da Blockchain”, devido ao qual os usuários não precisarão armazenar dados sobre todas as transações desde o advento do Bitcoin.

Nesse modo de abreviatura, os nós automaticamente “esquecem” os dados das transações antigas e armazenam apenas o que é necessário para uma operação segura. Na nova versão do Bitcoin Core, o acesso a esta função é fornecido através de uma interface gráfica, e não através da linha de comando, como era antes. Isso pode motivar os usuários que desejam executar o nó completo.

A versão completa das alterações no novo Bitcoin Core 0.17.0 pode ser encontrada no GitHub.

Lembramos que no mês passado, publicamos uma revisão da versão pré-lançamento do Bitcoin Core 0.17.0.

Chrys
Chrys é fundadora e escritora ativa do BTCSoul. Desde que ouviu falar sobre Bitcoin e criptomoedas ela não parou mais de descobrir novidades. Atualmente ela se dedica para trazer o melhor conteúdo sobre as tecnologias disruptivas para o website.

Compartilhe!

Leave a Comment