Principio de generación aleatoria por una computadora y Linux
El principio de la generación aleatoria de un valor o un dado por una computadora :
La forma más fácil de generar números aleatorios es usar un generador de números pseudoaleatorios.
Tal generador produce números por recurrencia, siendo el primer número una semilla en inglés. Esta semilla debe ser inicializada por cualquier número.
Es el primer número aleatorio de la serie. Luego, para obtener otro, multiplicamos el último por una constante a,
luego agregamos un resultado c al resultado y tomamos el resto de la división euclidiana por una constante m.
Si las constantes a, c y m están bien elegidas, los números así producidos son pseudoaleatorios.
Entonces es posible inicializar la semilla en el momento actual en segundos, lo que da diferentes resultados siempre que no inicie el programa dos veces en el mismo segundo, o también puede elegir una semilla fija si desea poder reproducir los resultados.
Este tipo de generador no es del todo seguro, en el sentido de que conociendo la secuencia de números aleatorios producidos, no es imposible predecir el siguiente.
Pero, ¿por qué quieres generar números aleatorios "seguros"? Bueno, estos se utilizan, por ejemplo, para generar claves para comunicarse con los servidores mediante el cifrado del tráfico, por lo que puede ser útil generar una clave que un atacante no puede predecir.
Es por eso que hay generadores de números pseudoaleatorios asegurados para aplicaciones criptográficas.
Finalmente, para generar un número aleatorio, puede ser preferible usar fuentes de entropía. La entropía de Shannon es una medida de la cantidad de información presente en una señal.
Puede provenir, por ejemplo, del tráfico de red, movimientos del mouse, uso de CPU o un sensor de ruido.
En Linux, los archivos /dev /random y /dev /urandom se usan para generar números aleatorios basados en la entropía recopilada en el sistema. Los primeros bloques se leen hasta que se haya generado suficiente entropía en el sistema. Leer el segundo, por otro lado, nunca está bloqueado, pero la calidad de los números así generados puede ser menor.
Si desea saber más acerca de un generador de contraseñas : https://www.motsdepasses.com en TI