Imagine receber uma doação em Bitcoin (BTC), mas não conseguir acessá-la porque a chave privada da carteira está perdida para sempre. Foi esse o desafio que o cientista da computação Edilson Osório, um dos pioneiros de criptomoedas e blockchain no Brasil, enfrentou e conseguiu resolver esta semana.
Osório, que apresenta o programa Morning Cripto no YouTube e no streaming Kick, recebe uma doação de BTC de um usuário que assiste seu programa. Contudo, o dinheiro estava numa carteira da qual o usuário não tinha mais a chave privada, ou seja, os Bitcoins estavam praticamente perdidos.
Mas, estimulado pelo desafio, Osório utilizou sua expertise em criptografia para quebrar a chave privada e recuperar os BTC perdidos. O teste foi um sucesso e resultou em uma generosa doação para Osório e para o Morning Cripto, conforme o próprio Edilson explicou ao CriptoFácil. Entenda como foi essa história.
Generosidade criptografada
De acordo com Osório, o usuário entrou em contato através de mensagem oferecendo uma doação generosa ao programa Morning Cripto. No entanto, o ato de bondade vinha acompanhado de um desafio: quebrar a chave privada da carteira onde estavam os Bitcoins.
O valor total de 0,5 BTC, correspondente a pouco mais de R$ 60.000, representava uma doação vultosa. Mas estava em uma carteira da qual o usuário não sabia a senha. Portanto, o desafio era claro: se você conseguir encontrar a chave, os BTC são seus.
Confira nossas sugestões de Pre-Sales para investir agora
“Acontece que ele tinha dado os Bitcoins como perdidos já. Então, conversando com a comunidade, eles recomendaram falar comigo. Quando ele veio falar, ele já disse que ele tava com esse problema e que estava disposto a doar toda a quantidade caso eu conseguisse acessar a wallet. Aí o incentivo foi bom pra eu pegar o caso”, disse Osório.
De fato, não se trata de um processo fácil. Na maioria dos casos, perder a chave privada de uma carteira significa a perda total e permanente dos BTC que lá estão. Mesmo um ataque de força bruta pode levar milênios para achar uma chave privada – e a palavra milênios aqui não é força de expressão, mas sim literal.
No entanto, os mais de 25 anos de experiência em cibersegurança e uma paixão por desvendar puzzles criptográficos levaram Osório a aceitar o desafio. Ele não fez a quebra da chave ao vivo, mas detalhou o processo em um texto chamado Generosidade Criptografada no seu perfil na rede Medium.
Etapas da quebra
De acordo com Edilson, o primeiro passo foi descobrir todas as informações possíveis sobre a carteira. Para isso, ele solicitou vários dados ao usuário que doou os BTC, desde o endereço da carteira até o modelo da carteira que ele utilizou para gerar a chave.
Além disso, o processo foi facilitado pelo fato de que a pessoa tinha anotado algumas palavras da senha perdida. Isso fez com que as chances de encontrar a seed completa aumentassem. Lembrando que a seed é um conjunto de 12 ou 24 palavras que são a única forma de acessar uma carteira de criptomoedas.
Dessas palavras que o usuário anotou, três não estavam na lista de palavras do BIP39 – uma extensa lista que mostra todas as palavras possíveis para criar uma seed. Osório afirmou que isso provavelmente significa que a pessoa anotou essas palavras erroneamente, ou se confundiu com outras.
Em seguida, o pesquisador utilizou recursos online e seu próprio arsenal de códigos antigos para criar um script em Python que pudesse acelerar o processo. Esse processo teve como foco três aspectos cruciais: o endereço de depósito dos fundos, a seed incompleta e o tipo de hardware wallet utilizada (que no caso foi uma Ledger).
As carteiras Ledger possuem um pequeno defeito em sua interface, fazendo com que algumas palavras se assemelhem e causem confusão aos usuários. Por isso, Osório se concentrou em parônimos que poderiam gerar confusão na interface da Ledger, identificando palavras potenciais candidatas que poderiam auxiliar na economia de tempo valioso de processamento.
O desafio era hercúleo, já que as chances de encontrar a seed correta eram de mais de 8,5 bilhões de interações – especificamente 8.589.934.592. Mas Osório tinha confiança de que, com a identificação de parônimos promissores, seria possível reduzir alguns milhões de interações potenciais.
Encontrando o X
Com isso em mãos, ele executou o script de busca que procurou as palavras que poderiam se encaixar na seed. E apesar da tarefa aparentemente impossível, a busca se mostrou bem-sucedida e aos poucos o mapa do tesouro (ou do Bitcoin) apareceu.
“A emoção tomou conta quando os endereços foram encontrados com sucesso, marcando o fim de um fim de semana intenso e o início de uma celebração merecida. Os scripts criados podem ser encontrados no meu github“, disse Osório.
Por fim, o pesquisador elencou seis dicas para os usuários que estão começando a utilizar criptomoedas terem ao gerar suas seed. Essas dicas de segurança são valiosas e servem para evitar a perda de seus Bitcoins ou qualquer outra criptomoeda:
- Anote sempre as palavras da sua seed em papel, preferencialmente em metal;
- Após configurar sua hardware wallet, resete-a e recupere a seed por inteiro para evitar situações como a descrita acima;
- Considere ter mais de uma hardware wallet para contingências;
- Mantenha backups da sua seed em locais distintos, pois uma única cópia não é suficiente;
- Lembre-se: “Not your keys, not your coins”. As exchanges não são bancos, nem carteiras seguras, nem suas amigas;
- Pratique a autocustódia, uma ferramenta vital para preservar a sua liberdade, autonomia e soberania financeira no mundo digital.