En junio de 2023, un programador llamado Neal Agarwal publicó en su web, neal.fun, algo titulado The Password Game. Te pide que escribas una contraseña. Luego que tenga cinco caracteres. Luego un número. Luego una mayúscula. Luego un carácter especial.
Hasta ahí no es un juego. Es el formulario de tu banco.
Después empieza lo otro. Que los dígitos sumen 25. Que incluya el nombre de un mes. Que contenga números romanos cuyo producto sea 35. Que lleve la respuesta del Wordle de hoy. Que identifique el país de una foto. Que contenga la mejor jugada de una posición de ajedrez, en notación algebraica. Son treinta y cinco reglas, y por el camino aparece dentro de tu contraseña un emoji de huevo llamado Paul, que eclosiona y hay que alimentar con orugas, y una llama que se va comiendo tus caracteres si no la apagas a tiempo.
El juego funciona por una razón incómoda: nadie tiene que explicarte el chiste. Lo pillas en el primer segundo, porque el mecanismo lo llevas sufriendo media vida. Lo único que ha hecho Agarwal es seguir tirando del hilo.
Y esa es la parte que conviene mirar despacio. Las cuatro primeras reglas no se las inventó él.
De dónde salieron las reglas que ya conocías
Una mayúscula, un número, un símbolo y una longitud mínima no son folclore de internet: son la traducción práctica de un documento del NIST estadounidense publicado en 2003, el SP 800-63, escrito por Bill Burr. De ahí bajó a los formularios de medio mundo, y de ahí a tu cabeza.
Lo contamos entero en qué es una contraseña: Burr no tenía datos de contraseñas reales —apenas existían— así que razonó lo que parecía sensato. Más variedad de caracteres, más combinaciones, más seguridad. En 2017 el propio NIST dio marcha atrás y él le dijo al Wall Street Journal que lamentaba buena parte de lo que había escrito.
Así que el juego de Agarwal no exagera una política de seguridad. Continúa una lista que ya estaba mal en su primera línea. La única diferencia entre «debe contener un símbolo» y «los dígitos deben sumar 25» es que a la primera te has acostumbrado.
Lo que esas reglas nunca midieron
Aquí es donde el chiste deja de tener gracia, porque se puede medir.
Estas cifras salen del comprobador de este sitio, con su modelo declarado: un ataque fuera de línea contra un hash rápido, a 10¹² intentos por segundo. No son estimaciones de folleto; es lo que verás si tecleas estas mismas cadenas ahí.
| contraseña | reglas que cumple | intentos | aguanta |
|---|---|---|---|
Contraseña1! |
las cuatro | 2,3 × 10⁶ | < 1 segundo |
Verano2026! |
las cuatro | 1,0 × 10⁷ | < 1 segundo |
Zx9#kQ2m |
las cuatro | 3,3 × 10¹⁵ | 55 minutos |
| seis palabras sacadas a dados, en minúscula | ninguna | 1,1 × 10²³ | 3.500 años |
La última fila no sale del comprobador, sale de la aritmética, y es a propósito: el comprobador no puede saber que esas seis palabras vinieron de un dado, así que le calcularía otra cosa. Seis tiradas son 77,5 bits exactos, y 77,5 bits a 10¹² intentos por segundo son unos tres mil quinientos años. Volvemos a ello al final.
Léelo otra vez. Contraseña1! pasa cualquier formulario del planeta y cae antes
de que sueltes la tecla, porque la palabra «contraseña» está en el diccionario y
lo demás es el adorno que todo el mundo pone: la mayúscula delante, el número y el
símbolo detrás. Y la última fila, seis palabras corrientes en minúscula, no la
aceptaría ni la mitad de los sitios donde tienes cuenta: no lleva mayúscula, ni
número, ni símbolo.
Merece la pena detenerse en Zx9#kQ2m, porque es el mejor caso posible de la
regla. Ocho caracteres verdaderamente aleatorios, con sus cuatro tipos, exactamente
lo que la política de 2003 consideraba una contraseña ejemplar. Cincuenta y cinco
minutos. Y es un techo: el comprobador no puede saber que la tecleaste al azar,
así que le concede el beneficio de la duda y calcula el mejor escenario. Nadie
teclea así, además. Cuando a una persona le piden ocho caracteres con un símbolo,
lo que sale es Hola123! — 2,6 × 10⁶ intentos, menos de un segundo.
La regla no distingue entre esos dos. Para el formulario, Hola123! y Zx9#kQ2m
son la misma contraseña. Ese es el fallo entero: una regla de composición mide la
forma de la cadena, y la resistencia no está en la forma.
La regla de los 90 días, o cómo se inventa Otoño2026!
La otra mitad de la herencia de 2003 es la caducidad. Cámbiala cada noventa días.
Nadie inventa una contraseña nueva cada noventa días. Lo que hace la gente —lo que
haces tú, y yo— es incrementar la que ya tenía. Verano2026! se convierte en
Otoño2026! y el trabajo está hecho. Las dos aguantan menos de un segundo, y
si un atacante tiene la primera, adivinar la segunda no es un ataque: es rellenar
un hueco.
El NIST retiró la rotación obligatoria en el SP 800-63B, en 2017. En la revisión de agosto de 2025 el texto endureció el tono: donde antes decía que los verificadores «no deberían» imponer reglas de composición ni exigir cambios periódicos, ahora dice que no deben hacer ninguna de las dos cosas. Solo se fuerza el cambio si hay indicios de que la contraseña está comprometida.
Nueve años después de la primera retractación, tu empresa te sigue pidiendo una mayúscula cada trimestre.
El límite de caracteres es la peor señal de todas
Agarwal ha contado que la gota que colmó el vaso, lo que le llevó a hacer el juego, fue intentar crear una cuenta y que le dijeran que su contraseña era demasiado larga.
Esa es, de todas las reglas absurdas, la única que además es una mala señal.
Un sistema que guarda tu contraseña como debe no la guarda: guarda su hash, y un hash mide siempre lo mismo, tanto si le das ocho caracteres como si le das ochocientos. No existe ninguna razón de almacenamiento para un límite de dieciséis. Hay exactamente una excepción técnica legítima y conocida —bcrypt ignora lo que pase de 72 bytes—, y no explica los formularios que se plantan en doce.
Un tope corto no demuestra que estén guardando tu contraseña en claro, pero es el tipo de detalle que solo aparece cuando alguien la ha metido en una columna de la base de datos con un tamaño fijo. El propio SP 800-63B pide lo contrario: que se acepten al menos 64 caracteres.
La regla que sí funciona no cabe en un formulario
La incomodidad de fondo es que la buena práctica no se puede expresar como una casilla de validación. Nadie puede escribir una expresión regular para «que no la hayas usado en otro sitio» ni para «que no salga en la última filtración».
Lo que sí se puede hacer es contar. Una frase de palabras elegidas a dados —Diceware— suma 12,9 bits limpios por palabra, y esos bits sí son bits. Con el mismo modelo de 10¹² intentos por segundo:
- Cinco palabras son 64,6 bits: unos 164 días.
- Seis palabras son 77,5 bits: unos 3.500 años.
Conviene decir las dos cifras y no solo la segunda. Se repite mucho que una frase de cinco palabras «aguanta siglos», y contra un hash rápido no aguanta siglos: aguanta cinco meses y medio. Por eso Reinhold recomendaba cinco como mínimo y seis para lo que importa. La palabra número seis es la que cambia la escala, y es gratis.
Y ninguna de las dos pasaría el formulario de tu banco.
Por qué el juego es gracioso
Cuando el juego te pide que la suma de los dígitos sea 25, te ríes porque es una condición arbitraria que no tiene nada que ver con lo que hace segura a una contraseña.
Exigir un símbolo también es una condición arbitraria que no tiene nada que ver con lo que hace segura a una contraseña. La diferencia es que esa la lleva la mitad de internet, y que a esa le hemos cogido cariño.
Si quieres el resumen operativo, cabe en tres líneas: usa el
generador o unos dados, mete el resultado en el gestor, y cumple las reglas
del formulario añadiendo lo que te pida, sin creerte que eso te ha protegido de
nada. La mayúscula al principio y el ! al final son un peaje, no una defensa.
Lo demás es un juego. Está muy bien hecho, y ojalá se hubiera quedado en juego.
Fuentes: Neal Agarwal, «The Password Game» (neal.fun, 27 de junio de 2023), sus 35 reglas y el propio relato del autor sobre el formulario que le dijo que su contraseña era demasiado larga · NIST SP 800-63 (2003), SP 800-63B (2017) y SP 800-63B-4 (agosto de 2025), que pasa de «no deberían» a «no deben» sobre reglas de composición y caducidad, y pide aceptar al menos 64 caracteres · declaraciones de Bill Burr al Wall Street Journal, agosto de 2017 · Arnold G. Reinhold, Diceware (1995), de donde salen los 12,9 bits por palabra. Los tiempos de la tabla están medidos con el comprobador de este sitio, con su modelo declarado de 10¹² intentos por segundo contra un hash rápido; los de Diceware, calculados con los mismos intentos por segundo a partir de log₂(7.776) por palabra.
Foto de Olha Ruskykh · Pexels