Ich habe ein Problem mit dem MixColumns Schritt beschrieben here.Misunderstanding MixColumns Schritt
Ich weiß über Diffusion und es macht alles Sinn bis zu dem Punkt, wo es heißt, dass jede Spalte wie ein Polynom behandelt und Modulo über GF (2^8) multipliziert wird.
ABER..Multiplizieren in GF (2^8). Obwohl die Domain immer noch dieselbe ist, ist sie nicht umkehrbar aufgrund von Mod .... und sie muss reversibel sein, denn das ist der ganze Sinn.
Soweit das erste Bit geht, nehme ich A, B, C und D als die 4 Bytes einer Spalte und A1, A2, ..., A8 als die Bits und E, F, G und H als die Ausgangsbytes. Ich wollte
E = A1,B2,C3,D4,A5,B6,C7,D8
F = D1,A2,B3,C4,D5,A6,B7,C8
G = C1,D2,A3,B4,C5,D6,A7,B8
H = B1,C2,D3,A4,B5,C6,D7,A8
einzustellen Und so ist es reversibel, Eins-zu-eins, lineare und distributive
Darin heißt es später, dass sie als Matrixmultiplikation betrachtet werden kann, sondern als Elemente der Matrix müssen Bytes sein und als Bytes ausgegeben werden, dann muss jedes Element der Matrix Modulo 256 und daher nicht reversibel und nicht linear sein.
Habe ich das falsch verstanden? Ich kämpfe mit Mathe und versuche zu verstehen, was getan werden muss, damit ich es in Logik umwandeln kann.
Netter Comic, danke. Jetzt verstehe ich, wie AES funktioniert :-) –