A segunda-feira (13/09) marcou o lançamento oficial do Bitcoin Core 22.0, o 22º grande lançamento do cliente de software original do Bitcoin lançado por Satoshi Nakamoto quase 13 anos atrás.

Supervisionado pelo principal mantenedor do Bitcoin Core, Wladimir van der Laan, esta versão principal mais recente foi desenvolvida por mais de cem colaboradores em um período de cerca de oito meses.

Resultado de cerca de 800 solicitações de pull (sugestões de mudanças), o Bitcoin Core 22.0 é o primeiro grande lançamento do Bitcoin Core a oferecer suporte à próxima atualização do protocolo Taproot, ao mesmo tempo que oferece várias outras melhorias em relação às versões anteriores do Bitcoin Core.

Como um aparte, este também é o primeiro lançamento do Bitcoin Core a retirar o 0 principal de seu número de versão: é Bitcoin Core 22.0 – não Bitcoin Core 0.22.0.

Abaixo estão algumas das mudanças mais notáveis.

Suporte a hardware wallet na interface gráfica do usuário

Carteiras de hardware são dispositivos projetados para manter as chaves privadas seguras, que podem assinar transações sem que as chaves privadas saiam do dispositivo. Ainda assim, para realizar transações, as carteiras de hardware geralmente precisam ser usadas em combinação com uma carteira de software. Várias carteiras de software têm a compatibilidade necessária para fazer isso, mas a carteira Bitcoin Core por algum tempo não foi uma delas.

Isso começou a mudar há alguns anos: o Bitcoin Core é compatível com carteiras de hardware desde a versão 0.18.0. No entanto, os usuários tiveram que usar inicialmente a interface de linha de comando (CLI) para usar esse recurso. Desde o Bitcoin Core 0.20.0, os usuários também podiam usar parcialmente a interface gráfica do usuário (GUI), mas isso ainda exigia alguma cópia e colagem manual para assinar as transações.

O Bitcoin Core 22.0 é o primeiro lançamento do Bitcoin Core a oferecer suporte GUI completo para carteiras de hardware. Usando o software Hardware Wallet Interface (HWI) como uma espécie de complemento, os usuários do Bitcoin Core poderão usar a carteira do Bitcoin Core sem problemas em combinação com dispositivos Ledger, Trezor, BitBox, KeepKey e Coldcard.

Suporte a Invisible Internet Project (I2P)

Uma maneira de desanonimizar os usuários de Bitcoin é analisar a rede Bitcoin e rastrear de quais nodes transações específicas se originam. Os endereços IP associados a esses nós podem ser vinculados a identidades do mundo real.

Para proteger sua privacidade, os usuários do Bitcoin Core já podiam se conectar à rede Bitcoin por meio da rede Tor anônima. Mas o Tor não é a única rede anônima.

O Invisible Internet Project (I2P) é outra rede de comunicação anônima descentralizada, ponto a ponto, em camadas sobre a Internet normal. Como o Tor, ele permite que os usuários se comuniquem roteando mensagens através de uma rede, usando diferentes camadas de criptografia para cada etapa da cadeia de transmissão para mascarar a própria mensagem, bem como os endereços IP do remetente e do destinatário.

(A diferença entre Tor e I2P é sutil e está além do escopo deste artigo. Mas, em resumo, diz-se que o I2P tem uma solução mais distribuída para mapear a rede, que é necessária para o roteamento de mensagens. Também seria melhor orientada para suporte a serviços ocultos, como sites que só estão disponíveis na própria rede I2P. O Tor, por outro lado, tem melhor suporte para nós de saída, que permitem que os usuários se comuniquem com a Internet normal.)

O Bitcoin Core 22.0 agora também oferece suporte à conexão com a rede Bitcoin por meio de I2P. Depois do Tor, isso torna o I2P a segunda rede de anonimato que os usuários do Bitcoin Core podem utilizar para proteger seu endereço IP de seus pares na rede Bitcoin, permitindo-lhes proteger melhor sua privacidade.

Suporte ao Taproot

O Bitcoin Core 0.21.1 foi o primeiro lançamento do Bitcoin Core a incluir a lógica de ativação para a próxima atualização do protocolo Taproot, que será ativado em novembro deste ano. Agora, o Bitcoin Core 22.0 é a primeira versão principal a oferecer suporte à atualização.

Obviamente, isso significa que o Bitcoin Core 22.0 validará totalmente as novas regras do Taproot. A partir do momento em que a atualização for ativada em novembro, todas as transações do Taproot serão verificadas quanto à validade de acordo com as novas regras do protocolo.

Além disso, a carteira Bitcoin Core suportará a criação de saídas básicas do Taproot (“endereços”). Os usuários do Bitcoin Core poderão aceitar pagamentos para saídas Taproot que podem ser gastas com uma única chave privada, mas que é protegida usando a lógica Taproot.

Claro, isso não oferece muitos benefícios (se houver) em comparação com o que já era possível com o software de carteira Bitcoin Core antes; os tipos mais complexos de contratos inteligentes que a Taproot suporta, presumivelmente, serão suportados em versões futuras do Bitcoin Core.

Nos bastidores, o Bitcoin Core também apoiará a criação de descritores específicos do Taproot, que identificam as saídas do Taproot como tais. Essa categorização pode beneficiar aplicativos que dependem do software Bitcoin Core, como carteiras (externas).

Atualização na mempool

A retransmissão de pacote é um projeto contínuo para atualizar a forma como as transações são transmitidas pela rede Bitcoin. No momento, as transações só são retransmitidas se incluírem uma taxa alta o suficiente para serem incluídas no pool de memória (mempool) dos nodes de Bitcoin. Se uma transação não inclui uma taxa alta o suficiente, ela não é aceita por um nó e não é encaminhada para outros nós na rede Bitcoin.

Essa lógica difere um pouco de como as transações são selecionadas para inclusão em um novo bloco de Bitcoin, no entanto. Para determinar se uma transação está incluída em um bloco, a taxa de uma transação não é considerada apenas por si mesma, mas também é levado em consideração se essa transação ajudaria a obter a confirmação de outras transações. Nesse caso, a combinação de taxas de transação é considerada.

Isso permite que os usuários obtenham uma transação com uma taxa baixa que está esperando no mempool “desencravada”, gastando novamente as moedas em uma nova transação com uma taxa alta para compensar. Para obter a segunda taxa (mais alta), os mineradores vão querer aceitar as duas transações ao mesmo tempo. Esse truque é chamado de Child-Pays-For-Parent (CPFP) e pode ser particularmente útil no contexto de alguns protocolos da Camada Dois, como Lightning Network.

A diferença de política entre inclusão de mempool e inclusão de bloco pode, em alguns casos, frustrar a solução CPFP. Se a primeira transação não incluir uma taxa alta o suficiente para ser aceita em mempools em primeiro lugar, uma nova transação para voltar a gastar as moedas com uma taxa mais alta não será aceita em um bloco, porque precisa da primeira transação confirmada antes de ser considerada válida.

Para resolver isso, a retransmissão de pacote permitiria que as transações fossem transmitidas pela rede Bitcoin em pacotes. Em vez de considerar as transações e suas taxas individualmente, as combinações de transações seriam consideradas para inclusão de mempool, assim como acontece para inclusão de bloco.

O Bitcoin Core 22.0 inclui uma etapa para realizar a retransmissão de pacote: os aplicativos conectados ao Bitcoin Core podem testar se as transações seriam incluídas em seus próprios mempools, enviando várias transações como um único pacote. No entanto, a transmissão ou aceitação de tais pacotes pela rede ponto a ponto ainda não é suportada nesta versão.

Multi Assinaturas Segwit maiores

As saídas com várias assinaturas (multisig) são moedas que exigem assinaturas de várias chaves privadas para serem gastas. Isso pode ser, por exemplo, duas assinaturas de duas chaves privadas diferentes, ou três assinaturas de um conjunto de cinco chaves privadas, ou mesmo sete assinaturas de um conjunto de oito chaves privadas e assim por diante.

O Multisig pode ser usado para diversos fins. Um exemplo é proteger fundos usando vários dispositivos para que, mesmo que um dispositivo seja comprometido ou perdido, as moedas ainda estejam seguras e acessíveis. Da mesma forma, multisig pode ser usado para compartilhar o controle sobre fundos entre várias pessoas, exigindo cooperação entre elas para gastar as moedas. Além disso, o multisig é usado em algumas soluções de segunda camada.

O software Bitcoin Core até agora suportava a criação de saídas multisig para até 16 chaves em saídas Segregated Witness (Segwit), embora o protocolo Bitcoin não tenha tal limite. Bitcoin Core 22.0 agora expande a capacidade multisig Segwit para 20 chaves.

Para obter mais detalhes e outras alterações, consulte as notas de lançamento do Bitcoin Core 0.22.

Texto originalmente publicado em BitcoinMagazine por Aaron Van Wirdum.

Compre Bitcoin na Coinext
Compre Bitcoin e outras criptomoedas na corretora mais segura do Brasil. Cadastre-se e veja como é simples, acesse: https://coinext.com.br