Cryptography Reference
In-Depth Information
Die Forderung nach einem selbstinversen β und die Festlegung auf eine verkürzte letzte
Runde haben den Vorteil, dass die Dechiffrierung der Chiffrierung sehr ähnlich ist. Sie
kann einfach durch den Chiffrieralgorithmus erfolgen, sofern man die S-Box durch ihr
Inverses ersetzt und die folgende modifizierte Rundenschlüsselfunktion benutzt:
K ( k,i )= K ( k,r − i ) ,
falls i ∈{ 0 ,r}
,
(4.2.3)
i ) β ,
K ( k,r
sonst.
Dass dies korrekt ist, kann man leicht am Blockschaltbild in Abbildung 4.1 nachvollziehen:
Dechiffrieren kann man offensichtlich dadurch, dass man das Netzwerk in Abbildung 4.1
von unten nach oben durchläuft. Die ersten beiden Schritte bestehen also darin, zunächst
den letzten Rundenschlüssel zu y zu addieren und dann für jedes resultierende Wort die
Transformation der S-Box zu invertieren. Durchläuft man das Netzwerk stattdessen von
oben nach unten, so sind die durchgeführten ersten beiden Schritte ähnlich, nur dass der
erste Rundenschlüssel durch den letzten ersetzt werden muss und die S-Boxen durch ihr
Inverses. Problematisch sind die folgenden Schritte. Durchläuft man das Netzwerk weiter
von unten nach oben, dann folgt nun zunächst eine Rundenschlüsseladdition (mit dem
vorletzten Rundenschlüssel) und dann eine Bitpermutation. Im Gegensatz dazu wird
beim weiteren Durchlauf von oben nach unten nun zunächst die Bitpermutation und
dann die Rundenschlüsseladdition durchgeführt. Glücklicherweise kann man diese beiden
Operationen vertauschen, denn es gilt:
( u 2 ⊕ K ( k, 2)) β 1 =( u 2 ⊕ K ( k, 2)) β = u β
2 ⊕ K ( k, 2) β ,
wobei die zweite Gleichheit leicht einzusehen ist und die erste Gleichheit gilt, da β selbstin-
vers ist. Statt also zunächst die Rundenschlüsseladdition anzuwenden und dann zu per-
mutieren, kann man auch zunächst permutieren, was u β
2
liefert, und daran anschließend
die Rundenschlüsseladdition mit dem permutierten Rundenschlüssel K ( k, 2) β anwenden.
Iteriert man dieses Argument, so erhält man, auch im allgemeinen Fall:
N
N
Proposition 4.2.1 (Dechiffrierung SPKS). Es sei
ein SPN und
das SPN, das
aus
durch Ersetzen der S-Box durch ihr Inverses und durch Austauschen der Runden-
schlüsselfunktion gemäß (4.2.3) entsteht.
Dann ist die Dechiffrierfunktion von
N
N )
B
(
N
) durch die Chiffrierfunktion von
B
(
gegeben.
Auch bei modernen Block-Kryptosystemen, wie z. B. AES (siehe Abschnitt 4.5), ergibt
sich die Dechiffrierfunktion durch leichte Modifikation der Chiffrierfunktion. Dies hat
den Vorteil, dass weniger Hardwarekomponenten benötigt werden, wenn man ein solches
Kryptosystem durch spezielle Hardware realisiert, was wiederum mit geringeren Kosten
verbunden ist.
Sicherheit soll bei SPKS erreicht werden durch eine Kombination der drei Bestand-
teile: Rundenschlüsseladdition, Wortsubstitution und Bitpermutation. In Aufgabe 4.9.6
wird diskutiert, was passiert, wenn man auf die Wortsubstitution verzichtet. Wenn alle
Bestandteile eines SPKS geeignet gewählt werden und die Parameter groß genug sind,
so dass der Schlüsselraum nicht einfach durchsucht werden kann, etwa s = mn = 128 ,
 
Search WWH ::




Custom Search