Navigation und Service

Analyse der Zufallszahlenerzeugung in Browsern

Die durch das BSI in Auftrag gegebene Studie zur Zufallszahlenerzeugung in Webbrowsern beschreibt und untersucht die Zufallszahlengeneratoren, welche von den Browsern Firefox, Chromium und Safari (unter der Annahme, dass Safari die Corecrypto-Bibliothek verwendet) für kryptographische Anwendungen verwendet werden. Gute Zufallszahlen sind unter anderem eine Vorraussetzung für den Aufbau sicherer Verbindungen im Internet. 

Der Fokus der Studie liegt auf der Untersuchung des algorithmischen Teils der Zufallszahlengeneratoren. Die gesamte Implementierung der Zufallszahlengeneratoren wird detailliert erläutert, damit ein vollständiges Verständniss des Informationsflusses ermöglicht wird. Die Beschreibung beginnt an dem Punkt, wo Zufallsdaten, welche die jeweilige Plattform bereitstellt (sog. "Entropie"), gesammelt werden und endet mit der Zurückgabe der Zufallszahlen durch den Zufallszahlengenerator des Browsers. Jede der Entropiequellen, die die Zufallszahlengeneratoren mit Entropie versorgen, wird soweit beschrieben, dass die verwendete Schnittstelle geklärt ist. Anschließend wird untersucht, ob die Anforderungen an gute Zufallszahlen aus der AIS 20/31 erfüllt sind.

Die Analyse konzentriert sich auf alle Anwendungsfälle, in denen Zufallszahlen für kryptographische Anwendungen verwendet werden, entweder als Teil des TLS- oder des QUIC-Netzwerkprotokolls oder zusammen mit der WebCrypto API. Auch der WebRTC-Stack mit DTLS-SRTP wird abgedeckt. Die Studie adressiert somit alle Laufzeit-Anwendungen der Zufallszahlenerzeugung der Browser.

Das Dokument enthält die Analyse der Zufallszahlengeneratoren, welche in Chromium (Version 122.0.6168.2), Firefox (Version 120.0) und Safari (unter der Annahme, dass Corecrypto 2022 verwendet wird) verwendet werden. 

Die Studie wurde in englischer Sprache verfasst, da die Zielgruppe in erster Linie die internationale IT-Sicherheits-Community ist. Die Studie steht auch im Kontext englischsprachiger Publikationen zu diesem Thema.

Analysis of Random Number Generation in Browsers