Verfahren

Was zeichnet das implementierte Verfahren aus?


  • Theoretisch sicheres Verfahren

    Die Sicherheit herkömmlicher Verfahren besteht auf der Annahme, dass mehrere anerkannte Experten auf dem Gebiet der Kryptografie sich bislang erfolglos darum bemüht haben die jeweiligen Algorithmen zu knacken. Problematisch ist allerdings, dass die Anwender von Verschlüsselungsverfahren häufig erst viel später von erfolgreichen Angriffen erfahren.

  • Stark erhöhte Sicherheit durch die Verwendung von zwei unabhängig wirkenden Schlüsseln

    Gedächtnisphrasen bzw. Passwörter können durch Androhung von Gewalt, Drogen oder Hypnose bzw. durch technische Spionage (z.B.: Keylogger) leicht durchtunnelt werden. Durch den Glauben an die vermeintlich hohe Sicherheit von Passphrasen ist in der Realität ein beachtlicher Teil der Computerkriminalität erst entstanden. Bei der Verschlüsselungsthematik lösen sich diese Kenntnisse jedoch häufig in Schall und Rauch auf.

    Wodurch werden diese Sicherheitsaspekte in Challenger berücksichtigt?

    Challenger verwendet ein
    ZWEI-Schlüsselverfahren. Einer der Schlüssel stellt eine übliche Gedächtnisphrase bzw. Passwort dar. Der zweite Schlüssel wird durch eine umfangreiche Liste (3 MB) mit echten Zufallszahlen erzeugt. Er wird ebenfalls individuell generiert und kann wie ein materieller Schlüssel gehandhabt werden (Tresor). Bei hohen Sicherheitsanforderungen kann der zweite Verfahrensschlüssel auch unabhängig von der Computer-Plattform gebildet werden.


Das in Challenger implementierte symmetrische Verschlüsselungsverfahren ist neu und basiert auf natürlichem Rauschen. Es werden keine mathematischen Algorithmen verwendet. Wir haben es geschafft einen idealen Zufallszahlengenerator zu entwickeln. Der Generator liefert aus einer relativ kleinen Menge von echten Zufallszahlen nahezu unendlich viele weitere Zufallszahlen. Es besteht lediglich eine extrem geringe Wahrscheinlichkeit, dass der Generator in einen Zyklus geraten könnte.

Folgendes Zahlenspiel zeigt von welcher Wahrscheinlichkeit hier gesprochen wird:

Nach einer angenommen Erzeugung von 1017 Zufallsbytes, liegt die (Un)Wahrscheinlichkeit bei 10-120, dass der Generator in eine Wiederholungsschleife gerät. Damit die Menge von 1017 Bytes generiert werden könnte, müsste der Generator ca. 100 Jahre fortlaufend 300 MB pro Sekunde erzeugen.

Die Angabe von 300 MB/s ist die theoretisch mögliche Geschwindigkeit - bei idealer Implementierung.

Herkömmliche Pseudo-Random-Generatoren werden nach Ausschöpfung der maximal möglichen Anzahl an generierten Zufallszahlenfolgen zyklisch. Dafür wird in der Regel der theoretische Nachweis erbracht. Im Gegensatz dazu wird beim Challenger-Mechanismus ein ausschließlich aus zufälligen Daten gesteuerter Prozess verwendet. Verfahrensgemäß wird also gänzlich auf die Verwendung von Algorithmen verzichtet. Daraus folgt auch, dass es keine kryptografischen Angriffsstrategien geben kann.


Wie bereits angesprochen arbeitet die Challenger-Engine mit echten Zufallszahlen. Diese werden durch einen physikalischen Prozess gewonnen. Die Liste mit den generierten Zufallszahlen wird als PAD bezeichnet und stellt - neben der Passphrase - den zweiten geheimen Schlüssel dar. In Prozessoren integrierte Zufallszahlengeneratoren sind im Sinne der Verschlüsselungssicherheit aus nahe liegendem Grund abzulehnen.

Andere Verschlüsselungsprogramme erzeugen wenige Zufallszahlen durch Mausbewegungen oder durch blindes tippen auf der Tastatur (PGP etc.).

Challenger verwendet zwei sehr effiziente Methoden, um große Mengen echte Zufallszahlen zu gewinnen.

  • In der Software ist ein PAD-Generator integriert, der das Eigenrauschen der Soundkarte aufnimmt. Hierbei wird die Tatsache ausgenutzt, das Soundkarten ein Eigenrauschen aufweisen. Selbst rauscharme Soundkarten produzieren genügend Rauschbits. Unter idealen Bedingungen werden ideale Zufallszahlen erzeugt. Damit die Erzeugung aufbauunabhängig und anwenderfreundlich immer zum Erfolg führt, wird die Rohaufnahme durch eine Einwegfunktion aufbereitet. Die Rohaufnahme wird dabei vorher geprüft und nur bei ausreichender statistischer Gleichverteilung der Zufallszahlen verwendet.

  • Die in der Software implementierte Einwegfunktion kann aus einem geordneten Muster bereits nach wenigen Mischrunden kryptografisch relevante Zufallszahlenfolgen generieren. Aus dem Ergebnis kann der ursprüngliche Datenstrom nicht mehr berechnet werden. Nur eine Bit-Änderung in den Ursprungsdaten führt zu völlig anderen Ergebnissen. Die o.g. Gewinnung von Zufallszahlen über die Soundkarte wurde in einem frühen Entwicklungsstadium favorisiert. Die moderne Variante zur PAD-Erzeugung erfolgt durch eine Bilddatei, die mittels der Einwegfunktion transformiert wird. Es können alle digitalen Fotokameras benutzt werden. Dabei müssen keine technischen Einstellungen berücksichtigt werden. Neben der einfachen und schnellen Zufallszahlenerzeugung ergeben sich jedoch auch wichtige Sicherheitsaspekte. Eine digitale Fotokamera erzeugt den Rohschlüssel außerhalb der Computer-Plattform. Der Anwender erkennt die Bildstrukturen auf einen Blick. Es versteht sich von selbst, dass strukturierte Bilder nicht berechenbar sind. Die abschließende Einwegfunktion kann durch ein Referenzsystem überprüft werden.

Der entwickelte Schlüsselstromgenerator kann auf der Basis der echten Zufallszahlen (PAD) eine unerschöpfliche Anzahl an weiteren Zufallszahlen generieren. Dafür sorgt der ausschließlich aus den Zufallsdaten gesteuerte Prozess. Die Klartextdaten werden - wie das bei Stromchiffren oft der Fall ist - mit den gewonnenen Zufallszahlen über XOR verknüpft.





Der Generator ist in einen internen und in einen externen Prozess unterteilt. Beim Starten wird die Ausgangsstellung des Generators durch die Phrase (plus den Datums- und Zeitwerten) gesetzt. Die Datums- und Zeitwerte dienen dazu, dass bei gleicher Phrase, eine vollkommen andere Ausgangsstellung des Generators gebildet wird.

Der interne Prozess erzeugt Zeiger für den externen Prozess und für sich selbst im Rahmen einer Rückkopplung. Dabei werden die Zeiger für den externen Prozess und die Zeiger für die Rückkopplung seperat erzeugt und stehen in keiner Verbindung zueinander. Auf Grund der Art der Zeigererzeugung ist die eingebaute Rückkopplung zulässig.

Die einzelnen Funktionsabläufe des Generators benötigen in jedem Fall das gesamte PAD.

Wenn Sie Fragen zum Verfahren und zur DLL-Implementierung in Drittsoftware haben, können Sie sich gerne mit uns in Verbindung setzen.