Las semillas de la curva P-256 del NIST salen de una ejecución de lrand48 de 1997
Anthropic rastreó la semilla de la curva P-256 del NIST hasta una ejecución de lrand48 iniciada el 16 de agosto de 1997 y reclamó una recompensa de 36.864 dólares. El hallazgo no rompe las curvas.
3 min de lectura

En cifras
- bounty, donated to Let's Encrypt's nonprofit ISRG
- $36,864
- candidate number of the published P-256 seed
- 1,842
- year the P-256 generator run started
- 1997
Un equipo de Anthropic ha averiguado de dónde salieron las semillas de aspecto aleatorio que hay detrás de la P-256 del NIST y de otras curvas elípticas estándar. Las semillas se crearon en 1997 y 1998 con un antiguo generador de números aleatorios de C, lrand48, iniciado a partir del reloj del ordenador. El hallazgo, reclamado el 15 de octubre de 2026, cierra una cuestión que los criptógrafos llevan años debatiendo. No debilita las curvas.
La recompensa y quién la reclamó
Filippo Valsorda, ingeniero de criptografía, ofreció hace tres años una recompensa a quien pudiera explicar las semillas. Su publicación que anuncia la reclamación dice que investigadores de Anthropic la reclamaron a las 01:07:51 UTC del 15 de octubre de 2026. El premio se triplicó hasta 36.864 dólares y va a ISRG, la organización sin ánimo de lucro que gestiona el servicio de certificados Let's Encrypt.
Anthropic publicó su propio informe el 16 de octubre. Nombra a diez investigadores, entre ellos Nicholas Carlini y Steve Weis. Anthropic dice que su modelo Claude detectó el patrón en menos de media hora.
Por qué importaban las semillas
Las curvas primas del NIST, de P-192 a P-521, se usan en ECDSA, una forma habitual de crear firmas digitales. Cada curva se generó a partir de una semilla de 20 bytes. Según el estándar ANSI X9.62, la semilla se pasa por SHA-1 para producir los números de la curva. Una semilla de aspecto aleatorio debería demostrar que nadie eligió una curva conveniente.
El problema era que nadie sabía de dónde venían las semillas. Las entregó en 1997 Jerry Solinas, un matemático de la NSA que murió en 2023. Durante años se contó que eran hashes de frases en inglés. La preocupación era sencilla: si las semillas se eligieron libremente, alguien podía probar muchas hasta que una diera una curva débil. Valsorda escribe ahora que los hallazgos "descartan por completo la técnica descrita por Bernstein y Lange", dos investigadores que estudiaron ese riesgo.
Cómo se crearon las semillas
El método era sencillo, según ambos informes. Un programa pasaba la marca de tiempo Unix actual, el recuento de segundos desde 1970, a srand48(). Luego sacaba del generador candidatos de 20 bytes y probaba cada uno. Los candidatos que no cumplían las reglas de ANSI X9.62 se descartaban.
La primera pista de Claude fue estadística. Anthropic dice que cuatro de las semillas tenían a cero el bit más alto en sus 20 palabras, una probabilidad de 1 entre 5.810 con datos realmente aleatorios. Ese patrón apuntaba a un generador débil de los años noventa, lrand48. Después, el equipo usó reducción de retículos, una técnica matemática para recuperar números ocultos, para reconstruir el estado del generador.
| Curva | Inicio del generador (UTC) | Candidato usado |
|---|---|---|
| P-192 | 18 de mayo de 1997, 14:45:34 | 139 |
| P-521 | 8 de agosto de 1997, 01:12:04 | 1.136 |
| P-256 | 16 de agosto de 1997, 01:52:34 | 1.842 |
| P-384 | 30 de agosto de 1997, 14:50:08 | 2.688 |
| P-224 | 3 de abril de 1998, 12:52:07 | 7.026 |
Crypto Briefing informa de las mismas cifras para P-256: la marca de tiempo 871696354 y la semilla C49D360886E704936A6678E1139D26B7819F7E90. Valsorda escribió su propia versión del algoritmo en Go, y Anthropic publicó su código bajo la licencia de dominio público CC0.
Lo que sigue sin explicarse
La respuesta no está completa. Valsorda encontró una regla adicional más allá de ANSI X9.62: una curva se rechaza si su orden tiene más bits que el cuerpo sobre el que está construida. Una segunda regla todavía se le escapa, escribe. El método deja cerca del doble de semillas válidas de las que se publicaron.
Anthropic enumera las mismas lagunas. El candidato 876 de la ejecución de P-256 también da una curva válida, pero se usó el candidato 1.842. Los puntos base de P-224, P-256, P-384 y P-521 siguen sin explicarse, igual que la semilla de la curva binaria B-163. Anthropic sí explicó seis puntos base, incluido el de P-192, mediante otro generador de una biblioteca llamada FreeLIP.
Qué significa esto para los desarrolladores
No hay que cambiar nada en tu código. Anthropic dice que el trabajo no es una ruptura criptográfica, ni un nuevo ataque ni una debilidad de las curvas. Valsorda añade que los profesionales no tenían preocupaciones serias ni siquiera antes de esto.
Lo que cambia es el debate. Los equipos que evitaban P-256 porque sus semillas eran un misterio pueden revisar esa decisión con mejores pruebas. Anthropic dice que los hallazgos hacen menos plausible una puerta trasera. Los candidatos que se saltaron implican que la elección aún no está del todo explicada, así que el debate se acota en lugar de terminar.
Si trabajas en criptografía, merece la pena leer el código de reproducción. Muestra cómo una prueba estadística más la reducción de retículos pueden reconstruir el estado de un generador solo a partir de su salida. Es un buen recordatorio de no usar nunca lrand48 para nada secreto.
Las preguntas abiertas son un buen reto para cualquier curioso. La segunda regla de rechazo y los puntos base que faltan siguen siendo problemas sin reclamar.
Fuentes
- The NIST Elliptic Curves Seeds Bounty Has Been Claimed - Filippo Valsorda
- Claude reveals ECDSA curve origins - Anthropic
- Claude traces NIST P-256 seed to a 1997 random number generator run - Crypto Briefing
Artículos relacionados

Rejetto HFS CVE-2026-61500, explotada un día después de publicarse su análisis
HFS 3.0.0 a 3.2.0 firma los inicios de sesión con Math.random(), un fallo que encontró Mythos de Anthropic. Los ataques empezaron el 3 de octubre, un día después del análisis. La 3.2.1 lo corrige.

Anthropic absorbe Opaque, una startup de IA confidencial
Opaque Systems, una startup de IA confidencial valorada en 300 millones de dólares este año, cierra sus operaciones mientras su equipo se une a Anthropic. Sus herramientas de código abierto siguen adelante.

Claude Opus 4.7: sus agentes inventan juegos en una isla virtual
Un estudio del MIT dejó solos a 13 agentes de Claude Opus 4.7 en una isla virtual durante 30 horas. Inventaron juegos y después superaron a copias nuevas en tareas nuevas.