Políticas de contraseña para generar contraseñas al azar

1

Quiero generar aleatoriamente una contraseña. Comencé usando todos los caracteres que se pueden escribir en un teclado QWERTY estándar. Sin embargo, muchas políticas de contraseña rechazan las contraseñas con algunos caracteres especiales (por ejemplo, ^ ~ '' "son caracteres que generalmente se rechazan). Otras políticas requieren caracteres especiales. Hasta ahora, he usado una estrategia que genera una contraseña que incluye al menos una mayúscula, una minúscula, un número y un carácter no tan especial (como un punto o una coma), que a menudo no se rechazan. Por supuesto, la contraseña es de suficiente longitud.

Sin embargo, también he encontrado sitios que solo aceptan cadenas de letras y números como contraseñas.

¿Cuáles son las políticas de contraseña razonables para admitir?

    
pregunta Ruben 19.05.2017 - 18:38
fuente

2 respuestas

1

Puedo garantizarle que podríamos encontrar fácilmente dos sitios que tienen políticas de contraseña totalmente incompatibles. En realidad, sería fácil: encontrar un sitio que requiera caracteres especiales y otro que los prohíba. Hecho. Así que no hay una solución única para todos.

Creo que lo mejor que puedes hacer es generar contraseñas aleatorias en un formulario que funcione principalmente para sitios: superior, inferior, números y una longitud razonable. He usado una cadena de tipo UUID o incluso un MD5 / SHA1 truncado / cualquier hash de / dev / urandom en el pasado. Luego, dé a los usuarios la opción de habilitar las opciones de "caracteres especiales requeridos [/ prohibido]", longitud máxima, etc. Una opción más compleja es incorporar las políticas para los sitios extraños a medida que surjan, pero eso probablemente sería una pesadilla.

FWIW, creo firmemente que las contraseñas únicas (es decir, usar un administrador de contraseñas) es enormemente más importante que usar contraseñas seguras en la mayoría de los casos (la principal excepción es cuando el atacante puede actuar un ataque fuera de línea, como una contraseña de cifrado de disco completo). Por lo tanto, me preocuparía más hacer que la integración sea más fácil (¡y hacer que el administrador de contraseñas sea seguro!) Que tener las contraseñas más sólidas posibles. Puedo hablar de eso todo el día, ¡me alegra ampliarlo!

    
respondido por el Ron Bowes 19.05.2017 - 22:45
fuente
1

Es posible que desee echar un vistazo a los generadores de contraseñas en las herramientas de administración de contraseñas existentes, como LastPass. Como dice @RonBowes, no hay una política única para todos, y el hecho triste es que muchos sitios tienen políticas que significan que no puede usar una contraseña muy segura (hasta hace unos años Hace tiempo, el banco Wells Fargo solo permitía 6-8 caracteres alfanuméricos que no distinguen entre mayúsculas y minúsculas para su banca en línea, para dar el ejemplo más atrevido de la cabeza), por lo que no puede cambiar entre un par de políticas altamente seguras como como "muy largo pero solo alfanumérico" vs. "relativamente corto pero seleccionado de todos los caracteres tipificables".

En términos generales, las contraseñas más largas son más seguras, principalmente sin importar los conjuntos de caracteres utilizados. Por ejemplo, los caracteres alfanuméricos insensibles a mayúsculas y minúsculas siguen siendo más de 5 bits de entropía por carácter; una contraseña de 20 caracteres de ese conjunto es de 103 bits de entropía, aproximadamente 11 órdenes de magnitud más difíciles de descifrar que una contraseña seleccionada al azar de todos los caracteres tipeables en un teclado de los EE. UU. pero con solo 10 caracteres (66 bits de entropía).

Por otro lado, las contraseñas más largas pueden ser más difíciles de escribir manualmente (más lugares para cometer errores), especialmente cuando los caracteres son aleatorios y también más difíciles de memorizar (mucho más difícil, para caracteres aleatorios incluso de un conjunto restringido) . Por lo tanto, si es probable que las personas ingresen estas contraseñas manualmente, es posible que desee usar (o al menos ofrecer) configuraciones menos seguras.

Además, incluso las políticas de contraseñas erróneas pueden ser bastante seguras si los caracteres se eligen de forma aleatoria. Para tomar la política de Wells Fargo mencionada anteriormente, la máxima entropía total de sus contraseñas fue de casi exactamente 41,4 bits, lo que es una miseria en comparación con los otros ejemplos que proporcioné, pero aún no es práctico para la fuerza bruta en una conexión a Internet (en promedio, Necesito hacer unos 1.45 intentos trillón ). Eso no será válido para un determinado atacante local, pero tomará mucho tiempo en Internet, incluso si el sitio no tuviera ninguna protección contra la fuerza bruta. Sin embargo, una contraseña típica generada por el hombre (y fácilmente memorable) generada bajo esas reglas sería mucho menos segura.

    
respondido por el CBHacking 20.05.2017 - 00:29
fuente

Lea otras preguntas en las etiquetas