A proposta BIP461 da Bitcoin define um procedimento determinístico para produzir assinaturas ECDSA. Assim, dispositivos de assinatura independentes que o cumpram devem gerar o mesmo resultado para a mesma chave secreta e o mesmo hash de mensagem. Esta comparação pode revelar desvios ao procedimento que ocultem fugas de chaves em assinaturas válidas. Da autoria de Liam Gilligan e integrada no repositório BIPs a 16 de setembro, a proposta continua em estado Draft. As suas assinaturas respeitam as atuais regras de consenso da Bitcoin, pelo que o procedimento não exigiria alterações ao consenso.
Porque é importante
O ECDSA permite escolhas durante a assinatura, incluindo o nonce utilizado, sem que a assinatura deixe de ser aceite pela Bitcoin. Um firmware malicioso poderia usar essa flexibilidade para ocultar dados da chave numa assinatura de transação. O BIP461 fixa essas escolhas através de um procedimento comum, facilitando a deteção de desvios.
A verificação tem limites. Reproduzir uma assinatura exige os mesmos dados de entrada e um dispositivo de assinatura independente com acesso à chave secreta, criando outro ponto de exposição. Uma divergência mostra que pelo menos um dos dispositivos não seguiu o BIP461, mas também pode ocorrer com um dispositivo legítimo que use outro procedimento ECDSA válido. Uma coincidência confirma apenas a assinatura testada, não o comportamento do dispositivo em transações futuras.
Impacto no mercado
O BIP461 oferece aos criadores e utilizadores de carteiras uma possível referência de segurança, não uma prova de que uma carteira está livre de firmware malicioso. A divulgação do Dark Skippy mostrou como um firmware comprometido poderia incorporar dados da seed em assinaturas, embora os investigadores tenham dito não ter observado a técnica em casos reais. A demonstração original usou assinaturas Schnorr; o BIP461 abrange o ECDSA e não trata diretamente do esquema Schnorr do Taproot da Bitcoin.
Um revisor afirmou que a proposta precisava de vetores de teste e de uma implementação de referência para avançar para Complete. O seu valor prático depende de implementações conformes e de comparações cuidadosas que tenham em conta tanto os limites da deteção como os riscos de manusear chaves secretas.
Perguntas frequentes
-
Como pode o BIP461 ajudar a detetar uma fuga oculta da chave de uma carteira?
Define como dispositivos conformes devem produzir uma assinatura ECDSA para a mesma chave secreta e o mesmo hash de mensagem. Um resultado diferente assinala um desvio ao procedimento que deve ser investigado.
-
Implementar o BIP461 exigiria alterar o consenso da Bitcoin?
Não. As assinaturas produzidas segundo a proposta cumprem as atuais regras de consenso da Bitcoin.
-
Uma divergência entre assinaturas BIP461 prova que uma carteira é maliciosa?
Não. Mostra que pelo menos um dispositivo não seguiu o BIP461, mas uma implementação legítima que use outro procedimento ECDSA válido também pode produzir um resultado diferente.
-
Qual é o risco de comparar assinaturas entre dispositivos?
Reproduzir a assinatura exige dados de entrada idênticos e um dispositivo independente com acesso à chave secreta. Dar esse acesso a outro dispositivo cria um risco adicional de exposição.
-
O BIP461 abrange a demonstração Schnorr do Dark Skippy?
Não diretamente. O BIP461 define um procedimento de assinatura ECDSA, enquanto a demonstração original do Dark Skippy usou assinaturas Schnorr. Uma assinatura ECDSA coincidente confirma apenas a amostra testada.