He estado regalando pequeños mazos de cartas con el siguiente reportaje desde 2007. Pensé que era hora de hacer públicamente y libremente disponibles para su uso no comercial. Esta presentación, así como un documento de Microsoft Word que se imprimirá en Avery 5877 tarjeta de presentación stock son revisados en mi proyecto en GitHub
Cualquiera que considere métodos aritméticos para producir números aleatorios es, por supuesto, en un estado de pecado
-. John von Neumann 1951
Las tarjetas son mucho más lentos que PRNGs, sino una la cubierta se puede arrastrando los pies de una manera tal que nadie puede predecir el orden. Este mazo contiene 52 cartas (26 en mayúscula y 26 inferiores), 10 números (0-9), y otros 33 símbolos para un total de 95 cartas. Fue diseñado para crear contraseñas realmente aleatorios, claves y otros tokens de seguridad para su uso con ordenadores.
Instrucciones
Recuerde que debe mantener sus claves electrónicamente cifrado y / o físicamente seguro. Recuerde que los 32 símbolos de esta cubierta pueden causar problemas en ciertos contextos (el * en el símbolo del sistema, por ejemplo), así que asegúrese de codificar o descartar los caracteres que podrían ser un problema para su aplicación.
Bits de la Entropía
Uso de los caracteres ASCII estándar 95 impreso en estas tarjetas, hay 10.148 posibles ordenaciones de cubierta (que es 492 bits de precisión). Por revolver cada pocos caracteres, cualquier nivel deseado de la entropía se puede lograr. Hay 79 bits de entropía en una clave de 12 caracteres (que es 5,40 × 1023 claves posibles) que es cerca de 33.000 veces la precisión del valor de 64 bits más teóricamente al azar una computadora, posiblemente, podría generar. Incluso una clave de 5 caracteres tiene 7,73 × 109 valores posibles, que es casi el doble de la precisión de un número de 32 bits.
secretos sucios de PRNGs
«Garantizamos que cada número es al azar individualmente, pero no podemos garantizar que más de uno de ellos es al azar. » Darse cuenta de eso
-. Press, William H., et al. 1992 refiriéndose a RANDU
Hay sólo 8,64 × 107 milisegundos en un día. Eso es alrededor de 26 bits de entropía. Sin barajar, puede tratar usted mismo una llave más fuerte en tan sólo 5 cartas! Así que ¿por qué no utilizar un marco de tiempo más largo? Hay 3,1 × 1011 milisegundos en 10 años, que es sólo 38 bits de entropía – y que tiene una contraseña de más de 10 años? La mayoría de las personas generan sus claves en el trabajo, en el horario de 9-5 MF, que es sólo una cuarta parte de las horas en la semana, por lo que podrían estar perdiendo cerca de 2 bits de entropía allí.
Así que incluso si usted tener un generador de números aleatorios de 64 bits, a menos que usted puede obtener una semilla con más de 36 bits de entropía, que sólo recibe 36 bits de entropía en su clave. Ese es el mismo número de dígitos significativos en una clave de 6 caracteres verdaderamente aleatoria (956). ¿Cuántos dígitos significativos de la aleatoriedad no genera ningún equipo clave de cifrado contiene? No más de los dígitos significativos de entropía utilizados para crearlo veces el número de algoritmos PRNG que podría haber sido utilizado. En el año 2008, que a menudo significa que el tiempo y el ID del proceso (un número por lo general entre 1 y 32767) combinado que produce 9.9 × 1.015 posibles combinaciones o 54 bits de entropía. Si los identificadores de proceso fueron verdaderamente aleatorios (no lo son), se puede tratar a ti mismo más entropía en 9 tarjetas de estado de los arte generadores automáticos de contraseña en los sistemas operativos de consumo puede generar. PRNGs que aceptan ratón o entrada de teclado, PRNGs de hardware, y los demonios de entropía de recolección son mejoras significativas, pero sin un análisis exhaustivo, es difícil juzgar su efectividad real. Jugando a las cartas han estado generando entropía fiable desde que se inventaron en China del siglo 12 Análisis:.. Barajar Cada tarjeta h2>
Los números aleatorios no se deben generar con un método elegido al azar
– Donald E. Knuth
Los números aleatorios no se deben generar con un método elegido al azar
– Donald E. Knuth
- n : la longitud de la clave
- 95 n : El número de posibles llaves de la longitud dada ( n ). Se permiten caracteres repetidos
- log2 (95 n ):. Se trata de un valor aproximado correspondiente al número más cercano de bits de entropía
- abertura: El el tiempo que un procesador de 3GHz tomaría fuerza bruta genera la mitad de las llaves de esta longitud. La mayoría de los algoritmos de cifrado se desacelerará este reducido significativamente, pero las galletas graves utilizarían mucho más caballos de fuerza. . YMMV
- Números importantes:. ejemplos del mundo real con la misma magnitud que el número de claves posibles
n | 95n | log2(95n) | Crack | Relevant números |
---|---|---|---|---|
1 | 95 | 7 | 0 | 2 | 9025 | 13 | 5 ms. | 3 | 857375 | 20 | ½ seg. | 4 | 81450625 | 26 | 15 seg. | Número de milisegundos en un día. | 5 | 7,73 × 109 | 33 | 30 min | Número de milisegundos en 4 meses. | 6 | 7,35 × 1011 | 39 | 2 días | Billones (125 Gigabytes). Número de milisegundos en 20 años. | 7 | 6,98 × 1013 | 46 | 1 año | 8 | 6,63 × 1015 | 53 | 70 años | 256 La longitud de clave original para el cifrado DES. | 9 | 6,30 × 1017 | 59 | 7000 años | quintillones. La edad del universo en cuestión de segundos. | 10 | 5,98 × 1019 | 66 | 600.000 años | 11 | 5,68 × 1021 | 72 | Número de estrellas en el universo | 12 | 5,40 × 1023 | 79 | septillones. Número de Avogadro – el número de átomos en 12 gramos de carbono-12 | 13 | 5,13 × 1025 | 85 | 14 | 4,87 × 1027 | 92 | 15 | 4,63 × 1029 | 99 | 16 | 4,40 × 1031 | 105 | 17 | 4,18 × 1033 | 112 | 18 | 3,97 × 1035 | 118 | 19 | 3,77 × 1037 | 125 |
20 | 3,58 × 1039 | 131 |
Análisis: Sin Arrastrar los pies
n | # combinations | log2(95n) | Formula |
---|---|---|---|
1 | 95 | 7 | 95 |
2 | 8,930 | 13 | 95×94 |
3 | 830,490 | 20 | 95×94×93 |
4 | 76,405,080 | 26 | 95×94×93×92 |
5 | 6.95×109 | 33 | 95×94×93×92×91 |
6 | 6.26×1011 | 39 | 95×94×93×92×91×90 |
7 | 5.57×1013 | 46 | 95×94×93×92×91×90×89 |
8 | 4.90×1015 | 52 | 95×94×93×92×91×90×89×88 |
9 | 4.26×1017 | 59 | 95×94×93×92×91×90×89×88×87 |
10 | 3.67×1019 | 65 | 95×94×93×92×91×90×89×88×87×86 |
11 | 3.12×1021 | 71 | 95×94×93×92×91×90×89×88×87×86×85 |
12 | 2.62×1023 | 78 | 95×94×93×92×91×90×89×88×87×86×85×84 |
13 | 2.17×1025 | 84 | 95×94×93×92×91×90×89×88×87×86×85×84×83 |
14 | 1.78×1027 | 91 | 95×94×93×92×91×90×89×88×87×86×85×84×83×82 |
15 | 1.44×1029 | 97 | 95×94×93×92×91×90×89×88×87×86×85×84×83×82×81 |
16 | 1.15×1031 | 103 | 95×94×93×92×91×90×89×88×87×86×85×84×83×82…×80 |
17 | 9.12×1032 | 109 | 95×94×93×92×91×90×89×88×87×86×85×84×83×82…×79 |
18 | 7.12×1034 | 116 | 95×94×93×92×91×90×89×88×87×86×85×84×83×82…×78 |
19 | 5.48×1036 | 122 | 95×94×93×92×91×90×89×88×87×86×85×84×83×82…×77 |
20 | 4.16×1038 | 128 | 95×94×93×92×91×90×89×88×87×86×85×84×83×82…×76 |
El beneficio de la adición de caracteres sin barajar cae drásticamente como el número de caracteres se acerca a 94. Por ejemplo:
- Por el carácter noveno, pierdes un poco de precisión (media tantas combinaciones sin arrastrar los pies como lo haría con el barajado). Esto no debe hacer una diferencia para la mayoría de aplicaciones.
- Por el carácter 15a tiene alrededor de ¼ tantas combinaciones (2 bits). Pero ¼ de un número realmente grande es todavía un número realmente grande.
- Por el carácter 18a, 3 bits de precisión se pierden (octavo las combinaciones).
- Por la 32 ª carácter, al menos uno más bits de precisión se pierde por cada personaje adicional (sólo hay 64 o 26 caracteres dejó proporcionando 6 bits de entropía en lugar de 7)
- El carácter 80a proporciona sólo 4 bits de entropía ( hay 16 personajes que quedan en paradero desconocido)
- El carácter 94a proporciona sólo 1 bit de la entropía (sólo 2 posibilidades)
- El carácter 95a no proporciona entropía adicional (la única tarjeta de la izquierda es totalmente determinado por el 94 que había antes de él).