Cryptography Reference
In-Depth Information
9.3.1
Funktionsweise von RC6
Wie der Vorgänger RC5 unterstützt auch RC6 eine variable Blocklänge, Schlüs-
sellänge und Rundenzahl. Für den AES-Wettbewerb waren jedoch die Bit- und
Blocklängen in der besagten Form vorgegeben. Da der AES-Wettbewerb zudem
keine variable Rundenzahl zuließ, legten die RC6-Entwickler um Ron Rivest
diese auf 20 fest. Im Folgenden wollen wir uns auf die genannten Parameter
beschränken. Die Funktionsweise von RC6 ist in Abbildung 9-4 zu sehen. Wie
Vorgänger RC5 basiert auch RC6 in einem hohen Maß auf datenabhängigen
Rotationen. Diese ersetzen die in anderen Verfahren üblichen S-Boxen. Folgende
Unterschiede zu RC5 sind erwähnenswert:
Nachdem RC2 mit vier und RC5 mit zwei Datenströmen arbeiteten, heißt es
bei RC6 »back to the roots«. Das Verfahren sieht also wieder vier Daten-
ströme vor (repräsentiert durch die vier gleich großen Teilblöcke A , B , C und
D ), die jeweils aus 32 Bit bestehen. Der Grund dafür: 32-Bit-Blöcke sind auf
gegenwärtigen Prozessorarchitekturen am besten und schnellsten zu verarbei-
ten.
Bei RC5 entsprechen zwei Runden einer Feistel-Runde. Bei RC6 kehrten
Rivest und seine Kollegen von dieser etwas verwirrenden Definition ab. Eine
RC6-Runde entspricht daher dem, was man als Betrachter intuitiv erwartet.
Wird 20 Mal durchgearbeitet
Subschlüssel
Subschlüssel
A
A
<<<
6
Subschlüssel
f
B
B
Subschlüssel
Subschlüssel
C
C
<<<
f
Subschlüssel
<<<
6
D
D
Abb. 9-4
RC6 arbeitet in 20 Runden, wobei in jede Runde zwei Subschlüssel eingehen.
Search WWH ::




Custom Search