He comenzado un trabajo que requiere algunos bytes aleatorios de calidad, como 32 a la vez para un vector de inicialización para ciertas aplicaciones criptográficas. Mi problema es que esto puede requerirse varias veces al mismo tiempo y no puedo permitirme bloquear los problemas del bloque /dev/random
para esperar a que haya más recopilación de entropía.¿Un RNG más rápido que/dev/random pero criptográficamente útil?
Podría usarlo para inicializar otros algoritmos, por ejemplo, lo que /dev/urandom
puede hacer; sin embargo, no confío en lo que no puedo entender, no tengo ningún recurso disponible en su método ni sé si sigue siendo el mismo entre muchas versiones de kernel, prefiero un método bien definido de algún tipo.
¿Conoces algún método que se te ocurra sobre los PRNG estándar que serían lo suficientemente adecuados para usar para la generación de claves (simultáneas) y similares?
¿Serían suficientes ciertos cifrados como RC4 con una gran semilla para generar resultados aleatorios? (He visto una implementación de/dev/frandom que usa esto, sin embargo no estoy del todo seguro).
Si esto significa algo, estoy en un servidor Debian sin cabeza, por falta de entropía.
Cuando Yo era estudiante, hace mucho tiempo, KISS PRNG tenía la reputación de ajustarse a sus criterios. Publico esto como un comentario porque no sé si todavía se considera válido. http://gcc.gnu.org/onlinedocs/gfortran/RANDOM_005fNUMBER.html –
Probablemente sea mejor usar algo más: http://fse2011.mat.dtu.dk/rump/KISS%20A%20bit%20too%20Simple.pdf –
Hay alguna discusión (antigua) sobre dev/random | urandom aquí http://lwn.net/Articles/261804/ – nos