Desde hace muchos años se viene hablando de la muerte de las contraseñas: Bill Gates afirmaba en 2006 que iban a morir en 3 o 4 años, IBM vaticinaba en 2011 que en menos de 5 años iban a ser sustituidas, y en el mismo sentido se pronunciaban en 2013 en la BBC cuando Apple añadía sensor de huellas a su iPhone.
Como veis a día de hoy, ninguno de esos presagios se ha cumplido y seguimos utilizando contraseñas para acceder a nuestros servicios digitales cada día. Pero aunque no se hayan cumplido totalmente, sí que están cogiendo fuerza varios mecanismos, herramientas y políticas que estoy seguro que en los próximos años darán mucho que hablar y “enterrarán” la concepción actual de las contraseñas en favor de métodos nuevos -o complementarios- de autenticarse con el número creciente de servicios digitales que utilizamos a diario.
Complejidad
Si hay un mantra que se ha repetido hasta la saciedad (nosotros incluidos), es que las “buenas” contraseñas deben tener caracteres en mayúsculas, en minúsculas, números y caracteres especiales, y tener una longitud de al menos ocho caracteres.
¿Cuál es el problema de esta política? Que como buenos seres humanos utilizamos “atajos” para que nos sea más fácil recordar nuestras contraseñas. Utilizar el mínimo número de caracteres necesarios (si piden sólo 8, ¿para qué voy a poner más?), utilizar sustituciones de caracteres comunes para incluir los números y los caracteres especiales (seguro que habéis oído hablar del L33t Sp34k), o utilizar mayúsculas en el primer carácter de la contraseña o de cada palabra de las que forme la contraseña, son sólo algunos de los “atajos” utilizados.
¿Cuál es el problema de utilizar estos atajos? Como ya nos decía Randall Munroe en 2011 en la tira que podéis ver arriba, este tipo de contraseñas tiene menos entropía (i.e. es más fácil de adivinar) que una contraseña con un juego de caracteres más pequeño (ergo más fácil de recordar para un humano) pero una longitud mucho mayor.
Y no es sólo el señor Munroe: el NIST (organismo de estandarización de Estados Unidos) está redefiniendo su “Special Publication 800-63-3: Digital Authentication Guidelines” (se puede contribuir en GitHub o leer el estado de revisión actual en su propia página) que abarca todo lo relacionado con mecanismos de autenticación, y entre otras cosas habla de que se debería ayudar al usuario reduciendo los requisitos de complejidad y favoreciendo el uso de contraseñas más largas (más información sobre los principales cambios aquí y aquí).
Múltiples factores de autenticación
Otro de los cambios más significativos es la combinación de las típicas contraseñas con otros elementos independientes sin los cuales no se puede completar la autenticación. Esto es la llamada Autenticación de Factor Múltiple (o MFA, multi-factor authentication).
Estos elementos independientes pueden ser de varios tipos: elementos que el usuario sabe (la contraseña), elementos que posee (un dispositivo físico o token, o un generador software de dichos tokens para no tener que comprar ningún dispositivo externo) o elementos que forman parte del usuario (una huella dactilar por ejemplo).
Un caso concreto de estos sistemas son los token físicos, como estos que podemos ver a continuación:
Estos token incorporan algoritmos que generan contraseñas de un solo uso -los más comunes son Time-based One-Time Password algorithm, o TOTP y HOTP o HMAC-based One-Time Password algorithm– de forma que, si alguien intercepta un inicio de sesión nuestros datos no se verán comprometidos ya que sólo será válida una de las partes interceptadas.
Otro algoritmo interesante que incorporan algunos de estos token es Universal Second Factor U2F, ya que la propia conexión del token al sistema autentica al usuario (no es necesario copiar la contraseña del token a la aplicación, como en el caso del token RSA por ejemplo) y además está soportado de forma nativa por los navegadores Google Chrome y Opera, y mediante una extensión del navegador en Firefox.
En el mercado hay múltiples dispositivos que nos sirven para este cometido, como los token de Nitrokey, Feitian (FIDO u OTP) o Yubico, y que nos proporcionan más funcionalidades como Smartcard GPG o almacenamiento seguro.
Otros cambios
Hemos comentado antes que los principales cambios del NIST SP 800-63-3 van dirigidos a facilitar la vida al usuario medio en lugar de “luchar contra él” e incluyen entre otros, además de la ya comentada ausencia de requisitos de complejidad, la implementación de una lista negra de contraseñas no permitidas y eliminar las pistas para recordar las contraseñas así como las preguntas prefijadas.
Pero de todas ellas, la más controvertida a mi juicio es la de que hay que evitar cambiar la contraseña si no es estrictamente necesario, por ejemplo tras el compromiso de una cuenta o de la base de datos de la aplicación afectada, así que se acabó eso de cambiar de contraseña cada 3 o 6 meses. Auditores e ISO-liebers, ¡temblad!
Conclusión
Aunque parece que las contraseñas no van a desaparecer a medio plazo, la forma en la que nos autenticamos sí que está cambiando, por lo que hay que seguir de cerca los cambios en los estándares y recomendaciones, así como las nuevas tecnologías que van apareciendo para mejorar nuestra seguridad y facilitar el poder llevar una vida digital segura.
Y a vosotros, ¿qué os parecen estos cambios? ¿Van a ser positivos, a facilitar la vida y al mismo tiempo mejorar la seguridad del usuario medio? Por otro lado, ¿os parecen interesantes los múltiples factores de autenticación? ¿Habéis utilizado alguno de ellos?
Esperamos vuestras respuestas en los comentarios.
Hola
Me gustaría contactar x mail con vosotros .
Para este asunto de passwords.
Gracias
OS indico mi mail en el form