Date Encryption Standard Hallo liebes Team,

Hallo liebes Team,

versuche schon seit einigen Tagen Date Encryption Standard zu verstehen. Aber irgendwie vergeblich. Es ist in der Literatur, die ich habe, für mich nicht verständlich.
Was passiert denn in den einzelnen Runden (16 Runden)? Was hat das mit den S-Boxen auf sich? Was bedeutet IP hoch -1 (IP=Intital Permutation)?

Vielen herzlichen Dank für Aufklärung.

Verzweifelte Grüße
Liza

P.S Bitte kein Verweis auf wiki

Hallo,

selbst kenne ich mich mit diesem Standard nicht aus, habe aber folgendes gefunden:
http://www.itl.nist.gov/fipspubs/fip46-2.htm

Vielleicht hilft dir das weiter.

Viele Grüße
Thomas

Hi,

Was passiert denn in den einzelnen Runden (16 Runden)?

Meinst du was in der F Funktion oder in der Runde passiert? Die Rundenstruktur ist ja ganz schön hier dargestellt. Wenn du da etwas nicht verstehst solltest du das konkretisieren.

Was hat das mit den S-Boxen auf sich?

Eine Sbox ist nichts anderes als eine Tabelle, die alle Zahlen einer bestimmte Länge auf eine andere Zahl einer bestimmten Länge abbildet.
Wenn ich z.B. alle 2 Bit Zahlen auf 1 Bit Zahlen abbilden will, könnte das so aussehen:
00->0
01->1
10->1
11->0
Im Fall der DES Sboxen werden immer 6 Bit auf 4 Bit abgebildet.

Da man mit 6 Bit 64 verschiedene Zahlen darstellen kann, bestehen die SBoxen aus 64x4 Bit, so dass für jeden möglichen Eingangswert ein 4 Bit Ausgangswert vorhanden ist.

Angeordnet sind die SBoxen in einer Tabelle mit 16 Spalten und 4 Zeilen. Möchtest du einen 6 Bit Wert substituieren, musst mit den mittleren 4 Bit des Wertes die Spalte und mit den äußeren 2 Bit die Zeile auswählen. Die Ausgabe ist dann der 4 Bit Wert der an dieser Stelle in der Tabelle steht.

Es existieren 8 verschiedene Sboxen. In der F Funktion werden die 32 Eingangsbit erst auf 48 Bits erweitert (s. hier) und dann werden jeweils 6 Bit mit den Sboxen substituiert, so dass der Ausgang der F Funktion wieder 8x4=32 Bit sind.

Was bedeutet IP hoch -1
(IP=Intital Permutation)?

IP ist eine Permutation, also eine Funktion die die Positionen einzelner Bits vertauscht.
Während wir für die Substitution für jeden möglichen Eingabewert einen Ausgabewert zugeordnet haben, wird hier jeder Position an der ein Bit steht eine Ausgangsposition zugeordnet.
Das kann dann für 4 Bit Zahlen so aussehen:

Pos0-&gt:stuck_out_tongue_winking_eye:os3
Pos1-&gt:stuck_out_tongue_winking_eye:os2
Pos2-&gt:stuck_out_tongue_winking_eye:os0
Pos3-&gt:stuck_out_tongue_winking_eye:os1

Aus 0110 würde dann 1010

Das „hoch -1“ beschreibt die inverse Permutation, also die Funktion, die die erste Funktion rückgängig macht.
Für das Beispiel sähe die inverse Permutation so aus:

Pos0-&gt:stuck_out_tongue_winking_eye:os2
Pos1-&gt:stuck_out_tongue_winking_eye:os3
Pos2-&gt:stuck_out_tongue_winking_eye:os1
Pos3-&gt:stuck_out_tongue_winking_eye:os0

Aus 1010 würde dann wieder 0110

Gruß

rantanplan

P.S.: Finde den Wikipedia Artikel zu dem Thema übrigens gar nicht so schlecht. Wobei die Bilder im englischen Wiki Artikel meiner Meinung nach besser sind. Wenn du konkrete Fragen zu dem Artikel hast, kannst du ja auch nochmal hier nachfragen.

Hi,
solltest du dich Fragen, wieso die S-Boxen und die Permutationen so aussehen wie sie aussehen, dann kann ich dir leider nicht weiterhelfen, da man das beim DES (im Gegensatz z.B. zum AES) einfach nicht weiß

Gruß
rantanplan