Nosso blog

Uma falha de segurança na tecnologia blockchain

k

24 Abril 2017

Konstantinos Karagiannis

Posts by authors: Konstantinos Karagiannis, CTO, Security Consulting, Americas, BT.

LinkedInTwitter

Instituições financeiras e empresas dos mais diversos setores estudam a adoção do blockchain. Mas ela oferece mesmo completa segurança nas transações?

Os bitcoins transformaram a nossa ideia do que seja dinheiro, mas não “funcionam” sem a tecnologia de cadeia de blocos – o blockchain.

O maior susto do Halloween

Durante o Halloween de 2008, Satoshi Nakamoto deu um susto no mercado financeiro ao publicar um paper comunicando o conceito do bitcoin. Não se sabe quem é, de fato, a pessoa atrás desse pseudônimo, nem mesmo se é um homem ou uma mulher. Mas sabemos que Satoshi resolveu um problema típico da era digital, o “gasto duplo”. Para colocar a questão de forma simples: você pode enviar um documento digital para uma pessoa e manter uma cópia; e como evitar que se mantenha uma “cópia” também na transferência de moeda digital?

Evitando o “duplo gasto”

Satoshi evitava esse “duplo gasto” (a possibilidade de gastar-se mais de uma vez a moeda digital) criando uma plataforma de registro contábil público e realizado de forma distribuída – o blockchain – que garantiria a confiabilidade e a não duplicidade das transações. Sobre essa plataforma, a criptomoeda bitcoin circularia em segurança, com seu valor intrínseco assegurado pela dificuldade na sua criação e escassez.

A criptografia que tornava isso possível trouxe uma codificação capaz de tranquilizar o mercado, fazendo com que as transações fossem “computacionalmente impossíveis de reversão”. O cenário estava completo. O bitcoin ganhava valor e popularidade, apesar de notícias negativas envolvendo a criptomoeda em transações anônimas e escusas na dark web.

Surgiram outras criptomoedas e logo a tecnologia de blockchain começou a ser usada para diferentes finalidades, como contratos inteligentes e aplicações em que se fazem necessárias a validação de identidade ou propriedade. Até os bancos começaram a estudar a tecnologia, analisando como usar a blockchain nas suas organizações.

Provavelmente logo será impossível trabalhar em uma empresa que não esteja analisando como usar uma blockchain – mais ou menos como era impossível encontrar há alguns anos uma empresa que não estivesse estudando como passar a ter presença na web.

Mas será que é seguro?

Minha palestra na RSA 2017, “Hacking Blockchain”, examinou ataques, antigos e atuais, tendo como alvo implementações dessa tecnologia. Muitos desses ataques de um tipo mais “convencional”, dirigindo-se não propriamente à blockchain, mas às tecnologias que a compõem.

Vamos analisar, por exemplo, um ataque visando as credenciais usadas em uma troca on-line de criptomoeda. Essas trocas funcionam a partir das “hot wallets” – armazenamento on-line das carteiras de bitcoins disponíveis para serem usadas. O hackeamento clássico de credenciais, nesses sites, pode gerar transações ilegais. Alguns ataques são mais criativos, como aqueles que transformam uma “cold wallet” – bitcoins armazenados em meios físicos ou em dispositivos não conectados à Internet – em uma “hot wallet”, pronta para transações fraudulentas.

Mas o problema central, para mim, está em uma falha inerente à blockchain. E que podemos perceber na primeira página do paper publicado por Satoshi. Ela diz respeito à codificação que faz com que a transação seja “computacionalmente impossível de reversão”. Sabemos que a criptografia utilizada em criptomoedas é, atualmente, uma chave pública. E provavelmente em menos de três anos um computador quântico será capaz de hackear essa chave.

Enfrentando a realidade

Fantasia? Não. Cientistas em todo o mundo já provaram que os computadores quânticos podem rodar o algoritmo de Shor e encontrar quase imediatamente a chave privada par de uma chave pública de até 4.096 bits.

E como a chave pública é usada na maioria das implementações de blockchain, incluindo o bitcoin, isso significa que, sempre que ocorrer uma transação, um computador quântico pode obter a chave privada do usuário. Dessa forma, basta gastar um único bitcoin e qualquer entidade com um computador quântico poderá baixar a sua blockchain, ver a sua transação e em poucos minutos gastar o resto do seu “dinheiro”.

A ameaça parece ainda mais séria se você considerar as blockchains projetadas para registro de títulos imobiliários ou outras transações relacionadas à identidade. Um ataque à chave privada pode levar a um tipo irreversível de roubo de identidade, pelo menos dentro desse ecossistema de blockchain.

A NSA – agência de segurança nacional norte-americana – já lançou um alerta sobre o uso de criptografia que não seja “quantum safe”. Talvez estejamos apostando em um castelo de cartas digital, e não em uma cadeia inquebrável. Vamos corrigir agora essa falha das blockchains, antes que seja tarde demais.