GNU/Linux >> Tutoriels Linux >  >> Linux

Comment déterminer quels processus utilisent la quantité d'entropie de /dev/urandom

La réponse courte est 0, car l'entropie n'est pas consommée.

Il y a une idée fausse commune selon laquelle l'entropie est consommée - que chaque fois que vous lisez un bit aléatoire, cela supprime une certaine entropie de la source aléatoire. C'est faux. Vous ne "consommez" pas d'entropie. Oui, la documentation Linux se trompe.

Au cours du cycle de vie d'un système Linux, il y a deux étapes :

  1. Au départ, il n'y a pas assez d'entropie. /dev/random bloquera jusqu'à ce qu'il pense avoir accumulé suffisamment d'entropie ; /dev/urandom fournit volontiers des données à faible entropie.
  2. Après un certain temps, suffisamment d'entropie est présente dans le groupe de générateurs aléatoires. /dev/random attribue un faux taux de "poireau d'entropie" et bloque de temps en temps ; /dev/urandom fournit avec plaisir des données aléatoires de qualité cryptographique.

FreeBSD a raison :sur FreeBSD, /dev/random (ou /dev/urandom , ce qui revient au même) se bloque s'il n'a pas assez d'entropie, et une fois que c'est le cas, il continue de cracher des données aléatoires. Sous Linux, ni /dev/random ni /dev/urandom est la chose utile.

En pratique, utilisez /dev/urandom , et assurez-vous lorsque vous provisionnez votre système que le pool d'entropie est alimenté (à partir de l'activité du disque, du réseau et de la souris, à partir d'une source matérielle, à partir d'une machine externe, …).

Bien que vous puissiez essayer de lire combien d'octets sont lus à partir de /dev/urandom , c'est totalement inutile. Lecture depuis /dev/urandom n'épuise pas le pool d'entropie. Chaque consommateur utilise jusqu'à 0 bit d'entropie par unité de temps que vous voulez nommer.


Linux
  1. Comment générer un mot de passe aléatoire sous Linux en utilisant /dev/random

  2. Linux :Différence entre /dev/console , /dev/tty et /dev/tty0 ?

  3. Quelle est la portabilité de /dev/stdin, /dev/stdout et /dev/stderr ?

  4. Quand utiliser /dev/random contre /dev/urandom ?

  5. Comment remplir un fichier avec un flux de /dev/urandom avec un nombre de lignes spécifié ?

Comment encoder en base64 /dev/random ou /dev/urandom ?

Quand dois-je utiliser /dev/shm/ et quand dois-je utiliser /tmp/?

DD de /dev/zero à /dev/null...ce qui se passe réellement

Linux :Différence entre /dev/console , /dev/tty et /dev/tty0

echo ou print /dev/stdin /dev/stdout /dev/stderr

Pourquoi < ou > sont-ils nécessaires pour utiliser /dev/tcp