A Parte 1 desta série explicou o que realmente são os computadores quânticos. Não apenas versões mais rápidas de computadores normais, mas um tipo de máquina fundamentalmente diferente que explora as estranhas regras da física que só se aplicam à escala de átomos e partículas.
Mas saber como funciona um computador quântico não diz como ele pode ser usado para roubar bitcoins por um malfeitor. Isso requer entender o que ele está realmente atacando, como a segurança do bitcoin é construída e exatamente onde está a fraqueza.
Esta peça começa com a criptografia do bitcoin e vai até a janela de nove minutos necessária para quebrá-la, conforme identificado pelo recente artigo sobre computação quântica do Google.
O mapa de mão única
O Bitcoin usa um sistema chamado criptografia de curva elíptica para provar quem possui o quê. Cada carteira possui duas chaves. Uma chave privada, que é um número secreto, com 256 dígitos em binário, aproximadamente tão longo quanto esta frase. Uma chave pública é derivada da chave privada realizando uma operação matemática na curva específica chamada “secp256k1.”
Pense nisso como um mapa de mão única. Comece em um local conhecido na curva com o qual todos concordam, chamado ponto gerador G (conforme mostrado no gráfico abaixo). Execute um número particular de etapas em um padrão definido pela matemática da curva. O número de etapas é sua chave privada. Onde você termina na curva é sua chave pública (ponto K no gráfico). Qualquer pessoa pode verificar se você acabou naquele local específico. Ninguém consegue descobrir quantos passos você deu para chegar lá.
Tecnicamente, isso é escrito como K = k × G, onde k é sua chave privada e K é sua chave pública. A “multiplicação” não é uma multiplicação regular, mas uma operação geométrica onde você adiciona repetidamente um ponto a si mesmo ao longo da curva. O resultado chega a um local aparentemente aleatório que apenas o seu número específico k produziria.
A propriedade crucial é que avançar é fácil e retroceder é, para os computadores clássicos, efetivamente impossível. Se você conhece k e G, calcular K leva milissegundos. Se você conhece K e G e deseja descobrir k, você está resolvendo o que os matemáticos chamam de problema do logaritmo discreto da curva elíptica.
Estima-se que os algoritmos clássicos mais conhecidos para uma curva de 256 bits levariam mais tempo do que a idade do universo.
Este alçapão unilateral é todo o modelo de segurança. Sua chave privada prova que você possui suas moedas. Sua chave pública é segura para ser compartilhada porque nenhum computador clássico pode reverter a matemática. Quando você envia bitcoin, sua carteira usa a chave privada para criar uma assinatura digital, uma prova matemática de que você conhece o número secreto sem revelá-lo.
O algoritmo de Shor abre a porta nos dois sentidos
Em 1994, um matemático chamado Peter Shor descobriu um algoritmo quântico que quebra o alçapão.
O algoritmo de Shor resolve o problema do logaritmo discreto de forma eficiente. A mesma matemática que um computador clássico levaria mais tempo do que a existência do universo, o algoritmo de Shor lida com o que os matemáticos chamam tempo polinomialo que significa que a dificuldade aumenta lentamente à medida que os números aumentam, em vez de de forma explosiva.
A intuição de como funciona remonta às três propriedades quânticas da Parte 1 desta série.
O algoritmo precisa encontrar sua chave privada k, dada sua chave pública K e o ponto gerador G. Ele converte isso em um problema de encontrar o período de uma função. Pense em uma função que recebe um número como entrada e retorna um ponto na curva elíptica.
À medida que você alimenta números sequenciais, 1, 2, 3, 4, as saídas eventualmente se repetem em um ciclo. A duração desse ciclo é chamada de período, e quando você sabe com que frequência a função se repete, a matemática do problema do logaritmo discreto é resolvida em uma única etapa. A chave privada cai quase imediatamente.
Encontrar esse período de uma função é exatamente para o que os computadores quânticos foram construídos. O algoritmo coloca seu registro de entrada em uma superposição (ou, na mecânica quântica, uma partícula existe em vários locais simultaneamente), representando todos os valores possíveis simultaneamente. Aplica a função a todos eles de uma vez.
Em seguida, aplica uma operação quântica chamada transformada de Fourier, que faz com que o número de respostas erradas seja cancelado enquanto as respostas corretas são reforçadas.
Quando você mede o resultado, o período aparece. A partir deste período, a matemática comum recupera k. Essa é a sua chave privada e, portanto, as suas moedas.
O ataque usa todos os três truques quânticos da primeira peça. A superposição avalia a função em todas as entradas possíveis de uma só vez. O emaranhamento liga a entrada e a saída para que os resultados permaneçam correlacionados. ‘Interferência’ filtra o ruído até que reste apenas a resposta.
Por que o bitcoin ainda funciona hoje
O algoritmo de Shor é conhecido há mais de 30 anos. A razão pela qual o Bitcoin ainda existe é que sua execução requer um computador quântico com um número grande o suficiente de qubits estáveis para manter a coerência durante todo o cálculo.
Construir essa máquina está fora de alcance, mas a questão sempre foi quão grande é “suficientemente grande”.
Estimativas anteriores diziam milhões de qubits físicos. O artigo do Google, publicado no início de abril por sua divisão Quantum AI com contribuições do pesquisador da Fundação Ethereum, Justin Drake, e do criptógrafo de Stanford, Dan Boneh, reduziu esse número para menos de 500.000.
Ou uma redução de cerca de 20 vezes em relação às estimativas anteriores.
A equipe projetou dois circuitos quânticos que implementam o algoritmo de Shor em relação à curva elíptica específica do Bitcoin. Um usa aproximadamente 1.200 qubits lógicos e 90 milhões de portas Toffoli. O outro usa aproximadamente 1.450 qubits lógicos e 70 milhões de portas Toffoli.
Uma porta Toffoli é um tipo de porta que atua em três qubits: dois qubits de controle, que afetam o estado de um terceiro qubit alvo. Imagine isso como três interruptores de luz (qubits) e uma lâmpada especial (o alvo) que só acende se dois interruptores específicos forem ligados ao mesmo tempo.
Como os qubits perdem seu estado quântico constantemente, conforme explicado na Parte 1, são necessárias centenas de qubits redundantes verificando o trabalho uns dos outros para manter um único qubit lógico confiável. A maior parte dos computadores quânticos existe apenas para detectar os erros da própria máquina antes que eles estraguem o cálculo. A proporção de aproximadamente 400 para 1 entre qubits físicos e lógicos reflete quanto da máquina existe como infraestrutura de autocuidado.
A janela de nove minutos
O artigo do Google não reduziu apenas a contagem de qubits. Ele introduziu um cenário de ataque prático que muda a forma de pensar sobre a ameaça.
As partes do algoritmo de Shor que dependem apenas dos parâmetros fixos da curva elíptica, que são publicamente conhecidos e idênticos para cada carteira bitcoin, podem ser pré-computadas. O computador quântico fica em estado preparado, já na metade do cálculo, esperando.
No momento em que aparece uma chave pública alvo, seja transmitida em uma transação para o mempool da rede ou já exposta na blockchain de uma transação anterior, a máquina só precisa terminar a segunda metade.
O Google estima que o segundo tempo leve cerca de nove minutos.
O tempo médio de confirmação de bloqueio do Bitcoin é de 10 minutos. Isso significa que se um usuário transmitir uma transação e sua chave pública estiver visível no mempool, um invasor quântico terá cerca de nove minutos para obter uma chave privada e enviar uma transação concorrente que redirecione fundos.
A matemática dá ao invasor cerca de 41% de chance de terminar antes que sua transação original seja confirmada.
Esse é o ataque mempool. É alarmante, mas requer um computador quântico que ainda não existe.
A maior preocupação, no entanto, são os 6,9 milhões de bitcoins (cerca de um terço da oferta total) em carteiras onde a chave pública já foi permanentemente exposta na blockchain. Essas moedas são vulneráveis a um ataque “em repouso” que não exige corrida contra o relógio. O invasor pode demorar o tempo que for necessário.
Um computador quântico executando o algoritmo de Shor pode transformar uma chave pública do bitcoin na chave privada que controla as moedas. Para moedas transacionadas desde o Taproot (uma atualização de privacidade do Bitcoin que foi lançada em novembro de 2021), a chave pública já está visível. Para moedas em endereços mais antigos, a chave pública fica oculta até você gastar, momento em que você tem cerca de nove minutos antes que o invasor o alcance.
O que isso significa na prática, que 6,9 milhões de bitcoins já estão expostos, o que o Taproot mudou e a rapidez com que o hardware está diminuindo a lacuna, é o assunto da próxima e última peça desta série.
Fontecoindesk



