Zufallserzeugung

Quelle: D. Eastlake (DEC), S. Crocker (Cybercash), J. Schiller (MIT): Randomness Recommendations for Security, Request for Comments 1750, December 1994

Wie kann man »echten« (physikalischen) Zufall am Computer erzeugen?


Anwendungen

Für statistische Anwendungen und Simulationen sind gute algorithmische (= »Pseudo-«) Zufallsgeneratoren meist ausreichend. Für die probabilistische Verschlüsselung reichen eventuell ebenfalls »billige« Zufallszahlen, manchmal sogar ein Zähler. Für die anderen Anwendungen ist das Beste an Zufall gerade gut genug!

Kritik häufig verwendeter Methoden

  1. Systemuhren
  2. Systemereignisse (Zeitpunkt, Dauer, Inhalt)
    1. Benutzer-Ereignisse wie Mausbewegungen und Tastenbetätigung
        
      • Zeiten schwer zugänglich, besonders bei gepufferter Eingabe,.
      • Inhalte oft wenig zufällig.
      [Bei PGP zur Schlüsselerzeugung verwendet.]
    2. Externe Ereignisse wie Ankunft von Netzpaketen oder Systempuffer von Mehrbenutzersystemen
        
      • Könnten vom »Gegner« manipuliert werden.
  3. Auswahl aus großer Datenbasis [z. B. CD (600 M) oder Usenet-News (täglich 40 M)]

[---> Beispiele für Suchräume]


Design-Gesichtspunkte


Geeignete Zufallsquellen

  1. Rauschen (`jitter') auf einem geeigneten Oszillator.
  2. Turbulenzen der Luftströmung um eine rotierende Festplatte. [Don Davis, Ross Ihaka, and Philip Fenstermacher: Cryptographic Randomness from Air Turbulence in Disk Drives, CRYPTO '94, Lecture Notes in Computer Science 839 (1994).]
  3. Auslesen von /dev/audio (auf SPARCstation), cat /dev/audio | compress > random-bits-file [nicht verifiziert]
  4. Rauschen von Videokamera mit abgedeckter Linse.
  5. Radioaktiver Zerfall.

Portable Notlösung: Guter Mix von mehreren Benutzer- und Systemereignissen.


Beispiel &endash; DoD-Empfehlung zur Erzeugung sicherer Paßwörter

The password can then be calculated from the 64 bit `cipher text' generated in 64-bit Output Feedback Mode (DES). (As many bits as are needed can be taken from these 64 bits and expanded into a pronounceable word, phrase, or other format if a human being needs to remember the password.)

[United States of America, Department of Defense, Computer Security Center, Password Management Guideline, CSC-STD-002-85.]


Zusammenfassung

  1. Die existierende Hardware bietet auf vielen Systemen geeignete Zufallsquellen. Diese müssen aber mit Sorgfalt verwendet werden.
  2. Durch geeignete Transformationen können auch aus einer schlechten Zufallsquelle einige gute Zufalls-Bits extrahiert werden.
  3. Das Problem der Systemabhängigkeit kann durch geeignete Auswertung einer umfangreichen Kombination von Systemereignissen gemildert werden.
  4. Vorschlag: Physikalische Zufallsquelle in jedes System integrieren, genormte Schnittstelle anbieten.
  5. Praktische Empfehlung: ca. 100 &endash; 120 Bits physikalisch erzeugen; bei Mehrbedarf expandieren mit Hilfe von perfektem Zufallsgenerator.


Vorlesung Datenschutz und Datensicherheit
Sommersemester 1996, Fachbereich Mathematik
Johannes-Gutenberg-Universität Mainz

Zurück zum Inhaltsverzeichnis


Autor: Klaus Pommerening, 17. Juni 1996; letzte Änderung: 24. September 1996.

E-Mail an Pommerening@imsd.uni-mainz.de.