Zufallszahl: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 11: Zeile 11:
== Ausfall von Zufallszahlengeneratoren ==
== Ausfall von Zufallszahlengeneratoren ==
[[File:randomNumberGenerators.png|mini|400px]]
[[File:randomNumberGenerators.png|mini|400px]]
; Zufallszahlengeneratoren können versagen
Wenn nicht genügend Entropie vorhanden ist
* Liefern sie vorhersehbare, nicht zufällige Zahlen aus
* Dies tritt typischerweise bei eingebetteten Geräten und virtuellen Maschinen auf


; Eingebetteten Geräten fehlen einige Entropiequellen, die andere Geräte haben
; Versagen von Zufallszahlengeneratoren
Nicht genügend Entropie vorhanden
* Liefern sie vorhersehbare, nicht zufällige Zahlen
* Insbesondere bei eingebetteten Geräten und virtuellen Maschinen
 
; Eingebetteten Geräten fehlen einige Entropiequellen
: die andere Geräte haben
Keine permanente Uhr
Keine permanente Uhr
* Boot-Zeit trägt nicht zum anfänglichen RNG-Status bei
* Boot-Zeit trägt nicht zum anfänglichen RNG-Status bei

Version vom 19. Januar 2023, 23:19 Uhr

Zufallszahlengeneratoren

Gute Quelle für Zufallszahlen
Eine gute Quelle für Zufallszahlen ist für viele Kryptooperationen unerlässlich
  • Das Hauptmerkmal eines guten Zufallszahlengenerators ist die Unvorhersehbarkeit der erzeugten Zahlen
  • Dies bedeutet, dass Hardware-Unterstützung für die Erzeugung von Entropie unerlässlich ist
Hardware-Zufallszahlengeneratoren
  • Hardware-Zufallszahlengeneratoren in Betriebssystemen oder eigenständigen Komponenten sammeln Entropie aus verschiedenen Zufallsereignissen, indem sie meist die (niedrigen Bits des) Zeitpunkts des Auftretens eines Ereignisses als Entropiequelle verwenden.
  • Die Entropie wird in einem Entropie-Pool zusammengeführt, und in einigen Implementierungen wird die Anzahl der verfügbaren Zufallsbits in einem Buch geführt

Ausfall von Zufallszahlengeneratoren

Versagen von Zufallszahlengeneratoren

Nicht genügend Entropie vorhanden

  • Liefern sie vorhersehbare, nicht zufällige Zahlen
  • Insbesondere bei eingebetteten Geräten und virtuellen Maschinen
Eingebetteten Geräten fehlen einige Entropiequellen
die andere Geräte haben

Keine permanente Uhr

  • Boot-Zeit trägt nicht zum anfänglichen RNG-Status bei

Keine Festplatte

  • Keine Entropie aus dem Festplattentiming
  • Keine Möglichkeit, Entropie zwischen Neustarts zu speichern

Virtuelle Maschinen

Virtuelle Maschinen emulieren einige Hardwarekomponenten
  • so dass die erzeugte Entropie überschätzt wird.
Zeitquelle
  • Die kritischste Komponente, die in einer emulierten Umgebung nachweislich falsche Ergebnisse liefert, ist die Zeitquelle. (Engblom, 2011).
Die anfälligste Zeit, in der Situationen mit geringer Entropie auftreten, ist in der Regel kurz nach einem Neustart
Weiteres Problem
  • OpenSSL seinen internen Zufallsgenerator nur selten vom Hardware-Zufallszahlengenerator des Betriebssystems seeden lässt.
  • Dies kann dazu führen, dass ein Daemon, der zu einem Zeitpunkt gestartet wird, an dem die Entropie niedrig ist, diese niedrige Entropie über Stunden beibehält, was zu vorhersehbaren Sitzungsschlüsseln führt.
  • Heninger, Durumeric, Wustrow, & Halderman, 2012
Für Systeme, bei denen während der Lebensdauer der Schlüssel mit Situationen geringer Entropie zu rechnen ist, sollten RSA-Schlüssel gegenüber DSA-Schlüsseln bevorzugt werden
  • Bei DSA kann es zu wiederholten ephemeren Schlüsseln kommen, wenn die Entropie zu dem Zeitpunkt, zu dem die Schlüssel zum Signieren verwendet werden, unzureichend ist.
  • Ein Angreifer, der einen in einer solchen Signatur verwendeten ephemeren privaten Schlüssel erraten kann, kann den geheimen DSA-Schlüssel kompromittieren.
  • Bei RSA kann dies zur Entdeckung von verschlüsseltem Klartext oder gefälschten Signaturen führen, nicht aber zur Kompromittierung des geheimen Schlüssels.
  • Heninger, Durumeric, Wustrow, & Halderman, 2012