Cryptography Reference
In-Depth Information
1.
Durchlaufe sechs Mal:
Wende Viertelrundenfunktion spaltenweise an
Wende Viertelrundenfunktion zeilenweise an
2.
Addiere den ursprünglichen Wert der Matrix X
Anders ausgedrückt gilt: X = X +( V zw ( V sw ( X ))) 6 . V steht hierbei für die Viertel-
rundenfunktion und zw bzw. sw für zeilen- bzw. spaltenweise. Das spaltenweise
oder zeilenweise Anwenden der Viertelrundenfunktion auf X bezeichnet eine
Runde. Pro Runde wird also die Viertelrundenfunktion viermal aufgerufen, was
deren Namen erklärt. Das sechsmalige Durchlaufen der oben genannten Schleife
entspricht zwölf Runden und damit der Variante Salsa20/12. Für Salsa20/8 sind
vier Durchläufe notwendig. In der ursprünglichen Version von Salsa20 gab es
zehn Durchläufe und damit 20 Runden. Die Keystream-Extraktion läuft unab-
hängig von der Rundenzahl wie folgt ab (|| steht wie üblich für die Konkatenation):
keystream = H ( c 0 || k || c 1 || n || c 2 || k || c 3 )
c 0 , c 2 , c 2 und c 3 sind Konstanten, deren Wert Sie in der Originalarbeit nachlesen
können. Jede Konstante hat eine Länge von 4 Byte. k ist der Schlüssel (16 Byte).
n ist der Status (also der Zähler), der nach jeder Fortschaltung um eins hochzählt
wird. Der Anfangswert von n entspricht dem Initialisierungsvektor. Die Länge
von n beträgt 16 Byte. Wie Sie leicht nachrechnen, haben die eingegebenen Vari-
ablen zusammen die Länge 512 Bit (64 Byte) und lassen sich dadurch als Matrix
darstellen und als Eingabe von H verwenden. Die Ausgabe ist erneut ein 512-Bit-
Wert. Dieser wird als Keystream ausgegeben.
32
Bit
32
Bit
rot
9
+
32
Bit
32
Bit
rot
7
+
32
Bit
32
Bit
rot
13
rot
18
+
+
32
Bit
32
Bit
Abb. 16-9
Die Viertelrundenfunktion ist der zentrale Bestandteil von Salsa20. Sie spielt bei der
Keystream-Generierung eine Rolle.
Bewertung von Salsa20
Salsa20 ist durch sein außergewöhnliches Design zweifellos eine interessante
Stromchiffre. Das Verfahren hat alle Vorteile, die der in Abschnitt 19.1.5 be-
schriebene CTR-Modus bietet. Insbesondere lässt sich damit ein einzelner Nach-
richtenblock entschlüsseln, ohne dass zuvor eine größere Zahl von Fortschaltun-
Search WWH ::




Custom Search