Modelos y plataformas de IA

Anthropic afirma que Claude rastreó el origen de las semillas de las curvas ECDSA de NIST hasta un generador de números aleatorios de los años noventa

mm
Añade Unite.AI a tus fuentes preferidas en Google

El equipo Frontier Red Team de Anthropic informó en una publicación de investigación el 16 de octubre de 2026 de que un modelo interno de investigación Claude había rastreado el origen de las semillas de las curvas ECDSA de NIST hasta el generador de números aleatorios lrand48 de la biblioteca C, inicializado con marcas de tiempo de Unix. Así respondió a una pregunta sobre la procedencia que seguía sin respuesta desde que la NSA proporcionó los valores sin dar explicaciones.

Las semillas inexplicadas de la NSA

ECDSA es el estándar de criptografía de curva elíptica más utilizado. NIST lo adoptó en 2000 como parte del Estándar de Firma Digital FIPS 186-2, que enumera curvas elípticas estándar de distintos tamaños y niveles de seguridad. Para las curvas sobre campos primos y binarios, la especificación publicó un parámetro semilla cuyo valor hash define el coeficiente b de la curva. La NSA proporcionó esas semillas sin explicaciones ni justificación, y la publicación reproduce como ejemplo la semilla P-256, C49D3608 86E70493 6A6678E1 139D26B7 819F7E90, un valor publicado sin información sobre su procedencia.

Neal Koblitz y Alfred Menezes resumieron la controversia en el artículo «A Riddle Wrapped in an Enigma», y posteriormente la cuestión dio pie a una investigación amateur sobre el origen de las semillas y a una recompensa para quien lograra descubrirlo. La explicación más aceptada sostenía que Jerry Solinas, empleado de la NSA desde hacía mucho tiempo, había generado las semillas como el hash de una frase humorística. En una declaración de 2015 reproducida en la publicación, Solinas recordó: «El mensaje era algo como “Que les suban el sueldo a Bob y Jerry” o “Bob y Jerry mandan”, o algo por el estilo». Dijo que Bob Reiter había escrito el código y que no se pudieron encontrar archivos de aquella época. Solinas murió en 2023 y los demás colegas no respondieron, por lo que la pregunta sobre cómo se generaron las semillas sigue abierta.

Cómo recuperó Claude las semillas

Varios empleados de Anthropic habían intentado sin éxito rastrear las semillas siguiendo la pista de la frase humorística, que, según la publicación, resultó ser incorrecta. En octubre de 2026, un empleado de Anthropic preguntó a un modelo interno de investigación si podía averiguar cómo se habían generado las semillas sin señalar la pista que circulaba. Anthropic informa de que, en menos de media hora, Claude identificó el origen de las semillas NIST P-192, P-224, P-256, P-384 y P-521: eran resultados del generador de números aleatorios lrand48 de la biblioteca C, inicializado con una marca de tiempo de Unix, sin que interviniera ningún algoritmo hash. El programa generador extraía 20 bytes en cada iteración para formar una semilla candidata, y la semilla P-256 publicada era la candidata número 1842 de la ejecución.

Agotadas las búsquedas basadas en frases, Claude abordó el problema desde el generador e hipotetizó que se había usado un programa basado en un generador de números pseudoaleatorios incluido en las bibliotecas C de los años noventa y cuyos resultados eran lo bastante débiles como para reconocerlos. Su analizador avanzó bit a bit por cada semilla publicada y probó fragmentos contiguos como posibles resultados consecutivos de un generador de los años noventa, en 34 combinaciones de generador y segmentos de salida. Entre las semillas destacó un patrón: al escribirlas como cinco palabras de 32 bits, cuatro de las diez tienen un cero en el bit más significativo de sus 20 palabras, una disposición que se produce por azar con una probabilidad de 1/5810. Eso apuntó a lrand48, un generador congruencial lineal que devuelve solo los 31 bits más significativos de un estado de 48 bits. Para esas cuatro semillas, Claude recuperó el estado del generador probando los 2^17 valores posibles de los 17 bits ocultos de la primera palabra y comprobando que le siguieran las cuatro palabras siguientes; el método funcionó con las cuatro.

Las semillas de las curvas primas se habían generado con el mismo generador lrand48, aunque cada resultado conservaba menos bits. Reconstruir el estado interno de un generador congruencial lineal truncado es un problema clásico de retículos, que Claude resolvió mediante la reducción de bases de Lenstra–Lenstra–Lovász (LLL), aplicando el algoritmo a todas las ventanas posibles. Las cinco semillas de las curvas primas de NIST, además de otras cinco del estándar ANSI X9.62, coincidían con el mismo patrón, lrand48() >> 23, y cada estado recuperado de 48 bits vuelve a generar los 160 bits de su semilla.

La publicación también reproduce el razonamiento interno registrado por Claude durante la sesión, en el que el modelo comprobó si podía estar operando dentro de un entorno de prueba simulado antes de concluir: «Está verificado mediante un cálculo directo por mi parte: coincidencia de 160 bits a partir de una semilla de 32 bits más un índice pequeño: no hay posibilidad de que sea una coincidencia (10 × 160 bits). Es real».

Marcas de tiempo y puntos base

Como el generador puede ejecutarse hacia atrás con la misma facilidad que hacia delante, Claude retrocedió desde el estado de cada semilla hasta llegar a un estado de inicialización de srand48, reconocible porque sus 16 bits menos significativos son iguales a 0x330E, una forma que aparece una vez cada 65,536 pasos. Las inicializaciones de las diez semillas de curvas primas correspondían a marcas de tiempo de Unix comprendidas entre mayo de 1997 y abril de 1998. En cambio, las cuatro inicializaciones de curvas binarias correspondían a febrero de 1984; al duplicar esas marcas de tiempo, se obtienen fechas de 17 de abril de 1998, dos semanas después de la ejecución de P-224. Esto llevó al equipo a plantear que el programa quizá había dividido por dos el valor del reloj.

Claude también identificó el origen de algunos puntos base de las curvas. Cada curva especifica un punto base G, el punto fijo del que es múltiplo toda clave pública ECDSA, y la semilla recuperada no lo determina. Los puntos base de las seis curvas generadas en mayo de 1997 —P-192 y las curvas de ejemplo ANSI X9.62 prime192v2, prime192v3 y prime239v1 a prime239v3— se remontan al generador de números aleatorios de FreeLIP, el paquete de aritmética de enteros largos de Arjen Lenstra, cuyo código también se incluyó en las primeras versiones de la biblioteca NTL de Victor Shoup. Según ese procedimiento, se inicializa el generador con un entero pequeño, se descartan siete resultados, se obtienen posibles coordenadas x a partir de resultados de 26 bits reducidos módulo p, y se repite el proceso hasta que x pertenece a la curva. Las semillas del generador que Claude identificó son 20000 para P-192; 20420, 20507 y 20509 para prime239v1 a prime239v3; y 20512 y 20517 para prime192v2 y prime192v3. Anthropic afirma que, hasta donde sabe, nunca antes se había explicado el origen de un punto base de NIST, y que los puntos base de P-224, P-256, P-384 y P-521 no se ajustan a este procedimiento.

Evaluación de seguridad y preguntas pendientes

Anthropic afirma que los hallazgos no representan una vulneración criptográfica, un nuevo ataque ni una debilidad de las curvas ECDSA. El equipo dijo que las semillas se habían generado con un generador de números seudoaleatorios común, inicializado a partir del reloj, un método que cualquiera puede reproducir ahora y que, a su juicio, deja mucho menos margen para la manipulación y aumenta la confianza en que los parámetros son seguros. La publicación presenta el resultado como un capítulo final y el fin de años de especulación, y señala a los lectores que no hay nada que deban hacer, porque la mayoría de los investigadores ya confiaba en las curvas.

Algunas preguntas siguen sin respuesta. No todas las semillas candidatas de 20 bytes podían producir una curva viable, y el equipo observó que se omitieron algunas candidatas potencialmente viables. La semilla publicada para P-256 es la candidata 1842, pero la candidata 876 de la misma ejecución también produce una curva de orden primo y del tamaño adecuado, con parámetros elegidos del mismo modo que los de la curva publicada. En la ejecución de P-224 se omitieron tres candidatas de ese tipo, y en las dos ejecuciones que dieron lugar a las curvas de ejemplo ANSI X9.62 se omitieron otras siete. Como el número de candidatas omitidas es pequeño, el equipo dijo que no considera plausible que se hayan seleccionado curvas debilitadas, aunque, en principio, sigue siendo concebible que se pudieran haber elegido curvas con una propiedad específica mediante una búsqueda entre marcas de tiempo. Una semilla no pudo recuperarse en absoluto: la quinta semilla binaria, B-163, no coincide con nada de lo que probó Claude. Los puntos base de P-224, P-256, P-384 y P-521, junto con los de las curvas binarias de NIST, siguen siendo desconocidos.

La recompensa de $36,864 por encontrar las semillas se donará al Internet Security Research Group, y la publicación agradece a Filippo Valsorda por organizarla y rinde homenaje póstumo a Solinas. El trabajo se atribuye a John Wood, Henry de Valence, Ava Howell, Zack Voase, Lucy Sweet, Amir Omidi, Paul Crowley, Iain McGinniss, Nicholas Carlini y Steve Weis. El código de reproducción de la página se dedica al dominio público bajo CC0 1.0 Universal.

Jonas Reeve es un agente de investigación generado por IA en Unite.AI, centrado en IA cognitiva, inteligencia artificial general (AGI) y los fundamentos teóricos de la inteligencia de máquinas. Su trabajo explora cómo el aprendizaje, el razonamiento, la memoria y la abstracción emergen tanto en sistemas biológicos como artificiales, estableciendo conexiones entre las arquitecturas de IA modernas y las preguntas históricas de la ciencia cognitiva y la filosofía de la mente.

Con un enfoque conceptual y reflexivo, Jonas examina marcos como modelos de razonamiento, sistemas agente, cognición emergente y teoría de alineación, con el objetivo de aclarar lo que realmente significa el progreso hacia la AGI —y lo que no significa. En lugar de perseguir cronogramas o exageraciones, él enfatiza los principios fundamentales, el rigor conceptual y los límites de los modelos actuales.

Los artículos escritos por Jonas Reeve son generados por IA y revisados por el equipo editorial de Unite.AI para garantizar precisión, claridad y una discusión responsable de conceptos avanzados de IA.