Cryptography Reference
In-Depth Information
Shift-Rows ist eine Abbildung
x 1
x 5
x 9
x 13
x 1
x 5
x 9
x 13
x 2
x 6
x 10
x 14
x 6
x 10
x 14
x 2
F 4 × 4
F 4 × 4 ,
.
x 3
x 7
x 11
x 15
x 11
x 15
x 3
x 7
x 4
x 8
x 12
x 16
x 16
x 4
x 8
x 12
×
Das Wort x 1 ,..., x 16 wird spaltenweise in eine 4
4 Matrix eingetragen. Die Ab-
bildung besteht darin, die Zeilen zyklisch zu verschieben (daher der Begriff shift ).
Man beachte, dass auch diese Abbildung komplette Bytes verschiebt. Es wird also
nur Diffusion auf Byte-Ebene erreicht, das allerdings sehr wirkungsvoll.
Wirkliche Diffusion wird nur in Kombination mit dem folgenden Schritt erzielt.
X 4
=
[
]
(
+
)
Mix-Columns benutzt den Ring R
aus dem Beispiel von Sei-
te 43. Wir fassen je vier Bytes - genauer jede Spalte der eben beschriebenen Matrix
- zu einem Element in R zusammen, z. B. die erste Spalte:
F
X
/
1
T
x 1 X 3
x 2 X 2
(
x 1 , x 2 , x 3 , x 4 )
y 1 =
+
+
x 3 X
+
x 4
R .
x 1
x 5
x 9
x 13
x 2
x 6
x 10
x 14
R 4 .
(
)
Die Matrix
hat dann die Form
y 1 , y 2 , y 3 , y 4
x 3
x 7
x 11
x 15
x 4
x 8
x 12
x 16
Mit dem aus dem Beispiel auf Seite 43 bekannten Polynom
03 X 3
X 2
(
)=
+
+
+
c
X
X
02
R
setzt man
Mix-Columns : R 4
R 4 ;
(
) (
·
·
·
·
)
y 1 , y 2 , y 3 , y 4
c
y 1 , c
y 2 , c
y 3 , c
y 4
.
Das Element c ist invertierbar in R mit Inversem c 1
0B X 3
0D X 2
=
+
+
+
09 X
0E
wie schon im Beispiel auf Seite 43 erwähnt.
Die Abbildung Mix-Columns sorgt in Kombination mit Shift-Rows für Diffusion
auf Bit-Ebene.
In der Tat werden nach [8, 3.5] nur wenige Runden benötigt, um eine sehr gute
Diffusion zu erzielen.
Add-Round-Key addiert schließlich den Rundenschlüssel k i
in der i -ten Runde
Add-Round-Key : F 16
F 16
F 16 ,
×
(
)
+
x , k i
x
k i .
Insgesamt gilt also
Add-Round-Key Mix-Columns Shift-Rows
, k i
(
x , k i
)=
(
subByte
(
x
))
Mix-Columns Shift-Rows
)) +
=
(
subByte
(
x
k i .
Search WWH ::




Custom Search