Claude résout une vieille énigme sur les courbes ECDSA du NIST

Anthropic dit que Claude a retrouvé l’origine des graines utilisées pour plusieurs courbes ECDSA du NIST. Selon l’entreprise, elles venaient d’un générateur C lancé avec l’horloge système, et non d’un procédé opaque.

Anthropic affirme que Claude a résolu en moins de 30 minutes une énigme cryptographique ouverte depuis 25 ans : l’origine des “seeds” des courbes ECDSA standardisées par le NIST en 2000. Selon la publication du 16 octobre 2026, ces valeurs fournies par la NSA provenaient d’un générateur pseudo-aléatoire C, lrand48, initialisé avec des timestamps Unix. L’enjeu compte pour la confiance dans les paramètres cryptographiques, même si l’entreprise dit qu’il ne s’agit ni d’une faille ni d’une porte dérobée.

Une vieille suspicion, enfin remise à plat

ECDSA est l’un des standards de signature numérique à courbe elliptique les plus utilisés. Lors de l’adoption du schéma par le NIST, les courbes publiées s’accompagnaient d’un paramètre seed sans explication détaillée, ce qui a nourri des soupçons de subversion potentielle. Des chercheurs comme Neal Koblitz et Alfred Menezes avaient résumé ce malaise dans A Riddle Wrapped in an Enigma, tandis qu’une chasse amateur aux origines de ces valeurs s’était prolongée pendant des années.

La piste la plus répandue attribuait ces seeds à Jerry Solinas, vétéran de la NSA, qui aurait généré les valeurs à partir d’une phrase humoristique du type “Give Bob and Jerry a raise”. Anthropic rapporte que cette hypothèse était fausse. Solinas est mort en 2023 et, selon le billet, les archives de l’époque n’ont pas permis de trancher avant cette enquête.

Ce que Claude a trouvé dans les seeds

Le modèle interne de recherche aurait identifié l’origine des seeds des courbes P-192, P-224, P-256, P-384 et P-521 en examinant leur structure bit par bit. Anthropic explique que Claude a reconnu le profil d’un générateur des années 1990, puis a convergé vers lrand48, un générateur linéaire congruentiel qui ne restitue que 31 bits d’un état de 48 bits. Dans le cas de P-256, la seed publiée correspondrait au candidat 1842 du tirage analysé par l’équipe.

Le raisonnement s’est appuyé sur des indices statistiques et sur des reconstructions d’état interne. Pour les seeds à courbes premières, Claude aurait testé 34 combinaisons de générateurs et de tranches de sortie, avant de recouvrer l’état de départ en exploitant les bits cachés de la première word de 32 bits. Pour les seeds issues des courbes à champ premier, l’équipe dit avoir utilisé une réduction de base LLL, c’est-à-dire un algorithme de réduction de réseau souvent employé pour retrouver des inconnues entières à partir de sorties tronquées.

Des timestamps entre 1997 et 1998

En remontant le temps à partir de l’état du générateur, Claude serait tombé sur des initialisations Unix datées de mai 1997 à avril 1998 pour les dix seeds de courbes premières. Les quatre seeds des courbes binaires renvoyaient, elles, à février 1984, avant une hypothèse de recalage vers avril 1998 si l’on double ces timestamps. Anthropic avance donc l’idée d’un programme qui aurait peut-être divisé l’horloge par deux. C’est le genre de détail qui fait sourire les cryptographes et frissonner les gens qui aiment les audits propres.

La publication va plus loin en indiquant que certaines bases de courbe, les points fixes G utilisés pour générer les clés ECDSA, ont aussi pu être partiellement reconstituées. Pour six courbes produites en mai 1997, l’équipe attribue les points de base à FreeLIP, une bibliothèque de calcul entier d’Arjen Lenstra reprise dans de premières versions de NTL. D’après Anthropic, les bases de P-224, P-256, P-384 et P-521 ne rentrent pas dans ce schéma, et certaines restent inconnues [à vérifier].

Ce que cela change, et ce que cela ne change pas

Anthropic insiste sur un point : il ne s’agit pas d’une rupture cryptographique ni d’un indice de faiblesse des courbes ECDSA elles-mêmes. La société présente plutôt ses résultats comme une fermeture de dossier, en estimant que l’explication par un générateur banal lancé depuis l’horloge réduit l’espace des scénarios les plus inquiétants. En clair, la provenance est enfin plus lisible que la légende urbaine.

Des zones d’ombre demeurent toutefois. Toutes les valeurs candidates n’étaient pas exploitables, plusieurs seeds auraient été ignorées lors de la génération, et une seed binaire, B-163, n’a pas été recouvrée. Anthropic juge peu plausible l’idée d’une sélection ciblée de courbes affaiblies, mais laisse ouverte la possibilité théorique d’une recherche sur des timestamps spécifiques. Pour la sécurité comme pour l’histoire de la crypto, le sujet reste donc intéressant, même si la conclusion principale semble désormais plus solide que les rumeurs qui l’ont précédée.

Points clés

  • Le billet date du 16 octobre 2026.
  • Claude aurait résolu l’énigme en moins de 30 minutes.
  • Les seeds viennent selon Anthropic de lrand48 et d’horodatages Unix.
  • Le bounty de 36 864 dollars ira à l’ISRG.
  • Jerry Solinas avait avancé l’hypothèse d’une phrase humoristique.

En chiffres

  • 25 ans — durée depuis la standardisation ECDSA par le NIST en 2000.
  • 30 minutes — temps annoncé pour la résolution par Claude.
  • 36 864 dollars — montant du bounty, reversé à l’Internet Security Research Group.
  • 5 courbes — P-192, P-224, P-256, P-384 et P-521 étudiées par Anthropic.
  • 10 seeds — ensemble des seeds de courbes premières recouvrées par l’équipe.

À lire