Glossário / Endereços e chaves
Reutilização de endereço
- O que significa reutilização de endereço?
- Reutilização de endereço significa aceitar mais de um pagamento no mesmo endereço de bitcoin, o que publica um vínculo público e permanente entre todas as pessoas que já pagaram a você naquele endereço.
Endereços de bitcoin são gratuitos e praticamente ilimitados, e nada no protocolo impede que você use um duas vezes. O whitepaper de Satoshi argumentou contra isso na seção 10, recomendando um novo par de chaves para cada transação, para que os pagamentos não possam ser vinculados a um proprietário comum. A reutilização é o que transforma um registro pseudônimo em um registro pesquisável das suas finanças.
Como funciona
A blockchain é um índice público, e um endereço é a chave pela qual ela é indexada. Todo explorador de blocos oferece uma caixa de busca de endereços que devolve o histórico completo em uma única página: cada pagamento recebido, cada pagamento enviado, o saldo acumulado e os carimbos de data e hora. Carregar essa página não custa nada e não exige a permissão de ninguém.
Usar um endereço uma vez produz uma única linha. Usá-lo quarenta vezes produz quarenta linhas que comprovadamente pertencem ao mesmo destinatário, e cada pagador pode ler as outras trinta e nove. Nada foi quebrado para descobrir isso. O registro é público por construção, e a única privacidade disponível é a dificuldade de atrelar um nome a uma sequência de caracteres.
A reutilização também muda o que se sabe sobre a chave por trás do endereço. Em uma saída pay-to-public-key-hash ou pay-to-witness-public-key-hash, o endereço se compromete com um hash e a chave pública permanece não publicada até o primeiro gasto. Gaste uma vez e essa chave estará on-chain para sempre. Continue recebendo no mesmo endereço depois disso e cada bitcoin posterior fica atrás de uma chave pública exposta, e não de uma oculta, o que é uma posição mais fraca sem nenhum benefício.
As carteiras resolveram isso anos atrás sem pedir que você pensasse no assunto. Uma conta BIP-32 contém 2.147.483.648 endereços só no seu ramo de recebimento, e a tela de recebimento avança para o próximo endereço não usado após cada pagamento. O Bitcoin Core marca os endereços como usados e se recusa a entregá-los novamente. Reutilizar um endereço de propósito hoje geralmente significa copiar um antigo do seu próprio histórico.
Por que isso importa quando você compra bitcoin
Toda corretora que verificou sua identidade guarda seu endereço de saque em um registro de conformidade, e a reutilização é o que permite que esse único registro cubra tudo o que você possui.
Saque para o mesmo endereço 52 vezes ao longo de um ano e você entrega à corretora, ao fornecedor de análise dela e a qualquer pessoa que intimar um dos dois um único fio que desenrola toda a sua posição de poupança. Saque para um endereço novo a cada vez e essas mesmas partes veem 52 saídas sem conexão entre si, cuja relação precisa ser inferida em vez de lida em uma página. A inferência muitas vezes é possível. Também dá trabalho, e não é prova.
As listas de permissões de saque complicam o conselho, e fingir o contrário seria desonesto. A Kraken, a Binance e a maioria das grandes plataformas permitem restringir os saques a uma lista salva de endereços, o que é uma defesa forte contra alguém que assume o controle da sua conta, e isso empurra você para a reutilização. O meio-termo viável é autorizar vários endereços da mesma carteira em vez de um só, e manter a lista. A tomada de controle de contas esvazia mais carteiras do que a análise de blockchain.
As empresas enfrentam a versão direta do problema. Uma loja que imprime um único código QR e o cola no balcão está mostrando a cada cliente a sua arrecadação diária e o seu saldo. Os processadores de pagamento derivam um endereço novo por fatura a partir de uma chave pública estendida exatamente por esse motivo, e uma página de doações que publica um único endereço estático escolheu a publicidade em vez da privacidade, às vezes sem perceber.
O que um endereço de doações reutilizado revela
Publique um endereço em um perfil público, deixe-o lá por um ano, e o resultado legível é desconfortável.
Qualquer pessoa pode somar o valor recebido até o último satoshi, contar os pagamentos individuais e ler o minuto em que cada um chegou. Um doador que pagou direto de uma conta verificada em uma corretora pode ser associado à própria contribuição e depois ver todas as outras contribuições ao lado dela. Quando você por fim gasta, a transação revela quais bitcoins você escolheu, quanto voltou como troco e para onde foi, a uma audiência que já sabe que o endereço pertence a você pelo nome.
Os pagamentos silenciosos, especificados no BIP-352, são a resposta moderna a essa disjuntiva. Você publica uma única sequência estática exatamente como antes, e cada remetente a usa para calcular um endereço on-chain diferente, de modo que o identificador público permanece constante enquanto a blockchain não mostra nada em comum entre os pagamentos. Isso não exige nenhuma mudança de consenso, apenas suporte nas duas carteiras, e por isso a disponibilidade é irregular em vez de universal.
Reutilização de endereços vs fusão de entradas
A reutilização de endereços vincula pagamentos que chegam a um endereço; a fusão vincula bitcoins que chegaram a vários. Uma fusão acontece sempre que uma transação gasta duas ou mais entradas juntas, o que diz a qualquer observador que uma única parte detinha as chaves de todas elas, uma regra que as empresas de análise de blockchain chamam de heurística da propriedade comum das entradas. Os dois problemas se agravam mutuamente. Uma higiene cuidadosa de endereços é desfeita por uma única varredura que gasta tudo de uma vez, e o controle de moedas (coin control) é a resposta para o segundo problema, não para o primeiro.
Reutilização de endereços vs um ataque de poeira
A reutilização de endereços é autoinfligida; um ataque de poeira é feito contra você. Um atacante envia algumas centenas de satoshis para milhares de endereços e espera que os destinatários fundam essa poeira em uma transação maior, o que vincula o endereço com poeira ao restante dos bitcoins deles. A reutilização não precisa de atacante e vaza bem mais, já que expõe um histórico completo de pagamentos em vez de um único vínculo. Os dois são tratados da mesma forma: endereços novos na entrada, seleção deliberada de entradas na saída.