Je m'intéresse à la génération de nombres pseudo-aléatoires pour la cryptographie. Outre le chapitre 5 de Menezes / Oorschot / Vanstone ; Chapitre 8 de Stinson ; et le chapitre 3 de Goldreich , où pourrais-je trouver plus? Je m'intéresse aux principes généraux de conception des PRNG (propriétés souhaitables, tests, etc.).
15
Réponses:
Vous voudrez peut-être vérifier
la source
Si vous songez à implémenter vos idées, il existe une batterie standard de tests pour les implémentations PRNG. Ces tests (DIEHARD et successeur DIEHARDER) peuvent être téléchargés à partir de sa page Web archivée et http://www.phy.duke.edu/~rgb/General/dieharder.php respectivement.
la source
Êtes-vous intéressé à mettre en œuvre un PRNG? Si c'est le cas, votre meilleur pari n'est pas d'en concevoir un vous-même, mais simplement d'en utiliser un standard. / dev / urandom est la bonne réponse sur la plupart des plateformes. Si / dev / urandom n'existe pas, générer une clé AES aléatoire avec / dev / random puis exécuter le mode AES-CTR pour générer de nombreux nombres pseudo-aléatoires est une autre approche raisonnable.
Je vous recommande de lire Cryptography Engineering, de Ferguson, Schneier et Kohno. C'est un livre excellent. Il vous apprendra beaucoup sur la façon de concevoir et de construire de vrais cryptosystèmes.
Si vous devez réellement construire un système qui sera déployé dans la pratique, je vous recommande de ne pas prendre vos conseils de la communauté théorique CS, mais plutôt de la communauté des praticiens et des chercheurs orientés vers la pratique. Une grande partie du travail théorique du CS ne sera pas très pertinent, voire potentiellement trompeur, pour la mise en œuvre pratique d'un PRNG sécurisé. Je vous encourage également à consulter l'échange de pile de sécurité informatique pour ce type de questions.
la source