Cryptography Reference
In-Depth Information
15.1.5
Mischen von Zufallsquellen
Wenn Alice eine möglichst hohe Sicherheit erreichen will, dann bietet es sich für
sie an, verschiedene Zufallsfolgen zu mischen (siehe dazu auch [RFC1750]).
Dazu muss sie eine Funktion ( Mischfunktion ) verwenden, die eine beliebig große
Anzahl an Eingabe-Bits auf eine kurze Bit-Folge abbildet, die sie dann als Zufalls-
zahl verwendet. Die Ausgabe der Mischfunktion muss statistisch gut verteilt sein
und darf insbesondere nur dann zu erraten sein, wenn alle Eingabe-Bits bekannt
sind (wir setzen voraus, dass Mallory die Mischfunktion bekannt ist). Diese
Anforderungen an eine Mischfunktion werden in fast perfekter Weise von einer
(guten) kryptografischen Hashfunktion erfüllt.
Die Generierung sicherer Zufallszahlen mit einer Mischfunktion sieht vor,
dass Alice einen Speicherbereich ( Zufallspool ) mit Zufallszahlen unterschiedli-
cher Herkunft füllt. Diese Zufallszahlen können beispielsweise zu einem Teil von
einem Pseudozufallsgenerator stammen und zu einem anderen Teil von irgend-
welchen Hardwaremessgrößen. Als weitere Quelle kann Alice Daten aus einem
Speicherbereich verwenden, auf den das Betriebssystem häufig zugreift und der
sich daher oft und unvorhersehbar ändert. Schließlich kann sie noch die Uhrzeit,
eine Tastatureingabe und einen geheimen Schlüssel verwenden, um den Zufalls-
pool aufzufüllen. Zuletzt bildet Alice den Zufallspool mit einer kryptografischen
Hashfunktion als Mischfunktion auf eine kürzere Bit-Kette ab. Wenn Mallory
diese Zufallszahl erraten will, dann muss er den gesamten Inhalt des Zufallspools
erraten.
Zufallspool
Pseudo-ZZG
Zeit
Ausgabe-
wert
Compiler-
ZZG
Hashwert
Speicher-
bereich
Schlüssel
Abb. 15-2
Das Mischen von Zufallszahlen unterschiedlicher Herkunft mit einer Hashfunktion gilt als
gute Methode zur Generierung von Zufallsfolgen.
Search WWH ::




Custom Search