Ícone do site Criptonizando

Hacker revela como invadiu uma carteira de Bitcoin em 30 horas

Hacker-bitcoin-carteira-30-horas-hackers polícia federal unick indeal criptomoedas pirâmide

Um hacker e desenvolvedor da Lightning Network chamado John Cantrell revelou como concluiu a árdua tarefa de invadir uma carteira de bitcoin, roubando quase R$50 mil para si.

Cantrell levou 30 horas para checar nada menos que 1 trilhão de possíveis frases mnemônicas (combinações de 12 palavras colocadas em uma ordem específica que permitem o acesso a uma carteira).

De onde surgiu a ideia

Na verdade, tudo fez parte de um desafio orquestrado por Alistair Milne, CIO do Altana Digital Currency Fund, que teve início em maio.

Periodicamente, Milne publicou dicas para a frase inicial de 12 palavras para um endereço de carteira que continha 1 BTC inteiro, e os competidores deveriam decifrar o código para conseguir o prêmio.

O CIO planejava publicar as última três palavras de uma só vez, visando evitar que alguém forçasse a entrada na carteira ao adivinhar palavras continuamente até que uma combinação funcionasse.

Contudo, seu plano falhou, e Cantrell conseguiu invadir a carteira com apenas 8 palavras da frase inicial.

Testando “aproximadamente 1,1 trilhão de mnemônicos possíveis”, o desenvolvedor foi capaz de adivinhar as outras 4 palavras restantes, encontrar a combinação certa e desbloquear o endereço, levando o prêmio.

Como isso foi possível

As frases mnemônicas têm um número limitado de 2048 palavras que podem conter.

Para vencer o desafio, Cantrell contou que escreveu um programa especial e executou algumas benchmarks antes de descobrir que seu equipamento na época não seria capaz de realizar a tarefa.

O laptop do desenvolvedor  conseguiu verificar apenas 1.250 mnemônicos por segundo, totalizando 108 milhões por dia.

“Isso significa que minha CPU levaria cerca de 25 anos para gerar e verificar as 1 trilhão de possibilidades necessárias para a força bruta do mnemônico, enquanto conhecia apenas oito das palavras”, observou ele.

Assim, Cantrell decidiu usar a computação em nuvem e alugou várias dezenas de placas gráficas em um mercado de GPU e o serviço de computação em nuvem da Microsoft, Azure.

Depois, escreveu um software que distribuiria o trabalho em lotes por cada placa gráfica.

Quando a oitava palavra foi publicada, o hacker ligou as máquinas e passou a testar “cerca de 40 bilhões de mnemônicos por horax” no pico.

“Isso significa que levaria cerca de 25 horas para testar os 1 trilhão de mnemônicos. Eu sabia que, em média, levaria apenas 50% do tempo”, disse Cantrell.

No entanto, após testar 85% das combinações, o hacker ainda não havia decifrado o código e percebeu que seu plano dependia das palavras estarem na ordem certa, e se não estivessem, “haveria 8! (fatorial) mais possibilidades”.

Cantrell passou um dia inteiro fazendo cálculos e quase desistiu, quando, para sua surpresa, “um pouco mais tarde, naquela noite (em 91%) e depois de quase 30 horas e exatamente 1 trilhão de cheques (1.000.710.602.752), o sistema encontrou uma solução!”, afirmou.

Temendo que mais alguém tivesse encontrado a resposta, o desenvolvedor pagou uma taxa de 0,01 BTC (cerca de R$493) para transferir o valor para sua carteira pessoal.

O hacker agora planeja lançar seu próprio desafio “que não pode ser ganho com software” para pagar adiante.

Receba artigos sobre Bitcoin e Criptomoedas no seu email

*Obrigatório
Sair da versão mobile