Una contraseña es una respuesta a una pregunta muy vieja: ¿eres de los nuestros?
No la inventó la informática. Polibio, en el siglo II a. C., describe cómo el ejército romano hacía circular cada noche una palabra escrita en una tablilla de madera —la tessera— que pasaba de unidad en unidad y volvía al mando. Quien la sabía era de los tuyos. Quien no, no.
Dos mil años después seguimos haciendo exactamente lo mismo. Lo único que ha cambiado es quién pregunta, y a qué velocidad puede intentar adivinar la respuesta.
1961 la contraseña entra en el ordenador
En noviembre de 1961, el MIT demostró el CTSS (Compatible Time-Sharing System), dirigido por Fernando Corbató. Era una idea nueva: un solo ordenador, muy caro, compartido por varias personas a la vez.
Y ahí apareció el problema. Si la máquina es de todos, los archivos de cada uno tienen que ser de cada uno. Hacía falta una forma de que el ordenador supiera quién estaba escribiendo. La solución fue la más obvia y la más romana posible: que cada usuario tuviera una palabra suya.
Conviene decirlo con precisión: Corbató no inventó la contraseña. Inventó la contraseña por usuario en un ordenador multiusuario, que es otra cosa. Él mismo, ya mayor, dijo que aquello se había convertido en «una pesadilla».
1962 la primera filtración, y fue por tiempo de máquina
Un año después, Allan Scherr, doctorando en ese mismo MIT, tenía un problema muy mundano: solo le asignaban cuatro horas de ordenador a la semana y necesitaba más para su tesis.
Así que pidió al sistema que imprimiera el fichero de contraseñas. Sin más. Estaba ahí, en texto plano, y nadie había pensado que alguien lo pediría. Con el listado en la mano, usó las cuentas de otros para seguir trabajando.
Lo interesante no es el truco. Es el móvil: la primera filtración de contraseñas de la historia no la hizo un delincuente, sino alguien que quería seguir trabajando. Sesenta años después, la mayoría de los agujeros de seguridad siguen naciendo de gente razonable buscando el camino corto.
1979 alguien se da cuenta de que no hay que guardarlas
Durante casi dos décadas, muchos sistemas guardaron las contraseñas tal cual. Si alguien leía el fichero, se lo llevaba todo.
En 1979, Robert Morris y Ken Thompson publicaron en Communications of the ACM un artículo titulado «Password Security: A Case History», sobre lo que habían hecho en Unix. Dos ideas que hoy son la base de todo:
- No guardar la contraseña, guardar su hash. El sistema no necesita saber cuál es tu contraseña; solo necesita poder comprobar si la que acabas de escribir da el mismo resultado.
- La sal: añadir un valor aleatorio a cada contraseña antes de aplicarle el hash, para que dos personas con la misma contraseña no tengan el mismo hash, y para que no se pueda precalcular una tabla y romperlas todas de golpe.
Cuando hoy decimos que un servicio «no debería saber tu contraseña», estamos citando un artículo de 1979.
2003 las reglas que todos aprendimos, y de dónde salieron
En 2003, Bill Burr, del NIST estadounidense, escribió el documento que acabaría rigiendo cómo se pedían contraseñas en medio mundo: el SP 800-63. De ahí salió todo lo que reconoces al instante:
Al menos una mayúscula, un número y un símbolo. Cámbiala cada 90 días.
Sonaba a ciencia. No lo era. Burr no tenía buenos datos sobre contraseñas reales —apenas existían— así que se apoyó en lo que había y razonó lo que parecía sensato: más variedad de caracteres, más combinaciones, más seguridad.
El problema es que las personas no son generadores aleatorios. Pídele a
alguien una mayúscula y la pondrá la primera. Pídele un número y lo pondrá al
final. Pídele un símbolo y será un !. Y si le obligas a cambiarla cada tres
meses, Verano2024! se convertirá en Otoño2024!.
El resultado fue una generación entera de contraseñas que parecen complejas y son triviales, y unos usuarios agotados que las reutilizan en todas partes porque ya no pueden más.
2017 el NIST se retracta, y Burr también
En 2017, el NIST publicó el SP 800-63B y dio marcha atrás en casi todo:
- La longitud importa más que la complejidad.
- Nada de rotación forzada salvo que haya indicios de compromiso.
- Comprobar la contraseña contra listas de filtradas, en vez de exigir símbolos.
Ese mismo año, Burr le dijo al Wall Street Journal que lamentaba buena parte de lo que había escrito. Es una de las rectificaciones más honestas que ha dado la seguridad informática, y aún hoy hay miles de formularios pidiéndote un símbolo por culpa de un documento que su propio autor desautorizó.
Por qué esto no es historia antigua
Todo esto tiene una consecuencia muy concreta, y la puedes ver aquí mismo.
Nuestro propio comprobador funcionaba hasta hace nada con la
lógica de 2003: contaba mayúsculas, números y símbolos. Le daba un 92 % «Muy
fuerte» a Contraseña1! —literalmente la palabra «contraseña»— y un 0 % «Muy
débil» a una frase de cinco palabras al azar, que es incomparablemente mejor.
Estaba premiando exactamente lo que no hay que hacer. Lo hemos cambiado: ahora busca tu contraseña en diccionarios de palabras, nombres, ciudades y patrones de teclado, y te dice cuánto tardaría en caer de verdad.
Y por eso el generador te enseña los bits de entropía en vez de un porcentaje. Un porcentaje no significa nada. Los bits sí: son cuántas veces tendría que intentarlo alguien que no sabe nada de ti.
Qué hacer, en dos líneas
- Largas antes que retorcidas. Cuatro o cinco palabras al azar baten a
P@ssw0rdpor muchos órdenes de magnitud. - Distinta en cada sitio, y en un gestor. Es la única regla de 2003 que sigue en pie, y la que menos caso le hicimos.
La pregunta sigue siendo la misma que en la Roma del siglo II: ¿eres de los nuestros? Lo que ha cambiado es que ahora quien pregunta puede intentar mil millones de respuestas por segundo. Conviene que la tuya no esté en el diccionario.
Fuentes: F. J. Corbató y el CTSS (MIT, 1961) · el relato del propio Allan Scherr sobre 1962 · R. Morris y K. Thompson, «Password Security: A Case History», Communications of the ACM, 1979 · NIST SP 800-63 (2003) y SP 800-63B (2017) · declaraciones de Bill Burr al Wall Street Journal, agosto de 2017.