Generador de números pseudoaleatorios criptográficamente seguro

Un generador de números pseudoaleatorios criptográficamente seguro (CSPRNG, del inglés «Cryptographically Secure PseudoRandom Number Generator») es un Generador de números pseudoaleatorios (PRNG) con características que lo hacen adecuado para su uso en criptografía.

Pero, algunas veces —en situaciones prácticas— es necesario mayor cantidad de números aleatorios que la entropía disponible.

La mayoría de los PRNGs no son aptos para ser usados como CSPRNG y pueden fallar en ambos ámbitos.

Pueden encontrarse pruebas estadísticas especializadas —diseñadas específicamente para un cierto PRNG— que evidencian la poca o nula aleatoriedad de los números generados.

Trabaja de la siguiente forma: cada vez que un número aleatorio es requerido: Se ha sugerido que este algoritmo podría ser improvisado usando AES en vez de DES (Young and Yung, op cit, secc 3.5.1) Hay un número de PRNG prácticas que han sido diseñadas para ser criptográficamente seguras, incluyendo: Varios CSPRNG han sido estandarizados.