La entropía en física y en ciencia de la información es solo el logaritmo (típicamente registro natural en física; registro base-2 en informática) del número de posibilidades igualmente probables, porque generalmente es más fácil tratar y pensar con el logaritmo de estas posibilidades excepcionalmente grandes que las posibilidades directamente.
Si generé aleatoriamente 128 bits como mi clave AES-128 aleatoria (que almaceno en algún lugar), es fácil ver que hay 2 128 = 340,282,366,920,938,463,463,374,607,431,768,211,456 posibles claves que podría haber usado (2 igualmente -las posibles opciones para cada bit, y las probabilidades se multiplican). Cuando se habla de complejidad informativa, es más simple hablar de la clave que tiene 128 bits de entropía que decir sobre 340 x 10 36 o 340 undecillion (escala corta) , especialmente si quiere compararlo con una clave de 256 bits con 2 256 = 115,792,089,237,316,195,423,570,0085,0088,988,988,919.
Ahora, si te entrego una contraseña de usuario aleatoria, técnicamente no es posible asignarle una entropía única.
Solo puede asignar una entropía a un modelo de generación de contraseñas. Entonces, si se le pide que calcule una entropía para una contraseña, su tarea es asumir el modelo que podría haber generado esa contraseña.
Si te diera una contraseña como P[rmDrds,r
, podrías asumir que elegí aleatoriamente 10 caracteres de un conjunto de 95 caracteres ASCII imprimibles y para la fuerza bruta tendrías que pasar por 95 10 ~ 2 posibilidades 65.7 y tendría una entropía de 65.7 bits. Sin embargo, es solo una contraseña muy débil OpenSesame
donde cambié mis manos sobre el teclado a la letra correcta (que probablemente sea una de las formas más comunes de cambiar la contraseña de baja entropía, por ejemplo, 2 ^ 6 ~ 64). ). Si pudiera encontrar OpenSesame
en una lista de, digamos, las 1000 (1000 ~ 2 10 ) las contraseñas más comunes, entonces, de hecho, la entropía de P[rmDrds,r
está más cerca de los 16 bits (posibilidades de 2 < sup> 10 x 2 6 ), cuando la generación de la contraseña es elegir una de las 64 formas comunes de ocultar una contraseña y luego elegir una contraseña de una lista de 1000 contraseñas comunes. Por lo tanto, después de aproximadamente 64,000 intentos, un forzador bruto sofisticado que probó esta avenida de ataque podría llegar a P[rmDrds,r
, por lo que es más preciso estimar que la entropía es de aproximadamente 16 bits que 65.7 bits, que es 2 65.7-16 ~ 2 49.7 ~ 914 billones de veces más fácil de forzar la fuerza bruta que la contraseña de 65.7 bits.
Ahora, obviamente, un atacante de fuerza bruta menos sofisticado podría haber ignorado la posibilidad de desplazar los caracteres en el teclado un espacio a la izquierda mientras pasa por las listas de contraseñas comunes. Pero para estar seguro, ignora a los atacantes tontos y asume que un atacante muy sofisticado ha considerado todos tus métodos de generación de contraseñas ( principio de Kerckhoffs dice evitar la seguridad por la oscuridad; suponga que el enemigo ha considerado su técnica secreta entre muchos otros métodos). Entonces, cuando alguien dice que necesita una contraseña de alta entropía, su objetivo no es una contraseña que parezca ser altamente aleatoria (y algunas contraseña simple tester lo etiqueta como de alta entropía). Desea una contraseña aleatoria que se haya creado a partir de muchas elecciones aleatorias que se ingresen en el procedimiento de generación de su contraseña. No debe elegir palabras significativas para usted y crear una contraseña para él con trucos oscuros, como cambiar las letras o las sustituciones leetspeak. Para obtener una contraseña segura, debe confiar en que se ingresan más de 80 bits de aleatoriedad no humana en su procedimiento. Debe tener en cuenta que un bit de entropía en un procedimiento de generación de contraseña es equivalente a una decisión de dos opciones (por ejemplo, algo que podría determinarse mediante un lanzamiento de moneda).
Y de nuevo, con muy poca probabilidad, puedes generar una contraseña aleatoriamente con muchas opciones aleatorias y termina una contraseña muy débil; por ejemplo, es técnicamente posible que elija aleatoriamente 12 caracteres y obtenga password1234
o dddddddddddd
. En la práctica, es una posibilidad, aunque es poco probable que ocurra (por ejemplo, si utiliza un procedimiento que genera una contraseña de 90 bits, la posibilidad de que se genere una contraseña que también podría haberse generado con un procedimiento más simple con solo 34 bits) 2 34 / 2 90 = 1 en 2 56 que es aproximadamente la probabilidad de comprar exactamente dos boletos Mega Millions seguidos y ganar el premio mayor ambas veces).