O objetivo da criptografia é: através de artifícios matemáticos, proteger o conteúdo à qual é aplicada. A montagem dos sistemas criptográficos, para que isto ocorra, tem como princípio básico que nenhum computador viole o sigilo de tal algoritmo criptográfico em um tempo hábil. Este mote de ser matematicamente resistente à computação é, aliás, um dos fatores que difere o período atual da criptografia (criptografia moderna) do período que tínhamos antes da Segunda Guerra Mundial (criptografia clássica). Entretanto, estamos à beira de iniciar uma nova era na história criptográfica, com o surgimento dos computadores quânticos: a criptografia pós-quântica.

Para entendermos este conceito, primeiramente, temos de falar da evolução computacional, já que este ponto fundamentalmente é a base para o trabalho criptográfico. Vale a pena lembrar que os primeiros computadores eram mecânicos, verdadeiras “máquinas de calcular”, ou o nome a que mais recorremos, que eram “máquinas de computar”. Daqui a origem do nome computador. Em meados da década de 1940 começamos a trabalhar com computadores puramente digitais; o ENIAC (1946), por exemplo, foi o primeiro computador puramente eletrônico.

Nesta transição dos computadores puramente mecânicos para os digitais, tivemos, um pouco mais cedo, ainda nesta década de 1940, um grande marco na criptografia: os trabalhos de Alan Turing. O auge do trabalho de Turing é muito bem representado no filme “The Imitation Game” (“O Jogo da Imitação”, 2014), quando o inglês lidera uma equipe a desenvolver uma máquina parte mecânica e parte digital para quebrar o sigilo criptográfico do Enigma nazista.

Esta migração para os computadores digitais era fundamental, visto que nessa nova estrutura os computadores conseguem digitalmente executar várias operações num espaço de tempo muito menor que os antigos computadores puramente mecânicos, surgidos séculos antes. Pois bem: detalhando um pouco mais o funcionamento dos computadores digitais, temos de explicitar que eles trabalham com um esquema matemático numérico diferente do modelo numérico na base 10 (decimal) que estamos habituados. Os computadores trabalham com a base 2 (sistema numérico binário), onde tudo é representado pelos algarismos 0 e 1. Tudo. Até este texto, que nós vemos ser construído por diferentes caracteres, no background da computação o computador enxerga apenas uma coleção de bits 0 e 1.  Como curiosidade você pode observar numa tabela ASCII como cada caractere acaba sendo representado em bits para o computador.

Fonte: Figura extraída de How not to code.

 

O fato que quero destacar aqui é como o trabalho do computador é feito. Tudo é feito com bits, tudo é feito com zeros e uns. A princípio você pode achar estranho o uso desta base 2, mas há uma justificativa: muitas operações, sejam elas aritméticas ou lógicas, acabam sendo “mais fáceis” de ser executadas na base 2 do que na nossa conhecida base 10. Então o fato de trabalhar com essa base diferenciada, aliada à velocidade de processamento, fazem os computadores serem extremamente velozes em resolução de cálculos.

Para os modelos atuais de criptografia ficou o desafio de se construírem sistemas criptográficos que apresentem resistência ao poder criptográfico atual. Essa resistência não precisa ser eterna, pois se o computador mais potente que existe iniciar cálculos e simulações e só conseguir quebrar um texto criptografado num tempo de 1000 anos, pode-se dizer que a criptografia aplicada é segura, pois não há quebra em tempo hábil. Ou seja, ao falarmos de tempo hábil estamos afirmando que não há violação criptográfica com um tempo de resposta em que seja interessante para o atacante. No exemplo que dei, não é interessante para um atacante descobrir a senha que você usa 1000 anos depois.

Os ataques aos algoritmos atuais surgem quando o atacante encontra “facilidades” para a quebra da criptografia. Considerando um esquema de criptografia seguro, a probabilidade do atacante roubar o cifrotexto (ou seja, o texto cifrado) ou a chave criptográfica tem de ser a mesma probabilidade dele acertá-los ao acaso. Esta deve ser a maior probabilidade de êxito no ataque. Se o atacante consegue observar caminhos que acabem melhorando a probabilidade dele roubar o dado, então a integridade do sistema criptográfico está ameaçada. Por exemplo: ao se perceber no algoritmo um certo padrão para geração das chaves criptográficas já é um possível caminho para se achar uma vulnerabilidade, e aí é utilizando o próprio processamento computacional que se pode achar uma brecha criptográfica no algoritmo alvo.

Comumente os algoritmos criptográficos atuais constroem seu sigilo matemático no alto custo que um atacante teria em fatorar um grande número e, consequentemente, achar quais números foram os iniciais geradores da chave criptográfica. Descobrindo a chave criptográfica, cai o sigilo dos cifrotextos que utilizaram a chave descoberta. Prevendo como as chaves são geradas, o algoritmo como todo está quebrado. Para dificultar ainda mais, geralmente são escolhidos números extremamente grandes e primos. Como curiosidade, foi encontrado no último ano um número com quase 25 milhões de dígitos e que é primo, é o número 2^(82.589.933) – 1. Não faltam estratégias para garantir a complexidade matemática necessária.

Agora estamos iniciando uma nova fase no desenvolvimento computacional, com o avanço da computação quântica. Essa nova era da computação tem como base a mecânica quântica e de maneira resumida podemos destacar que essas máquinas, ao invés de trabalharem apenas com bits 0 e 1, trabalham com qubits (bits quânticos), que seguem um sistema de mecânica quântica de dois níveis e, portanto, pode ser descrito por um vetor de estado que pode ser 0, 1 ou um estado que pode ser a sobreposição de ambos.

 

Fonte: Figura extraída de Universos Quânticos.

 

Com esse cenário de aplicação quântica à computação, o poder de processamento dos computadores irá crescer bastante, será um grande salto na velocidade e capacidade de processamento. A maior vantagem do uso de computação quântica é a possibilidade de resolver vários problemas matemáticos num tempo eficiente. Alguns problemas que na computação clássica levariam tempo impraticável, num cenário quântico teremos uma redução do tempo de resolução destes problemas, possibilitando a quebra de todos sistemas de criptografia usados atualmente. Em um computador quântico, o atacante teria seu resultado num tempo muito menor, senão instantaneamente. Ainda não temos uma comercialização de computadores quânticos pessoais, por não termos ainda um preço atrativo ao mercado, mas a corrida para desenvolver mainframes quânticos já está acirrada.

Com esse grande salto dos computadores, era preciso então buscar novas formas de também incrementar a criptografia. É aqui que surge a Criptografia Pós-Quântica (Post Quantum Cryptography), que visa construir algoritmos que sejam resistentes à computação quântica. Mesmo com todo poder criptográfico, os algoritmos devem propor desafios que nem os computadores quânticos não solucionem em um tempo hábil. O desafio é grande.

A princípio temos como uma área promissora da criptografia pós-quântica os algoritmos que se baseiam em problemas da Teoria dos Reticulados. A teoria dos reticulados teve sua origem no século XIX com os estudos sobre relações entre conjuntos matemáticos, que representaram o protótipo das estruturas algébricas hoje conhecidas como álgebras booleanas.

Atualmente, está havendo uma eleição pública de quais algoritmos criptográficos serão utilizados como padrão na era quântica. Este processo seletivo está sendo organizado pelo NIST e já se encontra na terceira fase. Há quatro candidatos a serem adotados como padrão na geração do par de chaves criptográficas com encriptação de chave pública e outros três candidatos para a geração de assinatura digital.

Obviamente os algoritmos criptográficos tendem a ser mais difíceis de lidar e, certamente, deverão consumir mais processamento e energia das máquinas, mas vale lembrar que a evolução para a criptografia pós-quântica não é uma escolha e sim a única saída para manutenção da nossa proteção na era da computação quântica.

José Paulo

Compartilhe

Posts relacionados