¿Cómo generar contraseñas seguras?
¿Qué es una contraseña y qué la hace segura?
Contraseñas
Las contraseñas son piezas de información que permiten validar el acceso a un espacio restringido. Su posesión y conocimiento verifican la autorización para conceder acceso, denegándolo a quienes no la poseen o desconocen. En la actualidad, una contraseña está compuesta de una secuencia de caracteres lingüísticos que en su conjunto constituyen la información necesaria para validar un permiso.
Seguridad de una contraseña
El nivel de seguridad de una contraseña se determina por la dificultad que tiene un atacante para descifrarla con éxito. En un espacio imaginario donde no existe ninguna información sobre la fuente de la contraseña, la complejidad estadística determina su seguridad, siendo la longitud y complejidad lingüística directamente proporcionales a su nivel de seguridad.
En el mundo real, sin embargo, la fuente puede ser identificada y así la determinación de una contraseña se hace menos compleja si la fuente es parametrizable. Esto implica determinar todas las relaciones que pueden desencadenar el uso de patrones que den como resultado una preferencia, familia, colores, fechas importantes, o mediante engaño obtener directamente de la fuente la totalidad o los elementos componentes que determinen la contraseña.
De las anteriores apreciaciones, se deduce que la seguridad de una contraseña se establece por: la ausencia de relaciones parametrizables a la fuente y la longitud y complejidad lingüística de la misma. Estas consideraciones hacen de un generador de contraseñas una herramienta indispensable para la producción de piezas de información seguras para su uso como contraseñas.
Consideraciones al usar un generador de contraseñas
Al generar una contraseña con un generador como PassGeni, que emplea un conjunto de caracteres que incluye letras minúsculas, letras mayúsculas y números, tenga presente que descifrarla mediante un ataque de fuerza bruta (probando todas las combinaciones posibles) tomará un tiempo determinado:
Longitud | PassGeni SIN símbolos | PassGeni CON símbolos |
7 | 1 hora | 2+ días |
8 | 20+ horas | 70+ días |
9 | 100+ días | 15+ años |
10 | 20+ años | 1800+ años |
11 | 1000+ años | 200 mil años |
12 | 100 mil años | 10 millones de años |
Importante: Estos datos se basan en pruebas sucesivas y paralelas de múltiples combinaciones en una fuente comprometida protegida con hash MD5 (no recomendable y no conforme a los estándares actuales). No reflejan intentos directos a través de una interfaz de usuario de servidor web, la cual puede limitar el número de intentos, incrementar el tiempo entre cada prueba o registrar el ataque y su origen para medidas preventivas. Son únicamente ilustrativos para subrayar la importancia de la complejidad y longitud de las contraseñas.
Longitud | Usando su dispositivo | Usando la capacidad total de la red Bitcoin |
Importante: Estos datos suponen un ataque de fuerza bruta que implica probar múltiples combinaciones sucesiva y paralelamente en una fuente comprometida protegida por hash SHA-256. La red Bitcoin posee la mayor capacidad existente en el mundo para ejecutar funciones de hash con el algoritmo SHA-256; usar una contraseña de 20 caracteres generada por PassGeni le tomaría a la red Bitcoin más tiempo que el tiempo estimado de existencia de la vida en la Tierra.
Finalmente, si bien la generación de contraseñas es una parte importante, el almacenamiento y el momento de su uso también son puntos críticos que deben ser considerados para alcanzar un mayor nivel de ciberseguridad.