
Bitcoin Magazine
A questão quântica: que diabos é computação quântica?
O que é computação quântica? Em que um computador quântico é diferente de um computador comum? O que isso tem a ver com o Bitcoin?
Os novos usuários de Bitcoin inevitavelmente se deparam com essas perguntas e precisam encarar as questões que elas levantam sobre a exposição do Bitcoin a uma ameaça verdadeiramente existencial, caso venha a ser desenvolvido um computador quântico viável.
A capacidade de possuir bitcoin se baseia na premissa fundamental de que, sem vazar diretamente uma cópia dele, ninguém além da pessoa que possui uma chave privada pode assinar transações com as moedas protegidas por essa chave. A computação quântica põe essa premissa em questão.
Computadores quânticos não são apenas “computadores, só que mais rápidos”. Eles funcionam de uma maneira fundamentalmente diferente da de um computador clássico e, por isso, são muito mais eficientes do que computadores clássicos em tipos muito específicos de cálculos. É claro que não vou explicar em detalhes como funcionam os computadores quânticos em apenas quatro páginas, mas vou apresentar a intuição básica de como eles diferem fundamentalmente de um computador clássico.
Então, vamos ver como os dois tipos de computador interagem com coisas como chaves criptográficas grandes.
Computadores clássicos
Tudo o que é armazenado em um computador clássico (ou simplesmente computador, daqui em diante) fica guardado como uma sequência de 1s e 0s. Cada bit (1 ou 0) é precisamente um 1 ou um 0; não há ambiguidade. Quando um dado é armazenado, ele é composto de 1s e 0s. Quando um dado é manipulado ou modificado, isso é feito bit a bit, passo a passo, em cada 1 ou 0.
É assim que um computador funciona. Ele modifica linearmente, uma etapa após a outra, as partes discretas e inequívocas dos dados que armazena. Não pode avançar etapas nem pegar atalhos (em termos das etapas que está executando, não de maneiras matematicamente mais eficientes de fazer as coisas); precisa percorrer, uma a uma, as etapas de qualquer cálculo que esteja realizando.
Quando você gera uma chave privada usando um computador, ele obtém um valor aleatório (por exemplo, ao inserir resultados de dados, dados gerais fornecidos pelo usuário, aleatoriedade proveniente do hardware do dispositivo etc.) e o armazena na memória como 1s e 0s. A partir daí, precisa multiplicar esse valor pelo ponto gerador da curva elíptica para obter uma chave pública. Isso é feito com um algoritmo que, reduzido ao seu nível mais básico, consiste literalmente em instruções sobre quais bits pegar, como modificá-los e por quais circuitos “empurrá-los” em nível físico para realizar essa operação e, por fim, colocar de volta na memória o novo valor, modificado bit a bit.
Há outras etapas para chegar a um endereço válido de fato, mas, para os fins deste artigo, não é necessário abordá-las (elas são como a etapa acima: instruções passo a passo sobre como modificar os 1s e 0s na memória).
E se alguém quisesse usar um computador para adivinhar a chave privada de outra pessoa?
Existem 2256 chaves privadas possíveis. Isso representa 115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936 chaves diferentes possíveis.
Um computador teria que tentar cada uma dessas possíveis chaves privadas, uma após a outra (ou quantas conseguir processar em paralelo), seguindo passo a passo as instruções exatas acima para gerar chaves. Quanto mais delas você tentar verificar em paralelo, mais poder computacional será necessário, sem nenhuma possibilidade de encontrar atalhos para reduzir esse custo.
Quanto menos poder computacional você quiser usar, mais tempo isso levará; quanto menos tempo quiser que leve, mais poder computacional será necessário.
Essa é uma tarefa impossível de realizar com um computador. De um lado, o custo computacional é tão alto que nem todos os computadores da Terra juntos conseguiriam pagá-lo; de outro, o custo em tempo é tão elevado que todas as estrelas do universo morreriam antes que você conseguisse verificar todas as possibilidades.
Para realmente alcançar seu objetivo, você precisa de outra opção além de verificar uma por uma, de forma linear ou em paralelo. É aí que entra a computação quântica.
Computadores quânticos
Os computadores quânticos não trabalham com estados discretos. Tudo é exatamente 1 ou 0. A unidade mais básica de informação em um computador quântico é o qubit (a versão quântica de um bit). Diferentemente de um bit, um qubit está em uma superposição onde é simultaneamente um 1 e um 0. Ele só assume um ou outro estado discreto quando é observado.
Este é um dos principais elementos que permitem que um computador quântico calcule de maneira diferente. O outro é o emaranhamento. Os qubits não são apenas armazenados isoladamente; os átomos físicos que os representam e que colapsam para um estado discreto quando observados estão emaranhados juntos. Isso significa que, quando átomos emaranhados são observados e colapsam em um único estado, os átomos emaranhados colapsam para o mesmo estado, não importa quão distantes estejam.
Agora é que as coisas ficam estranhas, e vou ter que ser um pouco vago; ainda assim, você deve sair daqui com uma compreensão intuitiva de por que os computadores quânticos são fundamentalmente diferentes dos computadores clássicos. Um algoritmo em um computador clássico é um conjunto de instruções para receber um conjunto específico de bits e, passo a passo, modificá-los de acordo com as instruções do algoritmo, até terminar e produzir o novo conjunto de bits. Portanto, o algoritmo transforma, passo a passo, um estado discreto em outro.
Os qubits não armazenam estados discretos até serem observados e colapsarem em um deles. Eles armazenam probabilidades. Quando você tem um conjunto de qubits emaranhados de qualquer tamanho (como neste caso hipotético, 2256), cada estado possível em que eles podem colapsar tem uma determinada probabilidade de colapsar nesse estado.
Em vez de serem instruções passo a passo para operar sobre estados discretos, os algoritmos quânticos são um conjunto de instruções sobre como operar nesses qubits emaranhados de modo a alterar as probabilidades dos diferentes resultados. A interferência construtiva é usada para aumentar a probabilidade de um resultado correto, e interferência destrutiva para diminuir a probabilidade de resultados incorretos (observe que isso NÃO é o ruído ou a interferência que dificulta o funcionamento preciso dos computadores quânticos físicos; esse é um conceito diferente).
Assim, enquanto um computador clássico teria de verificar cada chave privada, uma por uma, para encontrar aquela que corresponde a uma chave pública específica, um computador quântico pode simplesmente executar algumas vezes o algoritmo correto e chegar à resposta certa. Ele não faz isso “verificando todas as possibilidades ao mesmo tempo”. Ele simplesmente modifica as probabilidades daquilo em que uma superposição vai colapsar.
É por isso que um computador quântico poderia quebrar as premissas nas quais se baseia a criptografia de curvas elípticas, ao contrário de um computador clássico (e é também por isso que os computadores quânticos só são úteis para certos tipos de cálculo, quando há um espaço enorme de possíveis respostas a verificar).
Não entre em pânico
Essa diferença fundamental entre a computação clássica e a quântica significa que, sim, se um computador quântico viável for de fato produzido e funcionar corretamente, a premissa subjacente que protege os bitcoins individuais de todos os bitcoiners será quebrada. Todos esses fundos ficarão desprotegidos.
Sim, isso representa um risco sério se um dispositivo assim for de fato fabricado e funcionar, mas não estamos totalmente despreparados. Entendemos o problema, entendemos a exposição, e um bom número de possíveis soluções para diferentes aspectos do problema está começando a se concretizar.
Respire e relaxe. Ao longo do restante desta edição, vamos explicar todo o problema para você.
Este artigo foi publicado na edição impressa mais recente da Bitcoin Magazine, A Edição Quântica. Estamos compartilhando-o aqui como uma prévia das ideias exploradas na edição completa.
Esta publicação, A Edição Quântica: Que diabos é computação quântica?, apareceu primeiro na Bitcoin Magazine e foi escrita por Shinobi.
Fonte: BitcoinMagazine




