Konfusion (Kryptologie)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Konfusion ist in der Kryptologie eines der beiden zentralen Prinzipien zur Verschleierung von Strukturen eines Klartextes im Zuge einer Verschlüsselung oder beim Hashen. Das andere dieser Prinzipien ist die Diffusion. Sie gehen auf den amerikanischen Mathematiker Claude Shannon zurück.

Zweck[Bearbeiten | Quelltext bearbeiten]

Zwischen Klartext und Geheimtext soll möglichst keine Beziehung erkennbar sein, die für einen Angriff ausgenutzt werden könnte. Jede Änderung des Klartextes soll sich auf unvorhersehbare Weise auf den Geheimtext auswirken, und Strukturen des Klartextes sollen im Geheimtext nicht mehr erkennbar sein. Ein Beispiel für eine Struktur eines Klartextes ist die Buchstabenhäufigkeit. Wenn im Klartext bestimmte Zeichen bzw. Bytes häufiger auftreten als andere, soll davon im Geheimtext nichts mehr zu erkennen sein.

Realisierung[Bearbeiten | Quelltext bearbeiten]

Um Konfusion zu erreichen, sollte ein Verschlüsselungs- oder Hashverfahren nichtlineare Operationen enthalten oder Operationen so miteinander kombinieren, das die Gesamtabbildung nichtlinear ist. Zum Beispiel wäre es ein Fehler, die Geheimtextbits nur durch XOR-Verknüpfung von Klartext- und Schlüsselbits zu berechnen. Eine lineare Kryptoanalyse würde ein solches Verfahren leicht brechen.

Nicht mehr linear ist hingegen die abwechselnde Anwendung der XOR-Verknüpfung und der Addition modulo , wobei die Zahl der Bits eines Datenworts ist. Beispiele für Blockchiffren, die allein diese Möglichkeit zur Konfusionserzeugung nutzen, sind FEAL, TEA, XTEA und Threefish. Verfahren, die nur aus Addition, Rotation von Datenwörtern und XOR aufgebaut sind, wie etwa Threefish, nennt man auch ARX-Chiffren.

Viele kryptografische Verfahren enthalten S-Boxen als Bauelemente, die für starke Konfusion sorgen, da man weitgehend frei wählen kann, wie eine -S-Box die möglichen Werte der eingegebenen Bits auf die möglichen Ausgabewerte abbildet. S-Boxen werden z. B. in den Verschlüsselungsverfahren DES, Blowfish, CAST und Serpent eingesetzt.