dé 6 faces résultat 1
Résultat : 1

Principe de génération aléatoire par un ordinateur et sous Linux.

Le principe de génération aléatoire d'une valeur ou d'un dé par un ordinateur :

La manière la plus simple pour générer des nombres aléatoires est d'utiliser un générateur de nombres pseudo-aléatoires.
Un tel générateur produit des nombres par récurrence avec pour premier nombre une graine ou seed en anglais. Cette graine doit être initialisée par n'importe quel nombre. Elle constitue le premier nombre aléatoire de la série. Ensuite, pour en obtenir un autre, on multiplie ce dernier par une constante a, puis on ajoute une constatnte c au résultat et on en prend le reste de la division euclidienne par une constante m.

Si les constantes a, c et m sont bien choisies, les nombres ainsi produits sont pseudo-aléatoires.
Il est alors possible d'initialiser la graine au temps actuel en secondes, ce qui donne des sorties différentes tant qu'on ne lance pas le programme deux fois dans la même seconde, ou bien on peut également choisir une graine fixe si on veut pouvoir reproduire les résultats.
Ce genre de générateur n'est pas du tout sécurisé, dans le sens où connaissant la séquence de nombres aléatoires produits, il n'est pas impossible de prédire le suivant.

Mais pourquoi vouloir générer des nombres aléatoires "sécurisés" ? Eh bien ceux-ci sont par exemple utilisés pour générer des clés pour communiquer avec des serveurs en chiffrant le trafic, il peut donc être utile de générer une clé qu'un attaquant ne pourra pas prévoir.
C'est pour cela qu'existent les générateurs de nombres pseudo-aléatoires sécurisés pour application cryptographique.

La génération aléatoire et sécurisé et aussi lié aux tables ascii qui jouent un rôle important dans l'encodage des caractères. C'est de cette façon que l'ordinateur interprètent les différents caractères qui composent la chaine aléatoire et sécurisé.

Enfin, pour générer un nombre aléatoire, il peut être préférable d'utiliser des sources d'entropie. L'entropie de Shannon est une mesure de la quantité d'information présente dans un signal.
Elle peut provenir par exemple du trafic réseau, des mouvements de la souris, de l'utilisation du CPU, ou d'un capteur de bruit.

Sous Linux, les fichiers /dev/random et /dev/urandom permettent de générer des nombres aléatoires à base d'entropie collectée sur le système. Le premier bloque la lecture tant qu'il n'y a pas eu assez d'entropie générée sur le système. La lecture du second, en revanche, n'est jamais bloquée, mais la qualité des nombres ainsi générés peut donc être moindre.

Si vous souhaiter en savoir plus sur un générateur de mot de passe en informatique

dé 5 faces dé 7 faces