Es ist wichtig, dass die verwendeten Zufallszahlen nicht vorhersagbar sind. Solche Zufallszahlen zu erzeugen, fällt Computern naturgemäß schwer. Zahlreiche Meldungen kritisieren Lücken, Schwächen und Manipulationen bei der Erzeugung von Zufallszahlen für kryptografische Verfahren.
Bei allen Meldungen geht es nicht um spezielle, bedeutungslose Applikationen, sondern um millionenfach installierte Standardprogramme in professionellen Anwendungen. Vor allem dort, wo kontinuierlich viele Zufallszahlen benötigt werden (Netzwerke, Kommunikationssysteme), sind Angriffe auf schwache Zufallsgeneratoren am erfolgreichsten.
Nach dem Kerckhoff-Prinzip (die Sicherheit soll nur auf der Geheimhaltung des Schlüssels beruhen, nicht auf der Geheimhaltung des kryptographischen Algorithmus) benötigt jede Art von Verschlüsselung eine geheime Komponente, die unter keinen Umständen vorhersagbar oder rekonstruierbar sein darf: der aus Zufallszahlen gebildete Schlüssel. Diese Zufallszahlen werden in den bekannten IT-Sicherheitsapplikationen aus Pseudozufallszahlen gebildet. Quelle der Generierung von Pseudozufall ist ein so genannter Seed (ein Startwert, bestehend aus Passwort, Timer-Register, Tastaturanschlägen, Mausbewegungen usw.), mit dem ein mathematisch-kryptografischer Algorithmus eine statistisch gut verteilte Zufallsfolge erzeugt. Aber die gesamte Sicherheit der per Pseudozufall erzeugten geheimen Schlüssel hängt ausschließlich von dieser Anfangsinitialisierung ab. Die Anfangsinitialisierung ist bei richtiger Wahl der Quelle der einzige wirklich zufällige Parameter, alles Weitere ist deterministisch und somit berechenbar. Eine schwache Anfangsinitialisierung (trivialer Seed) ist im statistischen Ergebnis nicht erkennbar, aber ein effizienter Angriffspunkt der Kryptoanalyse.
Auch professionelle Entwickler nutzen als Seed für Pseudozufall oftmals das Timerregister in der Annahme: wer will denn schon wissen, in welcher Sekunde das Register ausgelesen wurde. Für einen Angreifer kein Problem, denn ein Jahr hat ca. 32 Millionen Sekunden. Und um diese mit der totalen Probiermethode (brute force) durchzutesten, benötigt man nur eine durchschnittliche Rechenleistung. Wird der gleiche Seed mehrfach verwendet, entstehen schlüsselgleiche Geheimtexte. Ein sicherer Erfolg der Kryptoanalyse.
Das IBB verfügt über langjährige Erfahrungen auf den Gebieten der Erzeugung von Rauschsignalen, deren Digitalisierung, Überwachung und kryptografischen Nachbearbeitung sowie der Analyse generierter Zufallszahlen. Für die Erzeugung von Rauschsignalen und deren Digitalisierung wurde ein EU-Patent 2006 erteilt.
Alle angebotenen Zufallsgeneratoren des IBB entsprechen den Forderungen der AIS31-Normen und der Klasse PTG.3 aus dem Algorithmenkatalog 2016 der Bundesnetzagentur. Bestandteile der Funktionalität aller Applikationen sind Sicherheitseigenschaften und Überwachungsfunktionen die garantieren, dass der Anwender keine eigenen Kontrollen in seine Anwendungen implementieren muss. Werden Fehler im Zufallsgenerator detektiert, wird die Zufallsausgabe sofort eingestellt und eine Fehlermeldung generiert bzw. solange weiter getestet, bis sich alle Parameter wieder im vorgegebenen Bereich befinden.
Alle vorgestellten Zufallsgeneratoren sind professionelle Applikationen für die Generierung kryptografisch sicherer Zufallszahlen. Es werden explizit keine Pseudo-Zufallsgeneratoren angeboten oder derartige Verfahren verwendet.
Nach dem Kerckhoff-Prinzip (die Sicherheit soll nur auf der Geheimhaltung des Schlüssels beruhen, nicht auf der Geheimhaltung des kryptographischen Algorithmus) benötigt jede Art von Verschlüsselung eine geheime Komponente, die unter keinen Umständen vorhersagbar oder rekonstruierbar sein darf: der aus Zufallszahlen gebildete Schlüssel. In IT-Sicherheitsapplikationen werden die geheimen Schlüssel mittels Zufallsgeneratoren erzeugt. Schwächen verwendeter Zufallsgeneratoren, vor allem in professionellen IT-Sicherheitsapplikationen, sind in Publikationen vielfältig illustriert. In Deutschland hat die Regulierungsbehörde für IT-Sicherheit (Bundesnetzagentur BNetzA) verbindliche Vorgaben über die Verwendung von Zufallsgeneratoren der Funktionalitätsklassen PTG.3 und DRG.4 in IT-Sicherheitsapplikationen festgelegt.
Moderne Server in zentralen Rechenzentren benötigen für die verschlüsselte Kommunikation eine ständig steigende Anzahl kryptografisch sichere Zufallszahlen. Zwar stehen dafür spezielle Chips auf den Mainboards zur Verfügung, diese stehen aber in der Kritik, die benötigten Schlüssel zu schwächen. Beispiele:
Unter Linux und anderen professionellen Betriebssystemen gibt es immer wieder Probleme mit der Bereitstellung von Zufall im Entropie-Pool. Besonders kritisch wird die Situation, wenn keine Eingabegeräte am Server zur Verfügung stehen. Die aufgeführten Zufallsgeneratoren des IBB sind bestens dafür geeignet, jeden Entropie-Pool in wenigen Millisekunden mit kryptografisch sicheren Zufallszahlen zu füllen.
Eine anspruchsvolle Applikation stellt der Entropie-Broker dar. Entropie-Broker ist eine Infrastruktur zum Verteilen kryptografisch sicherer Zufallszahlen (Entropiedaten) von einem oder mehreren Servern an einen oder mehrere Clients. Applikation und Hinweise sind auf https://www.vanheusden.com/entropybroker/ zu finden.
Weitere exemplarische Beispiele für kryptografisch sichere Zufallszahlen:
· Netzwerksicherheit
· Transaktionen beim Homebanking (SSL-Verschlüsselung)
· Internet-Verschlüsselung
· elektronischer Zahlungsverkehr
· Erstellung von PKI-Zertifikaten
· OneTimePad-Verfahren