Carteiras no Bitcoin Core 24.1 apagam a chave mestra ao serem bloqueadas, para que ela não fique na memória (#27080), e a corrupção do peers.dat é evitada serializando só uma vez (#26909). As filas inv-to-send andam mais rápido (#27610), e some um segfault do REST com URIs inválidas (#27468).
O deriveaddresses não cai mais no índice 2147483647 no Bitcoin Core 23.1 (#26275), e desaparece um segfault no MacOS 13 provocado por certas notificações. A interface gráfica agora se recusa a criptografar carteiras watch-only, e o Qt5 passa à 5.15.3 (#24668).
Um -persistmempool sem valor agora equivale a -persistmempool=1 no Bitcoin Core 22.1; antes, desligava por engano a persistência da mempool (#23061). O cálculo de taxas arredonda para cima para não ficar abaixo da taxa esperada (#22949), e um segfault de carteira ligado a external_spk_managers foi corrigido (#23333).
A sincronização de cabeçalhos ganha uma fase de pré-sincronização no Bitcoin Core 24.0.1: para evitar uma possível negação de serviço, os nós verificam o trabalho acumulado de um par antes de guardar seus cabeçalhos, o que pode tornar mais lenta a primeira sincronização (#25717). Também são novidades o RPC sendall e a opção mempoolfullrbf, que aceita substituições sem sinalização BIP125; as carteiras agora usam opt-in RBF por padrão.
O CJDNS ganha suporte completo no Bitcoin Core 23.0, e cai a antiga preferência por pares na porta 8333 (#23542). A estimativa de taxas agora conta substituições RBF, o parâmetro de inicialização -rescan foi removido, e os binários para Linux trazem tracepoints experimentais.
Pares que se comportam mal aparecem como “discouraged” em vez de banidos nos logs do Bitcoin Core 0.20.2: continuam podendo se conectar, mas são os primeiros a serem expulsos, e o estado é zerado ao reiniciar. O -walletnotify volta a disparar para transações de carteira retiradas da mempool por conflito com um novo bloco, e as PSBTs trazem o utxo witness e o não witness para inputs segwit.
Endereços repassados entre pares, os chamados rumoured, ganham limite de frequência no Bitcoin Core 0.21.2 (#22569), e uma linha de comando com -noincludeconf=0 não derruba mais o parser (#22002). Na interface gráfica, as mensagens de erro de URI param de repetir o que o usuário digitou (gui#280).
O suporte a I2P chega ao Bitcoin Core 22.0, e os endereços Tor v2 desaparecem agora que a própria rede Tor os abandonou. Entra o mapeamento de portas NAT-PMP, os RPCs passam a exigir Bech32m para endereços nativos witness versão 1 sob o BIP 350, e os binários oficiais vêm de um build baseado em Guix.
Os modelos de bloco do Bitcoin Core 0.21.1 sinalizam prontidão para o taproot por cerca de três meses. Se 90% dos blocos de um período de ajuste de 2.016 blocos sinalizarem, o taproot entra em lock-in e esta versão aplica os BIPs 341 e 342 a partir do bloco 709.632. Usuários de Windows enfrentam um aviso extra na instalação por causa de um problema no certificado de assinatura de código.
O Bitcoin Core 0.21.0 adiciona redes de teste signet (BIP325) e traz as regras de consenso do Taproot dos BIP341 e BIP342, ativas na signet, mas não na mainnet. Os nós também ganham serviços ocultos Tor v3, retransmissão wtxid do BIP339 e a opção de servir filtros compactos BIP157 aos pares.
Banimentos automáticos dão lugar a um filtro de desencorajamento no Bitcoin Core 0.20.1: pares que se comportam mal ainda podem se conectar, mas têm preferência na hora da expulsão. Transações de carteira em conflito voltam a acionar o -walletnotify, quebrado desde a v0.19, e PSBTs para inputs segwit agora levam o UTXO witness e o não witness.
As mensagens reject do BIP61 e o suporte a pagamentos BIP70 são removidos do Bitcoin Core 0.20.0, que também abandona o OpenSSL. A opção experimental -asmap distribui as conexões entre Sistemas Autônomos, e as configurações rpcwhitelist podem restringir um usuário de RPC a chamadas escolhidas.
Usuários do Tor agora podem acessar o site do Bitcoin Core por um endereço onion, como vinham pedindo com frequência. O serviço oculto abre mais uma rota contra a censura e um caminho de confiança que não depende de autoridades certificadoras nem de DNS.
Passar -blockfilterindex=basic duas vezes não provoca mais um erro fatal do leveldb no Bitcoin Core 0.19.1, versão de manutenção. Ela também corrige o valor origfee devolvido pelo bumpfee e acrescenta verificações de limites em índices e valores nas PSBTs.
Quem baixa a 0.19.0 na verdade leva a 0.19.0.1, porque surgiu um problema logo depois do processo de rc. Novidades desta versão do Bitcoin Core: a flag de carteira avoid_reuse, que pode deixar endereços já usados fora de uma operação, o RPC getbalances, pensado para substituir chamadas de saldo mais antigas, e filtros de bloco BIP158 via -blockfilterindex.
Um proxy SOCKS malicioso podia sobrescrever a pilha do programa em um nó do Bitcoin Core, segundo a divulgação completa da CVE-2017-18350. O estouro de buffer entrou com o suporte a SOCKS5 na v0.7.0rc1 e foi corrigido discretamente na 0.15.1; só ficaram expostos nós configurados para usar um proxy assim, em sistemas com tipo char com sinal.
A versão 0.18.1 do Bitcoin Core corrige a altura de poda devolvida pelo pruneblockchain e faz o signrawtransactionwithkey reportar erro quando falta um redeemScript ou witnessScript. Na interface gráfica, um bug no Mac ao abrir o arquivo de configuração foi resolvido.
Mineradores que chamam getblocktemplate sem a regra segwit agora recebem um erro no Bitcoin Core 0.18.0, já que deixá-la de fora reduz suas recompensas. A configuração de RPC também aperta: rpcallowip não faz mais o nó escutar em todas as interfaces, e uma cerquilha em rpcpassword impede a inicialização.
Os rótulos voltam ao listtransactions no Bitcoin Core 0.17.1: o parâmetro account, descontinuado e renomeado para dummy na 0.17.0, vira label. As correções cobrem um caso extremo de overflow na desserialização e um bug de assinatura de PSBT.
Carteiras agora podem ser carregadas, criadas e descarregadas em tempo de execução via RPC no Bitcoin Core 0.17.0, e não só na inicialização. A nova flag -avoidpartialspends gasta juntas as moedas pagas ao mesmo endereço, com possível custo de taxas mais altas, e uma API de rótulos substitui a de contas, já descontinuada. A CVE-2018-17144 não afeta esta versão.