Claude identificó en menos de media hora el origen de las semillas numéricas utilizadas para definir cinco curvas ECDSA del NIST, un enigma que la comunidad criptográfica no había podido resolver durante 25 años. El modelo determinó que los valores salieron de lrand48, un generador de números pseudoaleatorios de la librería C de los años noventa.
Las curvas involucradas son P-192, P-224, P-256, P-384 y P-521. Sus parámetros fueron adoptados por el NIST en 2000 y se utilizan en firmas digitales vinculadas con conexiones seguras de internet, carteras de criptomonedas y parte de la mensajería cifrada.
Un origen que alimentó las sospechas
Las semillas habían sido entregadas al NIST por la NSA sin una explicación detallada sobre su generación. Ese silencio llevó a algunos investigadores a plantear que los parámetros podían esconder una puerta trasera. Durante años también circuló la versión de que Jerry Solinas, un empleado de la NSA, había producido los números a partir de una frase humorística, aunque el relato nunca pudo confirmarse.
La investigación estableció que las semillas fueron inicializadas con marcas de tiempo Unix ubicadas entre mayo de 1997 y abril de 1998. Claude escribió un escáner para reconocer la firma estadística del generador y después recuperó su estado interno mediante un problema de retículos resuelto con el método LLL.
Al ejecutar el algoritmo hacia atrás hasta su inicialización, el modelo comprobó que cada estado recuperado regeneraba los 160 bits de su semilla. La coincidencia se repitió diez veces, un resultado que no se produciría por azar. La investigación también explicó el origen de algunos puntos base, generados con la librería FreeLIP de Arjen Lenstra.
Todavía quedan preguntas abiertas
El hallazgo reduce el margen para una manipulación deliberada y, según la investigación, no plantea una vulnerabilidad que requiera modificar las curvas. Sin embargo, una semilla binaria, la B-163, sigue sin explicación. Tampoco se conoce cómo fueron escogidos los puntos base de P-224, P-256, P-384 y P-521, ni por qué el software descartó algunas curvas candidatas.
La recompensa de 36.864 dólares ofrecida por resolver el misterio será donada al Internet Security Research Group.