¿Es probable que vea algún aumento práctico en la seguridad mediante la combinación de frases de contraseña y discurso previo?

1

(Realmente deberíamos tener un botón para vincular este XKCD)

Acabo de empezar a cambiar mis contraseñas a frases de contraseña. Ahora, no hice tirar ningún dado para llegar a ellos, lo que sé que sacrifica la entropía; son oraciones Tienen por lo menos 25 caracteres, por lo menos 5 palabras, y trato de ingresar un número allí, así como una palabra "falsa" (esto sería una bastardización de una palabra que invento o una palabra no estándar como "doggo" o "borked").

Ahora, sé que el hecho de tener una estructura significa que he perdido la entropía potencial, pero el mensaje que me alejé de ese XKCD es que la memorización es un recurso que se debe maximizar al igual que la entropía. Aprecio que puedo decirle a mi esposa estas contraseñas sin necesidad de escribirlas (o, Dios no lo permita, enviarlas por texto o correo electrónico). Espero nunca ver una contraseña activa mía.

Mi pregunta, entonces, es ¿Es probable que vea algún aumento práctico en la seguridad mediante la combinación de frases de contraseña y lenguaje de ejemplo?

"Aumento práctico de la seguridad" aquí significa protección adicional contra cualquier vector de ataque dado el hardware moderno en un período de tiempo razonable. Sé que leet-speak obviamente ayudaría, pero si un ataque solo a la frase de contraseña es inviable, preferiría no complicar mi contraseña. Esto es en el caso promedio; No me preocupa que alguien dedique docenas de GPU solo a mi contraseña durante meses.

Puede suponer que cualquier cambio se memorizará fácilmente. En general, siento curiosidad por saber si una frase de contraseña proporciona suficiente entropía por sí misma, de modo que las estrategias tradicionales para la entropía ya no sean relevantes. Como ejemplo, ¿es la segunda contraseña aquí pragmáticamente mejor que la primera?

mydoggoShrekate7bonesyesterday
myd0ggoShr3k4te7bon3$yesterd@y

(Además, no solo sugiera un administrador de contraseñas. Tengo mis razones para querer evitar una.)

    
pregunta Lord Farquaad 18.07.2018 - 18:01
fuente

1 respuesta

3

Si su objetivo es la memorabilidad y la legibilidad, entonces la segunda versión de su contraseña (es decir, myd0ggoShr3k4te7bon3$yesterd@y ) es mucho más difícil de memorizar, leer y comunicar. Así que sí, definitivamente obstaculizará y ralentizará la mayoría de los intentos de fuerza bruta basados en listas de palabras, pero a expensas de la memorabilidad y la legibilidad.

Es difícil calcular la entropía de tu contraseña. No estoy seguro de poder hacerlo, pero lo intentaré de todos modos, y si me equivoco, alguien me corregirá.

Si buscas en Google "entropía de la oración en inglés", puedes encontrar algunos artículos que citan el experimento de Shannon para calcular la entropía del inglés. Por lo que leí, parece que, en promedio, la entropía puede ir de 0.6 bits a 2.5 bits por letra, dependiendo de muchos factores. Supongamos que tu oración tiene 1.5 bits por carácter. Algunas letras tendrán una mayor entropía debido a sus palabras inventadas, otras tendrán una menor entropía porque son parte de palabras en inglés muy básicas, por lo que supongamos que en promedio es de 1.5 bits por carácter de todos modos.

30 characters x 1.5 bits = 45 bits

Ahora vamos a transformar la frase de contraseña. Para simplificar, suponemos que básicamente tenemos que elegir 7 letras y traducirlas a leet. Suponiendo que solo la mitad de las letras tienen un equivalente de leet, necesitamos escoger 7 letras de 15. Y necesitamos combinatoria, que si no estoy equivocada (ha pasado mucho tiempo desde las clases de matemáticas, suspiro) lleva a esto:

15! / (7! (15-7)!) = 6435 possible groups of leet letters.

Entonces, para adivinar su contraseña leet, todas esas posibilidades deben reforzarse bruscamente para cada oración, lo que significa que agregará 12.65 bits de entropía (es decir, la base de registro 2 de 6435). Es una estimación aproximada, por ejemplo, no consideré el hecho de que "a" en leet puede ser "@" o "4", pero asumí que cada letra traducible podría traducirse a un solo equivalente.

Entonces, para recapitular, si no estoy equivocado, y en un mundo ideal donde el atacante sabe cómo se crean sus contraseñas y donde las contraseñas están optimizadas para la entropía del idioma inglés, en lugar de solo hacer un montón de palabras no gramaticales , tenemos las siguientes entropías:

frase de 30 caracteres: 45 bits
Frase leet de 30 caracteres: 57.65 bits
Frase de 40 caracteres: 1.5 x 40 = 60 bits
Frase de paso de 5 palabras de diceware (aproximadamente 30 caracteres) = 12.9 x 5 = 64.5 bits

Conclusión: sugeriría usar una oración más larga o, mejor aún, una verdadera frase aleatoria, como diceware o similar, para que pueda lograr fácilmente una mayor entropía y, al mismo tiempo, legibilidad y memorización.

    
respondido por el reed 18.07.2018 - 19:57
fuente

Lea otras preguntas en las etiquetas