Auto-Custódia: A Ilusão da Liberdade - Parte II

Auto-Custódia: A Ilusão da Liberdade - Parte II

Traduzido do inglês

Imagine que você está voando sobre o Atlântico. Não há internet a bordo, e seu companheiro de assento pede para emprestar 100.000 sats. Você pega o telefone, abre sua carteira Lightning favorita... e vê um erro de "falha ao conectar ao servidor". Suas chaves estão no seu bolso, sua frase inicial está escrita com segurança em casa — mas você não pode enviar o dinheiro.

Essa é a diferença entre possuir e controlar.

Na Parte I deste artigo, explorei como camadas de confiança podem se esconder mesmo sob o rótulo de "autocustódia". Mas os servidores de carteira adicionam outro conjunto de dependências ocultas a esta boneca russa. E isso se aplica até mesmo ao Bitcoin — ou melhor, especialmente ao Bitcoin. Então, vamos detalhar o que exatamente impede você de usar instantaneamente seus sats, mesmo quando a chave privada está armazenada diretamente no seu telefone.

Lightning Network: as chaves são suas — mas onde estão as moedas?

Como é bem sabido, o blockchain do Bitcoin não tem muito espaço. Se cada pessoa na Terra começasse a usar o Bitcoin, cada uma delas só seria capaz de fazer cerca de duas transações em toda a sua vida — porque registrar 8 bilhões de transações em blocos de Bitcoin levaria 36 anos! É por isso que, no caso da adoção em massa, haveria apenas uma maneira prática de enviar bitcoin: através de soluções de segunda camada.

Hoje, a segunda camada mais conhecida para o Bitcoin é a Lightning Network. Eu abordei isso em mais detalhes aqui — dê uma olhada se você ainda não leu.

Em resumo, a Lightning Network é um sistema de canais de pagamento. Cada canal contém sats (satoshis) que são de propriedade conjunta das duas pessoas conectadas pelo canal. Os sats podem se mover para frente e para trás e, após cada movimento, ambos os participantes recebem uma transação, assinada por ambas as partes, o que permite que qualquer um deles retire unilateralmente sua parte dos fundos para seu próprio endereço on-chain.

Este mecanismo foi projetado para garantir que cada participante sempre mantenha o controle total sobre seus sats. Mas esse controle depende de dois componentes principais:

  • Uma chave privada ou frase inicial — isso permanece o mesmo e pode ser anotado e armazenado com segurança offline.
  • A transação de fechamento de canal atual, pré-assinada — esta continua mudando e não pode ser armazenada permanentemente offline.

Os criadores da carteira Muun expressaram isso da melhor forma ao explicar essa nuance:

“Not Your Keys — Not Your Coins” doesn’t mean “Your Keys — Your Coins”

E no caso do Lightning, isso realmente importa. Se você tem sua chave, mas, por algum motivo, não tem acesso à transação de fechamento de canal mais recente (por exemplo, o servidor que a armazena falhou), então você será forçado a confiar na boa fé da outra parte no canal para recuperar seus sats.

Onde esta transação está armazenada?

Se você executar um nó Lightning completo, a transação de fechamento será armazenada lá. Mas quantas pessoas realmente executam nós completos hoje?

Eu diria que a maioria dos usuários da Lightning Network escolhe carteiras móveis que permitem enviar e receber sats de forma rápida e fácil — afinal, esse é o objetivo do Lightning, não é?

Especialmente considerando que os fabricantes dessas carteiras os anunciam unanimemente como autocustódias:

Capturas de tela das carteiras Defiant, BitMask, 10101, Bridge

Todas as carteiras mostradas nas capturas de tela acima deram aos usuários uma frase inicial, e para muitos isso serve como prova de armazenamento sem custódia. Mas, na realidade, nenhuma dessas carteiras incluía sequer um botão para fechar um canal — muito menos acesso à transação que permitiria ao usuário fechar o canal unilateralmente. Para sacar sats, o servidor back-end da carteira teve que aprovar a transação. Se esse servidor ficou offline — ou se recusou a processar a solicitação — seus sats não eram mais seus.

O que isso significa na prática?

Entre as carteiras mostradas nas capturas de tela, o caso mais revelador foi o Bitmask. Após uma das atualizações, os desenvolvedores removeram acidentalmente todas as referências aos ativos da Lightning Network da interface. Isso significava que os usuários perderam completamente o acesso aos seus fundos na Lightning Network. As versões antigas da carteira pararam de funcionar, e a nova simplesmente não exibia nenhum Lightning sat.

Se você tivesse usado a carteira exclusivamente para Lightning, agora ela mostraria que seu saldo é zero.

Bitmask sem Lightning Network

E a frase inicial não ajudaria. Se você importá-la para outra carteira, poderá ver os ativos armazenados na camada base do Bitcoin (se houver) — mas os fundos nos canais de pagamento Lightning ainda seriam inacessíveis.

As coisas ficam ainda mais complicadas com carteiras que usam a arquitetura Breez SDK / Greenlight — como Green, Relai, Blitz e várias outras. Essas carteiras interagem com a Lightning Network exclusivamente por meio de um servidor Greenlight. Por um lado, esta configuração permite que você importe sua frase inicial para outra carteira usando o mesmo sistema e acesse seus fundos Lightning. Por outro lado, isso o torna altamente dependente dos servidores do Greenlight. Se houver uma falha técnica e o canal fechar, seus ativos permanecerão no servidor — não com você.

O rastreador de problemas do GitHub para a carteira Green mostra que os usuários às vezes esperam meses para que a equipe de desenvolvimento resolva os problemas e devolva seus sats. É realmente assim que a autocustódia deveria ser?

Erro de retirada na carteira Green
Mensagem de erro de retirada na carteira Green. Fonte: GitHub do Blockstream

Há também casos de engano descarado. A carteira agora extinta Mutiny também alegou oferecer autocustódia. Naturalmente, forneceu aos usuários uma frase inicial, que deveria significar controle total sobre seus fundos.

Carteira Mutiny alegando ser autocustodial

Mas então, um dia, os desenvolvedores da carteira decidiram introduzir uma taxa nas transações de entrada. Sempre que você recebia sats, a carteira deduzia automaticamente exatamente 1 satoshi do valor. Pode parecer uma taxa trivial — uma com a qual os usuários poderiam conviver —, mas levantou uma questão séria:

  • Eu recebi 1.000.000 sats.
  • Eu nunca assinei uma transação autorizando a dedução de 1 satoshi.
  • Então, por que meu saldo está mostrando 999.999 sats?
  • Quem aprovou isso, se isso deveria ser autocustódia?

Não surpreendentemente, a carteira não conseguiu ganhar força na comunidade Bitcoin e acabou fechando. E quando o fez, manteve uma parte dos fundos do usuário. Porque, na verdade — se uma carteira pode tirar 1 sat de você sem o seu consentimento, o que a impede de tirar mais? Especialmente quando o projeto está fechando e a reputação não importa mais.

Como não se enganar

Muitas vezes vemos a palavra autocustódia e pensamos: "Isso é exatamente o que eu preciso". Os desenvolvedores de carteira sabem disso muito bem — e eles estampam o termo em seus produtos, mesmo quando não deveria estar lá.

Portanto, se você vir uma carteira alegando ser autocustódia, faça a si mesmo algumas perguntas:

  • A carteira depende de um único servidor para processar todas as transações?
  • O que acontece se esse servidor ficar offline?
  • A carteira fornece informações suficientes para acessar seus fundos usando uma carteira diferente?

E não apenas pergunte — teste. Se a carteira for para uma nova rede onde você ainda não possui nenhum ativo, tente enviar uma pequena quantia para ela através do nosso serviço de troca. O Rabbit.io suporta quantidades muito pequenas, então você não arriscará muito se algo der errado com sua carteira.

Valor mínimo de troca em rabbit.io

Compare o valor mostrado em nosso site com o valor que aparece em sua carteira. Se a transação de entrada for "aparada" por uma taxa, isso significa que os desenvolvedores da carteira têm a capacidade de tirar dinheiro de você.

Finalmente, faça um backup de sua carteira, exclua o aplicativo do seu dispositivo, reinicie o dispositivo, reinstale a carteira e tente restaurar o acesso aos seus fundos. Somente após este teste você pode considerar a carteira pronta para uso real.

Escolha suas ferramentas com sabedoria. A verdadeira liberdade é rara — e muitas vezes deturpada.