La respuesta corta es 0, porque la entropía no se consume.
Existe una idea errónea común de que la entropía se consume:que cada vez que lee un bit aleatorio, esto elimina algo de entropía de la fuente aleatoria. Esto está mal. No “consume” entropía. Sí, la documentación de Linux se equivoca.
Durante el ciclo de vida de un sistema Linux, hay dos etapas:
- Al principio, no hay suficiente entropía.
/dev/random
bloqueará hasta que crea que ha acumulado suficiente entropía;/dev/urandom
felizmente proporciona datos de baja entropía. - Después de un tiempo, hay suficiente entropía en el grupo de generadores aleatorios.
/dev/random
asigna una tasa falsa de "puerro de entropía" y bloquea de vez en cuando;/dev/urandom
felizmente proporciona datos aleatorios de calidad criptográfica.
FreeBSD lo hace bien:en FreeBSD, /dev/random
(o /dev/urandom
, que es lo mismo) se bloquea si no tiene suficiente entropía y, una vez que la tiene, sigue arrojando datos aleatorios. En Linux, ni /dev/random
ni /dev/urandom
es lo útil.
En la práctica, use /dev/urandom
, y asegúrese de que, cuando aprovisione su sistema, se alimente el grupo de entropía (desde el disco, la red y la actividad del mouse, desde una fuente de hardware, desde una máquina externa, …).
Si bien podría intentar leer cuántos bytes se leen desde /dev/urandom
, esto es completamente inútil. Lectura desde /dev/urandom
no agota el fondo de entropía. Cada consumidor usa 0 bits de entropía por cualquier unidad de tiempo que quieras nombrar.