FIPS-PUB-140-1 Test-Batterie (Menü Analyse \ Zufallsanalyse)

Bei Aufruf dieses Menüeintrags öffnet sich der Dialog FIPS-PUB-140-1-Testbatterie.

Hiermit kann ein standardisierter Zufallszahlentest, der eine Kombination (battery) von 4 Einzeltests darstellt, durchgeführt werden. FIPS-PUB-140-1 untersucht genau 2500 Bytes. Kürzere Dokumente werden gar nicht untersucht; bei längeren werden genau die ersten 2500 Bytes untersucht.

FIPS PUB 140-1 spezifiziert Sicherheitsanforderungen für den Entwurf und die Implementierung von kryptographischen Modulen, u.a. auch von Pseudozufallsgeneratoren. Für Pseudozufallsgeneratoren werden vier statistische Test - Verfahren vorgeschlagen, anhand derer einfach die Ausgabe eines Pseudozufallsgenerators auf Zufälligkeit geprüft werden kann. Dabei wird dem Anwender die Wahl eines entsprechenden Signifikanzniveaus abgenommen und konkrete Grenzwerte für die einzelnen Teststatistiken angegeben. Für Anwendungen im Hochsicherheitsbereich empfehlen die Autoren von FIPS PUB-140-1, nach jedem Neustart eines Zufallsbitgenerators die vier statistischen Tests durchzuführen.

Eine 20000-Bit Binärfolge, die von einem Pseudozufallsgenerator erzeugt wurde, wird vier statistischen Tests unterzogen. Wenn die Sequenz auch nur bei einem Test durchfällt, so besteht der Generator den Test nicht. Die folgenden Tests sind durchzuführen:

Mono-Bit-Test

Die Anzahl der Einsen in s sollte zwischen 9654 und 10346 liegen.

Poker-Test

Die Teststatistik X3 (vgl. Abschnitt 3.3.3) wird für m = 4 (Tupelgröße) berechnet. Der Poker-Test wird bestanden, wenn gilt: 1.03 < X3 < 57.4.

Run-Test

Die Anzahl Bi bzw. Gi der Blöcke bzw. Lücken der Länge i in s werden für alle i; 1 <= i <= 6 gezählt. Längere Runs werden als Runs der Länge 6 angesehen. Der Test wird bestanden, wenn die ermittelten Werte Bi ;Gi ; 1 <= i <= 6 in den entsprechenden, spezifizierten Intervallen liegen. Unterliegende Tabelle listet diese Intervalle auf.

Länge der Runs Gültiges Intervall
1 2267 – 2733
2 1079 – 1421
3 502 – 748
4 223 – 402
5 90 – 223
>= 6 90 – 223

Long Run-Test

Dieser Test wird bestanden, wenn es keine Runs der Länge 34 oder mehr gibt.


Literatur: Christian Schiestl, Pseudozufallszahlen in der Kryptographie, Klagenfurt, 1999.