¿es posible mejorar la entropía de XKCD # 936 usando un diccionario más grande?

3

XKCD # 936 utiliza un subconjunto limitado del idioma inglés, solo 2000 palabras. Simplemente lo busqué, y el idioma inglés tiene más de un millón de palabras, un subconjunto considerable de los que tienen caracteres especiales, números y puntuación.

1,000,000 es aproximadamente 2 ^ 20, por lo que 4 palabras aleatorias de ese conjunto tendrían 80 bits de entropía, quizás un poco menos. Si queremos, incluso podemos eliminar parte del diccionario para no tener que lidiar con palabras monstruosas como antidisestablishmentarianism que rompería muchas entradas de contraseña.

¿Sería esta una manera razonable de mejorar la entropía? ¿O me estoy perdiendo un punto vital?

    
pregunta Nzall 27.01.2015 - 23:29
fuente

3 respuestas

5

Sí, tienes razón y sí, te estás perdiendo algo.

Claro, puede aumentar fácilmente la multiplicidad de entropía utilizando una lista de palabras más grande; también puede lograrlo utilizando frases de contraseña de 8 palabras, o simplemente utilizando bytes de entropía sin procesar directamente sin las palabras.

El punto entero de ese xkcd es saldo .
Equilibrio entre "suficiente entropía" y "bastante fácil de recordar".

Podría argumentar si 44 bits es suficiente entropía, o si necesita más. Pero si es así, debe tener en cuenta el costo no despreciable de la memorabilidad reducida. Siempre es una compensación.

Como dije en mi respuesta a la pregunta canónica sobre XKCD 936 :

  

Regla de usabilidad de AviD:
  La seguridad a expensas de la usabilidad viene a expensas de la seguridad.

Así que sí, siga adelante y use el lenguaje completo como su diccionario, pero está pagando un precio que muchos consideraría una mala compensación.

Como Randall (autor de xkcd) explica aquí ( y de acuerdo con muchos estudios sobre el tema), lo estaba basando no solo en todas las palabras posibles en un diccionario, sino en palabras que son FÁCILES de recordar (y tipo, agregaré).

Otra opción, más agresiva que xkcd pero no tan ridículamente difícil como el lenguaje completo, es algo como diccionario de Diceware : más de 11 bits por palabra, pero no mucho más (poco menos de 13 bits).
Entonces 4 palabras de eso serían ~ 51.5 bits. O bien, tome otra palabra simple y obtenga una entropía de casi 65 bits.

Sí, eso lo mejora un poco, sin costar mucha facilidad de uso, ya que aún se adhieren a palabras cortas y comunes. (En lo personal, todavía hay algunas palabras de "relleno", como números, que preferiría prescindir).

Como siempre, se trata de equilibrio.

    
respondido por el AviD 29.01.2015 - 17:37
fuente
3

De todos modos, "romperá" muchas entradas de contraseña, ya que el esquema de contraseña no incluirá los números o caracteres especiales que requieren muchos sitios, y es probable que ya sea más largo que el máximo si el sitio tiene una longitud de contraseña máxima permitida.

La solución real no es usar algún truco para memorizar una contraseña altamente entrópica (aunque si eso es lo que realmente quieres hacer, Diceware es el camino a seguir). La solución real es utilizar un software de administración de contraseñas que recuerde contraseñas verdaderamente aleatorias y únicas para cada sitio diferente que visite. Si está reutilizando contraseñas en los sitios, la alta entropía no le servirá de nada cuando uno de esos sitios almacena su contraseña en texto sin formato y se ven comprometidos: sus cuentas en otros sitios también se verán comprometidas, al igual que todos los que utiliza letmein para todas sus cuentas.

    
respondido por el Aron Foster 27.01.2015 - 23:44
fuente
0

La razón por la que las listas de palabras son importantes es que reducen drásticamente la cantidad de entropía. Usted podría simplemente aumentar la entropía utilizando algún otro idioma. De esa manera, los crackers tendrían que usar frecuencias de letras ingenuas para sus conjeturas.

    
respondido por el munchkin 29.01.2015 - 17:04
fuente

Lea otras preguntas en las etiquetas