Devin fatora RSA-260 e bate recorde público de fatoração

A Cognition anunciou em 9 de setembro que o pesquisador Eric Lu, da empresa, usou o agente de programação Devin, desenvolvido internamente, para concluir a fatoração do RSA-260 — atualmente o maior recorde público do desafio de fatoração RSA. O recorde anterior, o RSA-250, parou em fevereiro de 2020, seis anos e meio antes.

RSA-260 é um número decimal de 260 dígitos, decomposto em dois primos de 130 dígitos. O algoritmo usado não é novo — ainda é o crivo geral do corpo de números (GNFS), o caminho padrão para fatorar inteiros grandes desde os anos 1990. A mudança está na camada de implementação: todo o pipeline migrou de clusters de CPU para GPUs.

Como foram gastos os 4.900 GPU-dias

A divisão dada pela Cognition é: seleção de polinômios, 643 GPU-dias; crivo reticulado, 3.813 GPU-dias; resolução do sistema linear, 467 GPU-dias. A etapa de crivo consome mais de três quartos da capacidade computacional, o que é típico do GNFS.

A peça-chave é um crivo reticulado em GPU chamado glas, reescrito em CUDA, combinado com uma versão modificada do CADO-NFS e uma variante do algoritmo de Wiedemann em blocos otimizada para GPU. Segundo a Cognition, essa implementação reduziu o custo unitário do crivo em cerca de uma ordem de grandeza.

O CADO-NFS é justamente o software de código aberto usado pela equipe francesa que fatorou o RSA-250 em 2020. Mesma base de código, backend de hardware diferente — a diferença de seis anos aparece nesses dois números.

O que o Devin fez aqui foi trabalho de engenharia, não descoberta matemática: otimização de código, ajuste de parâmetros, gestão de cluster. A Cognition descreve isso no texto como um "engenheiro de software bom o suficiente para resolver problemas na interseção entre teoria computacional dos números e engenharia de desempenho de GPU".

A contribuição humana também está registrada nos dados públicos: 233 sessões, 82.702 palavras de orientação. Em média, mais de 300 palavras por sessão — próximo ao volume de anotações de uma revisão de código. Não é uma execução sem supervisão, é uma pessoa com uma ferramenta capaz de trabalhar continuamente, comprimindo em três semanas um trabalho que antes exigia uma equipe coordenada por meses.

Como fica a extrapolação

A Cognition apresentou de quebra duas estimativas extrapoladas, ambas marcadas como cálculos aproximados aos preços atuais de GPU: a dificuldade do RSA-1024 seria cerca de 78 vezes a do RSA-260, com custo em torno de US$ 30 milhões; a do RSA-2048 seria 9,12 trilhões de vezes maior, com custo estimado em 3,77×10^16 dólares.

O primeiro número merece uma pausa. Uma escala de US$ 30 milhões é algo que instituições estatais conseguem pagar, e grandes empresas também. O RSA-1024 já não é recomendado nos padrões há tempos, mas ainda sobrevive em dispositivos embarcados, assinaturas de firmware antigas e algumas cadeias de certificados sem manutenção. A diferença de cerca de um bilhão de vezes entre os dois números é toda a razão pela qual o 2048 bits ainda se sustenta.

Olhando a linha do tempo dos recordes: em 1999, o RSA-155 foi fatorado com uma estimativa pública de cerca de 8.000 MIPS-anos; no fim de 2009, o RSA-768 convertido para um único núcleo Opteron de 2,2GHz equivalia a cerca de 2.000 anos; em 2020, o RSA-250 foram 2.700 núcleos-ano; desta vez, 13,5 GPU-anos. Os três primeiros avanços vieram principalmente da Lei de Moore e de ajustes de algoritmo, num ritmo de aproximadamente uma década por marco. Neste salto, a troca de geração de hardware e a questão de "quem escreve esse código CUDA" se sobrepõem.

O que ainda não tem resposta

Se o artigo e o código serão totalmente publicados, e se o glas será aberto, o anúncio da Cognition não diz. Nenhum terceiro independente reproduziu ainda o cálculo — o RSA-250, na época, teve os parâmetros de crivo validados de forma cruzada por várias equipes; este resultado, por ora, só tem os dados de uma parte.

O resultado da fatoração em si é fácil de verificar, basta multiplicar os dois primos. Difícil de verificar é a conta de custo: qual modelo de GPU, a que preço unitário, se as tentativas fracassadas entraram nos 4.900 GPU-dias — o anúncio não detalha item por item. O que o número de US$ 400 mil significa para uma avaliação de segurança depende exatamente desses detalhes.

Fontes: blog técnico oficial da Cognition, anúncio de fatoração do RSA-250 em caramba.loria.fr, CocoLoop; os valores em GPU-dias e núcleos-ano foram citados tal como constam em cada anúncio original, sem conversão unificada.