¿Puede medir la entropía de una contraseña “fácil de recordar”? [duplicar]

0

Estoy tratando de encontrar una manera de medir la entropía de una contraseña que sea fácil de recordar, basada en una lista de palabras comunes en inglés, basado libremente en este cómic XKCD . Me gustaría saber si mis cálculos son correctos o si mis suposiciones sobre "fácil de recordar" son erróneas.

Consideraré que la cantidad de palabras comunes en inglés en el diccionario es la variable d .

Consideraré que la cantidad de palabras para usar en la contraseña es la variable n .

Si se considera que el teclado inglés de EE. UU. contiene todos los caracteres probables que conforman una contraseña que es fácil de recordar, cuento con un total de 96 símbolos que se pueden ingresar directamente, incluidas mayúsculas y minúsculas.

Esos son:

TAB SPACE ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 ~'!@#$%^&*()_-+= {[}]|\ :;"'<,>.?/

Consideraré que estos caracteres son una complejidad adicional que se puede agregar a las palabras del diccionario, o la variable e como 96.

Para que sean más fáciles de recordar, solo consideraré agregar símbolos al principio o al final de una palabra, o como una palabra por sí mismos, pero no colocados arbitrariamente dentro de una palabra del diccionario. Eso debería significar que hay 2 * n + n + 1 posiciones disponibles para cada símbolo que se agrega. Usaré la variable s para el número de símbolos de complejidad adicionales agregados.

La ecuación para el total de posibles combinaciones en uso debería ser:

combinations = d^n + e^(s*(2*n+n+1))

Por lo tanto, el número de bits de entropía que proporciona este tipo de contraseña debe ser:

bits = log2(commbinations)

¿Mis matemáticas son correctas?

¿Mis suposiciones acerca de las reglas para una contraseña fácil de recordar son erróneas?

    
pregunta Smack Jack 28.08.2016 - 00:17
fuente

2 respuestas

1

No verifiqué la fórmula de combinaciones (como explico a continuación), pero si los usuarios eligen entre todas las combinaciones posibles con igual probabilidad , entonces sí, simplemente toma el logaritmo de base 2 del Número de combinaciones posibles.

Pero la parte más importante de un esquema como este es lo que me pongo en negrita: ¿cómo lograr que los usuarios elijan entre todas las combinaciones con igual probabilidad? El cómic de XKCD realmente falla en abordar eso, y ves que las personas con demasiada frecuencia no logran captar ese punto. Sin embargo, existe el método Diceware , una versión anterior del mismo concepto, que soluciona este problema al indicar a los usuarios que tirar dados como parte del proceso para generar una frase de contraseña.

La otra cosa que debes considerar es si realmente vale la pena el esquema de poner símbolos adicionales en cada palabra. Los símbolos adicionales no son mágicos: solo aumentan el número de combinaciones, algo que puede hacer mucho más simplemente usando más palabras; cualquier ganancia que pueda obtener por aumentar s , puede obtener incrementando n en su lugar. Esta es la razón por la que no revisé la fórmula de combinaciones, soy escéptico del valor de los símbolos adicionales.

    
respondido por el Luis Casillas 28.08.2016 - 01:42
fuente
1

La entropía refleja esencialmente la cantidad de información desconocida. La idea es que cuanto más alta es la entropía, más difícil es adivinar la contraseña. Y para calcular la cantidad de información desconocida, su modelo de cálculo debe conocer qué información ya conoce el atacante. Esto significa que no puede basar su modelo en cómo los usuarios crean contraseñas, sino que debe basarse en cómo se adivinan las contraseñas, es decir, cuánto esfuerzo sería construir una contraseña específica con los crackers de contraseñas comunes o cómo los compañeros de trabajo podrían adivinar la contraseña, etc. en qué vector de ataque consideras.

Si considera que las contraseñas con hash podrían verse comprometidas por algún atacante externo y es posible que haya ataques sin conexión, entonces necesita estudiar los métodos utilizados en los crackers de contraseñas modernas. Estos métodos generalmente se basan en listas enormes de contraseñas que se capturaron durante los ataques. Luego, estos crackers de contraseñas emplean varias modificaciones utilizadas habitualmente en estos datos antes de probar la fuerza bruta.

Si, en cambio, considera a los compañeros de trabajo como vector de ataque, también debe considerar que estos compañeros de trabajo tienen conocimientos específicos sobre el usuario atacado, lo que podría ayudarlo a encontrar la contraseña correcta. Por lo tanto, debe agregar esta información (como el nombre de los padres, cónyuge, hijos, perros ...) también al cálculo.

Y probablemente hay diferentes escenarios posibles que necesitas estudiar, dependiendo de tu entorno.

    
respondido por el Steffen Ullrich 28.08.2016 - 06:19
fuente

Lea otras preguntas en las etiquetas