Bom sábado, Habr!
A tradução de hoje se encaixa mais diretamente em nossas pesquisas relacionadas à literatura sobre
computação quântica e pode ser considerada o material básico sobre os perigos ou, inversamente, as possibilidades que um computador quântico traz para a tecnologia blockchain. Cairão sob o ataque de novas possibilidades quânticas ou, inversamente, se tornarão ainda mais invulneráveis?
Enquanto isso, fique atento ao anúncio - o
livro de Vladimir Silva
está a caminho - e lembre-se de votar.
Vamos ver o que é blockchain.
Isenção de responsabilidade: tentei tornar este artigo o mais simples possível e, para isso, tive que ignorar um pouco as nuances técnicas. Além disso, lamentamos que todos os desenhos sejam assinados à mão. Decidi que as fotos que eu mesmo ilustrariam melhor os conceitos necessários do que as encontradas na Internet.
Blockchain extremamente simples pode ser descrito da seguinte maneira: este é um registro no qual as transações de um determinado tipo são registradas. O Blockchain usa funções matemáticas, por exemplo, fatorando um número inteiro; essas funções podem ser facilmente resolvidas em uma direção, mas difíceis no oposto - é assim que a segurança é garantida.
As transações de blockchain são adicionadas a um banco de dados chamado block, e o bloco é criptografado com uma ferramenta matemática chamada “função hash”. Em seguida, o hash é incluído no próximo bloco com o próximo conjunto de transações, que na próxima etapa é novamente criptografado pela função de hash e fornece o próximo hash. Um novo hash é adicionado ao próximo bloco. Dessa forma, uma cadeia de blocos é formada e todos parecem ser sequencialmente aninhados um ao outro - daí o nome "blockchain".
Aqui está um exemplo de hash gerado pelo algoritmo MD5 em Python. MD5 é uma função de hash amplamente usada que fornece um hash de 128 bits.
>>> import hashlib >>> def hash(mystring): ... hash_object=hashlib.md5(mystring.encode()) ... print(hash_object.hexdigest()) ... >>> >>> hash("Kellogg first block") 10a4826ea290595ef96e945b31054254
Restaurar o valor original ("o primeiro bloco Kellogg" neste caso) para um computador clássico é extremamente difícil. Isso só pode ser feito com força bruta - procurando sistematicamente uma solução, escolhendo todas as opções possíveis e verificando se cada próximo candidato satisfaz a declaração do problema. Da mesma forma, uma solução de hash para um bloco de bitcoin - começando com muitos zeros - requer uma quantidade extremamente grande de computação. É por isso que, mesmo ao usar o poder de computação agregado de todos os computadores na rede bitcoin, leva cerca de 7 minutos para resolver o bloco.
No entanto, tudo pode mudar com o advento de um computador quântico, o que potencialmente representa uma ameaça para blockchain e criptomoedas. Como Eu vou te contar agora.
O que é um computador quântico?
Um dos fundamentos da maioria das inovações no poder da computação é o processo de reduzir continuamente o tamanho dos transistores. A essência de qualquer fator de forma dos cálculos está em um transistor, uma vez que os transistores formam portas lógicas que processam informações em um computador.

Nas últimas décadas, os fabricantes de chips, em particular a Intel, aumentaram constantemente o número de transistores na CPU, reduzindo seu tamanho. Em uma CPU moderna, cada transistor é ainda menor que o vírus HIV. De fato, estamos perto do limite em que os transistores são comparados em tamanho aos átomos. É por isso que se acredita amplamente que, no futuro, a lei de Moore deixará de existir e o poder da computação deixará de crescer no ritmo a que estamos acostumados.
Uma solução para esse problema é a computação quântica.
Em um computador clássico, onde as informações são processadas com base nos transistores, um bit pode ser apenas 0 e 1. No entanto, os cálculos quânticos são baseados em uma sequência de qubits, cada um dos quais pode representar uma, zero ou qualquer superposição quântica de estados de dois qubits. Em geral, um computador quântico com n qubits pode estar em qualquer superposição com até 2 ^ n estados simultaneamente.
Um computador clássico a qualquer momento pode estar apenas em um dos 2 ^ n estados. Assim, um computador quântico é exponencialmente mais rápido que um computador clássico.
Como é possível essa superposição? O fato é que o mundo quântico é, por definição, paralelo. No famoso experimento com duas fendas, estabelecido por Thomas Young, uma partícula pode penetrar simultaneamente através de duas fendas. O melhor computador quântico poderia realizar uma quantidade enorme de computação e muito mais rápido que um computador clássico.
Princípios da computação quântica
Muitos de nós nos familiarizamos com a mecânica clássica na escola, e o fenômeno da computação quântica, pelo contrário, não pode ser chamado de intuitivo. Vou tentar demonstrar um dos exemplos mais simples que conheço de um curso universitário.

Adivinha qual das faces do cubo é a frente? Talvez você não tenha certeza. No entanto, assim que você decidir por si mesmo, a confusão terminará. A incerteza dos estados possíveis descreve um dos princípios mais profundos da mecânica quântica - o princípio da superposição.
Graças a esse princípio, n qubits podem representar qualquer superposição, que inclui até 2 ^ n estados diferentes ao mesmo tempo.
Agora considere esta imagem. Qual é o rosto da frente?

Isso é interessante. Aqui, novamente, você pode não ter certeza da resposta, mas quando decide o primeiro cubo, determina imediatamente o segundo. De alguma forma, esses dois cubos separados no espaço estão conectados.
O emaranhamento quântico é um fenômeno no qual os estados quânticos de dois ou mais objetos devem ser descritos em relação um ao outro, mesmo que objetos individuais sejam removidos um do outro no espaço.
O entrelaçamento quântico é o detalhe supercrítico de trabalhar com um computador quântico. Um computador quântico define o entrelaçamento e mede a saída, reduzindo a superposição para 0 ou 1 (estado clássico). Muitos algoritmos no mundo quântico dão a resposta certa com uma certa probabilidade. No entanto, iniciando, executando e medindo repetidamente os resultados de um computador quântico, é possível aumentar a probabilidade de obter a resposta certa.
Ameaça Blockchain
Como mencionado acima, a tecnologia blockchain é baseada no uso de técnicas criptográficas, que se acredita serem quase invulneráveis ao hacking, exceto com força bruta, usando um enorme poder de computação. Conceitualmente, essa criptografia é semelhante à tecnologia pela qual a comunicação na Internet é fornecida.
No entanto, um computador quântico, em virtude de seu enorme poder computacional, teoricamente deveria quebrar a criptografia de chave pública - e, portanto, representar uma ameaça para o blockchain.
É verdade que existem problemas associados ao dimensionamento da computação quântica.
Os qubits são extremamente frágeis. Mesmo o ruído de fundo pode levar à decoerência e perturbar a natureza quântica da partícula.
Para cada qubit útil, são necessários outros 10 a 100 qubits para corrigir erros. Pesquisas nesta área estão em andamento, uma das soluções propostas é um
computador quântico topológico .
Qual é o futuro da blockchain no mundo da computação quântica?
Quando perguntado por Mark Anderson, co-fundador Andreessen Horowitz sobre o problema da blockchain, ele disse:
Quando você diz ao capital de risco que existe um enorme problema - ele só entra em confusão. Então, você precisa encontrar um cara sábio que resolva esse problema.
No entanto, apesar de seu otimismo, este é um problema complexo.
Uma solução potencial é uma blockchain quântica baseada em criptografia quântica. Foi proposto por Del Rajan e Matt Visser da Universidade de Victoria em Wellington, Nova Zelândia. A ideia é simples: se os computadores começarem a contar muito rapidamente, você precisará complicar a tarefa. Crie uma blockchain baseada em partículas quânticas entrelaçadas no tempo. Assim, apenas uma partícula quântica é suficiente para codificar a história de todos os seus antecessores, e será impossível descriptografar essa cadeia sem destruí-la.
No entanto, aqui você terá que enfrentar novos problemas no campo do dimensionamento de blockchain, que já é limitado.
O futuro da blockchain parece incerto, mas certamente muito interessante.