Quelle est l'entropie disponible correcte sur les systèmes UNIX?

12

J'ai trois questions liées à l'entropie sur les systèmes UNIX:

  1. Je vérifie l' entropie sous Linux avec: cat /proc/sys/kernel/random/entropy_avail. Est-ce l'endroit standard avec des informations sur l'entropie disponible définies dans POSIX?
  2. Quelle est la version correcte à laquelle je dois m'attendre? J'ai entendu dire que l'entropie doit être égale ou supérieure à 100 et qu'il peut y avoir un problème si l'entropie est constamment inférieure à 100.
  3. Cette entropie est-elle utilisée par /dev/randomou a-t-elle aussi quelque chose à voir avec /dev/urandom?
syntagme
la source

Réponses:

9

/dev/randomn'est pas normalisé. POSIX ne fournit aucun moyen de générer des données aléatoires cryptographiquement sécurisées et n'a aucune notion d'entropie.

Le calcul d'entropie du noyau Linux correspond à un modèle d'entropie théorique de l'information qui n'est pas pertinent pour une utilisation pratique. Le seul cas où cela est pertinent concerne un nouvel appareil qui n'a jamais eu le temps d'accumuler l'entropie (cela inclut les distributions en direct; les systèmes installés enregistrent leur entropie d'un démarrage à l'autre). En dehors de cette situation, il y a toujours assez d'entropie, car l'entropie ne s'épuise pas. Puisque Linux /dev/randombloque quand il pense qu'il n'a pas assez d'entropie, utilisez /dev/urandom, qui ne bloque jamais. L'utilisation /dev/urandomest bonne pour tout, y compris la génération de clés cryptographiques (sauf, comme mentionné ci-dessus, sur un appareil fraîchement fabriqué).

En résumé:

  1. Non, ce n'est pas standard.
  2. Tu t'en fous.
  3. Utilisez/dev/urandom .

De nombreux systèmes Unix, mais pas tous, ont /dev/urandomet /dev/random. Voir la page Wikipedia pour une discussion plus détaillée.

Gilles 'SO- arrête d'être méchant'
la source