S-Box - LinkFang.de





S-Box


In der Kryptografie bezeichnet eine S-Box (englisch substitution box) eine Grundkomponente symmetrischer Kryptosysteme.

Verwendung

Eine m×n S-Box ist eine – in der Regel nichtlineare – Substitutionsoperation, bei der eine m-stellige Binärzahl durch eine n-stellige Binärzahl ersetzt wird. Sie kann beispielsweise mit einer Tabelle implementiert werden, die 2m Zellen enthält. Je nach Anwendung kann es notwendig sein, dass diese Abbildung invertierbar (im Sinne von bijektiv) ist.

S-Boxen werden in Blockverschlüsselungen wie beispielsweise DES und Blowfish eingesetzt, um die Beziehung zwischen Klar- und Geheimtext zu verwischen (in der kryptologischen Fachsprache Konfusion genannt).

Der DES-Algorithmus verwendet acht verschiedene S-Boxen, die auch teilweise das Shannon’sche Prinzip der Diffusion umsetzen. Dies kann einfach nachvollzogen werden: Die Änderung eines Input-Bits ändert mindestens 2 Output-Bits. Dieses Verhalten liegt im Design der S-Boxen. Bei vollständiger Diffusion hingegen wäre das strikte Avalanche Kriterium (SAC) erfüllt und die Änderung eines Input-Bits würde jedes Output-Bit mit der Wahrscheinlichkeit von 0,5 ändern.

S-Boxen müssen sehr sorgfältig entworfen werden, um einer Kryptoanalyse, insbesondere der linearen und der differentiellen Kryptoanalyse zu widerstehen.

Anforderungen

Eine S-Box sollte die folgenden Anforderungen erfüllen:[1]

  • Vollständigkeit: Jedes Ausgangsbit ist von jedem Eingangsbit abhängig.
  • Avalanche: Die Änderung eines Eingangsbits zieht im Mittel die Änderung der Hälfte aller Ausgangsbits nach sich.
  • Nichtlinearität: Kein Ausgangsbit ist linear oder affin von einem Eingangsbit abhängig. Dies sollte auch nicht näherungsweise der Fall sein.[2]
  • Korrelationsimmunität: Solange nur ein Teil der Eingangsbits bekannt ist, können keine Rückschlüsse auf die Ausgangsbits gezogen werden. Und umgekehrt.

Statisch oder Dynamisch

Man unterscheidet zwischen statischen und dynamischen S-Boxen: Während viele Blockchiffren wie DES oder AES festgelegte (statische) S-Boxen verwenden, initialisieren beispielsweise RC4 und Twofish aus dem Schlüssel die S-Box dynamisch (sogenannte: key-dependent S-box). Statische S-Boxen haben Vorteile bei der Implementierung in Hardware hinsichtlich Geschwindigkeit und Speicherbedarf; dynamische S-Boxen können die Kryptoanalyse erheblich erschweren.

Beispiel

Ein Beispiel ist diese statische 6×4-Bit S-Box (S5) von DES:

S5 Mittlere 4 Bits des Eingabewertes
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Äußere Bits 00 0010 1100 0100 0001 0111 1010 1011 0110 1000 0101 0011 1111 1101 0000 1110 1001
01 1110 1011 0010 1100 0100 0111 1101 0001 0101 0000 1111 1100 0011 1001 1000 0110
10 0100 0010 0001 1011 1100 1101 0111 1000 1111 1001 1100 0101 0110 0011 0000 1110
11 1011 1000 1100 0111 0001 1110 0010 1101 0110 1111 0000 1001 1010 0100 0101 0011

Hier wird ein Eingabewert mit 6-Bit angenommen. Der 4-Bit-Ausgabewert ergibt sich durch die Zeile mit den beiden äußeren Bits und die Spalte mit den 4 inneren Bits des Eingabewertes. Im Beispiel hat der Eingabewert "011011" die äußeren Bits "01" und die inneren Bits "1101". Der zugehörige Ausgabewert wäre demnach "1001".

Einzelnachweise

  1. Walter Fumy, Hans Peter Rieß: Kryptographie: Entwurf und Analyse symmetrischer Kryptosysteme. Oldenbourg, München / Wien 1988, ISBN 3-486-20868-3.
  2. Bruce Schneier: Applied Cryptography. Protocols, Algorithms and Source Code in C. 2. Auflage. John Wiley & Sons, New York 1996, ISBN 0-471-11709-9, S. 349–350.

Kategorien: Symmetrisches Kryptosystem

Quelle: Wikipedia - http://de.wikipedia.org/wiki/S-Box (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.