6. Pseudo-random Number Generators (Générateurs de nombres pseudo-aléatoires)
6. Pseudo-random Number Generators (Générateurs de nombres pseudo-aléatoires)
Lorsqu'une graine a une entropie suffisante, provenant d'une entrée comme décrit dans la Section 3 et possiblement corrigée du biais et mélangée comme décrit dans les Sections 4 et 5, on peut étendre algorithmiquement cette graine pour produire un grand nombre de quantités aléatoires cryptographiquement fortes. De tels algorithmes sont indépendants de la plateforme et peuvent fonctionner de la même manière sur n'importe quel ordinateur. Pour que les algorithmes soient sécurisés, leur entrée et leur fonctionnement interne doivent être protégés de l'observation adversariale.
La conception de tels algorithmes de génération de nombres pseudo-aléatoires, comme la conception d'algorithmes de chiffrement symétrique, n'est pas une tâche pour les amateurs. La Section 6.1 ci-dessous énumère un certain nombre de mauvaises idées que les algorithmes défaillants ont utilisées. Pour apprendre ce qui fonctionne, sautez la Section 6.1 et lisez simplement le reste de cette section et la Section 7, qui décrit et référence quelques algorithmes standards de génération de nombres pseudo-aléatoires. Voir la Section 7 et la Partie 3 de [X9.82].