Was ist die korrekte verfügbare Entropie auf UNIX-Systemen?

12

Ich habe drei Fragen zur Entropie auf UNIX-Systemen:

  1. Ich überprüfe Entropie unter Linux mit: cat /proc/sys/kernel/random/entropy_avail. Ist dies der Standardort mit Informationen über die in POSIX definierte verfügbare Entropie?
  2. Mit welcher richtigen Verfügbarkeit sollte ich rechnen? Ich habe gehört, dass die Entropie gleich oder größer als 100 sein sollte und dass es ein Problem geben kann, wenn die Entropie konstant unter 100 liegt.
  3. Wird diese Entropie von benutzt /dev/randomoder hat sie auch etwas damit zu tun /dev/urandom?
syntagma
quelle

Antworten:

9

/dev/randomist nicht standardisiert. POSIX bietet keine Möglichkeit, kryptografisch sichere Zufallsdaten zu generieren, und hat keine Vorstellung von Entropie.

Die Entropieberechnung des Linux-Kernels entspricht einem informationstheoretischen Entropiemodell, das für die Praxis nicht relevant ist. Der einzige Fall, in dem dies relevant ist, betrifft ein neues Gerät, das nie Zeit hatte, Entropie anzusammeln (dies schließt Live-Verteilungen ein; installierte Systeme speichern ihre Entropie von einem Start zum nächsten). Abgesehen von dieser Situation gibt es immer genug Entropie, weil die Entropie nicht abnimmt. Da Linux /dev/randomblockiert, wenn es denkt, dass es nicht genug Entropie hat, verwenden Sie /dev/urandom, was niemals blockiert. Die Verwendung /dev/urandomist für alle Zwecke geeignet, einschließlich der Generierung von kryptografischen Schlüsseln (außer, wie oben erwähnt, für ein neu erstelltes Gerät).

In Summe:

  1. Nein, das ist kein Standard.
  2. Es ist dir egal.
  3. Verwenden Sie/dev/urandom .

Viele, aber nicht alle Unix-Systeme haben /dev/urandomund /dev/random. Weitere Informationen finden Sie auf der Wikipedia-Seite .

Gilles 'SO - hör auf böse zu sein'
quelle