Un contrasinal é a resposta a unha pregunta moi vella: es dos nosos?
Non o inventou a informática. Polibio, no século II a. C., describe como o exército romano facía circular cada noite unha palabra escrita nunha táboa de madeira —a tessera— que pasaba de unidade en unidade e volvía ao mando. Quen a sabía era dos seus. Quen non, non.
Dous mil anos despois seguimos facendo exactamente o mesmo. O único que cambiou é quen pregunta, e a que velocidade pode intentar adiviñar a resposta.
1961 o contrasinal entra no ordenador
En novembro de 1961, o MIT demostrou o CTSS (Compatible Time-Sharing System), dirixido por Fernando Corbató. Era unha idea nova: un só ordenador, moi caro, compartido por varias persoas á vez.
E aí apareceu o problema. Se a máquina é de todos, os ficheiros de cadaquén teñen que ser de cadaquén. Facía falta un xeito de que o ordenador soubese quen estaba a escribir. A solución foi a máis obvia e a máis romana posible: que cada usuario tivese unha palabra súa.
Convén dicilo con precisión: Corbató non inventou o contrasinal. Inventou o contrasinal por usuario nun ordenador multiusuario, que é outra cousa. El mesmo, xa maior, dixo que aquilo se convertera nun «pesadelo».
1962 a primeira filtración, e foi por tempo de máquina
Un ano despois, Allan Scherr, doutorando nese mesmo MIT, tiña un problema moi terreal: só lle asignaban catro horas de ordenador á semana e precisaba máis para a súa tese.
Así que pediulle ao sistema que imprimise o ficheiro de contrasinais. Nada máis. Estaba alí, en texto plano, e ninguén pensara que alguén o pediría. Co listado na man, usou as contas doutros para seguir traballando.
O interesante non é o truco. É o móbil: a primeira filtración de contrasinais da historia non a fixo un delincuente, senón alguén que quería seguir traballando. Sesenta anos despois, a maioría dos furados de seguridade seguen nacendo de xente razoable buscando o camiño curto.
1979 alguén decátase de que non hai que gardalos
Durante case dúas décadas, moitos sistemas gardaron os contrasinais tal cal. Se alguén lía o ficheiro, levaba todo.
En 1979, Robert Morris e Ken Thompson publicaron en Communications of the ACM un artigo titulado «Password Security: A Case History», sobre o que fixeran en Unix. Dúas ideas que hoxe son a base de todo:
- Non gardar o contrasinal, gardar o seu hash. O sistema non precisa saber cal é o teu contrasinal; só precisa poder comprobar se o que acabas de escribir dá o mesmo resultado.
- O sal: engadir un valor aleatorio a cada contrasinal antes de aplicarlle o hash, para que dúas persoas co mesmo contrasinal non teñan o mesmo hash e para que non se poida precalcular unha táboa e rompelos todos dunha vez.
Cando hoxe dicimos que un servizo «non debería saber o teu contrasinal», estamos a citar un artigo de 1979.
2003 as regras que todos aprendemos, e de onde saíron
En 2003, Bill Burr, do NIST estadounidense, escribiu o documento que acabaría rexendo como medio mundo pedía contrasinais: o SP 800-63. De aí saíu todo o que recoñeces ao instante:
Polo menos unha maiúscula, un número e un símbolo. Cámbiao cada 90 días.
Soaba a ciencia. Non o era. Burr non tiña bos datos sobre contrasinais reais —case non existían— así que se apoiou no que había e razoou cara ao que parecía sensato: máis variedade de caracteres, máis combinacións, máis seguridade.
O problema é que as persoas non somos xeradores aleatorios. Pídelle a alguén
unha maiúscula e poraa a primeira. Pídelle un número e irá ao final. Pídelle un
símbolo e será un !. E se o obrigas a cambialo cada tres meses, Verán2024!
converterase en Outono2024!.
O resultado foi toda unha xeración de contrasinais que parecen complexos e son triviais, e uns usuarios esgotados que os reutilizan en todas partes porque xa non poden máis.
2017 o NIST retráctase, e Burr tamén
En 2017, o NIST publicou o SP 800-63B e deu marcha atrás en case todo:
- A lonxitude importa máis que a complexidade.
- Nada de rotación forzada agás que haxa indicios de compromiso.
- Comprobar o contrasinal contra listas de filtrados, no canto de esixir símbolos.
Ese mesmo ano, Burr díxolle ao Wall Street Journal que lamentaba boa parte do que escribira. É unha das rectificacións máis honestas que deu a seguridade informática, e aínda hoxe hai milleiros de formularios pedíndoche un símbolo por culpa dun documento que o seu propio autor desautorizou.
Por que isto non é historia antiga
Todo isto ten unha consecuencia moi concreta, e podes vela aquí mesmo.
O noso comprobador funcionaba ata hai nada coa lóxica de
2003: contaba maiúsculas, números e símbolos. Dáballe un 92 % «Moi forte» a
Contraseña1! —literalmente a palabra castelá para «contrasinal»— e un 0 %
«Moi débil» a unha frase de cinco palabras ao chou, que é incomparablemente
mellor.
Estaba premiando exactamente o que non hai que facer. Cambiámolo: agora busca o teu contrasinal en dicionarios de palabras, nomes, cidades e patróns de teclado, e dicheche canto tardaría en caer de verdade.
E por iso o xerador amósache os bits de entropía no canto dunha porcentaxe. Unha porcentaxe non significa nada. Os bits si: son cantas veces tería que intentalo alguén que non sabe nada de ti.
Que facer, en dúas liñas
- Longos antes que retorcidos. Catro ou cinco palabras ao chou gañan a
P@ssw0rdpor moitas ordes de magnitude. - Distinto en cada sitio, e nun xestor. É a única regra de 2003 que segue en pé, e á que menos caso lle fixemos.
A pregunta segue sendo a mesma que na Roma do século II: es dos nosos? O que cambiou é que agora quen pregunta pode intentar mil millóns de respostas por segundo. Convén que a túa non estea no dicionario.
Fontes: F. J. Corbató e o CTSS (MIT, 1961) · o relato do propio Allan Scherr sobre 1962 · R. Morris e K. Thompson, «Password Security: A Case History», Communications of the ACM, 1979 · NIST SP 800-63 (2003) e SP 800-63B (2017) · declaracións de Bill Burr ao Wall Street Journal, agosto de 2017.