O Google DeepMind afirma que agentes de inteligência artificial (IA) trabalhando sob supervisão humana encontraram duas formas de reduzir o custo de ataques a criptossistemas RSA (algoritmo de criptografia de chave pública, sigla de Rivest-Shamir-Adleman) de 1024 bits.
A pesquisa, conduzida com criptógrafos da Universidade da Califórnia em San Diego e do Inria (Instituto Nacional de Pesquisa em Informática e Automação da França), indica que ataques ao RSA-1024 legado exigem menos processamento do que se imaginava.
“Na prática, esses resultados afetam apenas sistemas RSA-1024 obsoletos, e os protocolos de criptografia modernos, que quase universalmente usam chaves de 2048 bits ou maiores, continuam seguros”, disse Pushmeet Kohli, vice-presidente do Google DeepMind e cientista-chefe do Google Cloud.
O primeiro achado envolve assinaturas digitais e preenchimento (padding), os dados predefinidos que muitos padrões de assinatura acrescentam a uma mensagem para levá-la a um tamanho fixo de bloco. Sabia-se que o preenchimento dificultava a falsificação, mas seu valor contra um atacante que pode escolher o que será assinado não estava claro.
A DeepMind determinou que isso depende da fatia do bloco assinado que o atacante controla. “Quando eles controlam cerca de metade do bloco ou mais, o preenchimento não oferece nenhuma proteção”, explicou Kohli.
De acordo com o artigo que acompanha a pesquisa, isso se aplica ao formato PKCS#1 v1.5, usado pela interface de assinatura PKCS#11 de dispositivos criptográficos, como módulos de segurança de hardware (HSMs, na sigla em inglês).
Em um teste em ambiente isolado (sandbox), os agentes repetiram um ataque de falsificação acadêmico anterior sobre a mesma chave de 1024 bits, reduzindo o tempo de processamento da CPU (unidade central de processamento) em 3,5 vezes. A primeira falsificação levou 391 anos-núcleo de CPU, contra 1.380 no estudo original.
Dois agentes de IA projetaram, executaram e depuraram o cálculo da falsificação em menos de quatro dias, com cerca de 20 mensagens do pesquisador humano, em sua maioria aprovações. A chave não foi fatorada; isso exigiria entre 500 mil e 1 milhão de anos-núcleo.
A falsificação fica mais difícil quando o atacante controla uma parte menor do bloco, como um hash de 32 bytes. Mesmo assim, a DeepMind encontrou um algoritmo que, segundo suas estimativas teóricas, é cerca de 1.600 vezes melhor que o melhor método anterior contra chaves de 1024 bits.
O segundo achado diz respeito à fatoração de muitas chaves RSA do mesmo tamanho, cenário em que um atacante pode dividir o custo de um grande cálculo inicial entre todas elas.
Os agentes da DeepMind desenvolveram um algoritmo que torna a fatoração de cada chave adicional de 1024 bits, em média, cerca de 30 vezes mais barata que a melhor abordagem anterior. No entanto, essa estimativa teórica pressupõe um cálculo inicial tão custoso quanto fatorar uma chave, e o método ainda não foi implementado.
Os pesquisadores observaram que o ataque à assinatura não recupera a chave privada. Ele exige cerca de 4 bilhões de consultas de assinatura feitas antecipadamente e não funciona contra dispositivos que calculam o hash das mensagens internamente.
“Juntos, esses resultados mostram que, em uma nova era da matemática e da computação com IA, não podemos tratar a dificuldade criptográfica como uma premissa fixa. Usar a IA para testar rigorosamente nossas suposições anteriores garantirá que a criptografia moderna continue segura”, disse Kohli.