# Symmetrische Verschlüsselung AES



## Movementroboter (27. Oktober 2014)

Hallo Leute,
Das Grundprinzip von der AES Verschlüsselung habe ich verstanden aber leider weiß ich nicht wie man es berechnet.

Kann es jemand verständlicher erklären ? 


Klartext
01 10
Aufgeteilt in Blöcke
01 = B1, 10 = B2
Schlüssel
11=k
Init. Vektor (IV)
01
Zur Vereinfachung wird als Verschlüsselungsfunktion E die binäre Addition und als Entschlüsselungsfunktion D die binäre Subtraktion verwendet.

*Verschlüsselung*
Block 1:


B1⊕IV=01⊕01=00=C′1
Ek(C′1)=C′1+k=00+11=11=C1
Block 2:


B2⊕C1=10⊕11=01=C′2
Ek(C′2)=C′2+k=01+11=00=C2
Verschlüsselter Text:


C1C2=1100
Betrachtet man die Verschlüsselung von B2, sieht man, dass dazu C1 benötigt wird. Generell bedeutet das, dass für eine Verschlüsselung von Bi der Chiffratblock Ci−1 benötigt wird. Eine Parallelisierung des Verschlüsselungsvorgangs fällt damit aus.

*Entschlüsselung*
Block 1:


Dk(C1)=C1−k=11−11=00=C′1
C′1⊕IV=00⊕01=01=B1
Block 2:


Dk(C2)=C2−k=00−11=01=C′2
C′2⊕C1=01⊕11=10=B2
Klartext:


B1B2=0110
Betrachtet man die Entschlüsselung von C2, sieht man, dass B1 dafür nicht benötigt wird, sondern lediglich C1. Generell bedeutet das, dass für eine Entschlüsselung von Ci nur Ci−1 benötigt wird. Damit ist eine Parallelisierung des Entschlüsselungsvorgangs möglich.


----------



## sheel (27. Oktober 2014)

Hi und Willkommen bei tutorials.de,

ist das Gezeigte die Originalangabe?
....
Ein paar Überblicksmäßige Infos, Details zur Vorgehensweise gern später:

AES allein verschlüsselt nur einzelne, nicht zusammengehörende Blöcke.
Für die Frage, wie mehrere zusammengehörende Blöcke verarbeitet werden
gibt es eine ganze Reihe an verschiedenen Möglichkeiten. Der folgende Satz


> Betrachtet man die Verschlüsselung von B2, sieht man, dass dazu C1 benötigt wird.


und ein schneller Blick auf die anderen Details lässt auf den "Cipher Block Chaining Mode",
kurz CBC, schließen. Wenn ihr im Unterricht nie etwas von CBC gehört habt, sondern einfach
alles zusammen AES genannt wurde, bitte das Ganze mit Vorsicht genießen.

Damit wäre es erst einmal ein CBC-AES.
Während die CBC_Verkettung der Blöcke relativ eifnach ist, ist die AES-Prozedur pro Block
deutlich umständlicher. Nichts, was man gern mit der Hand nachrechnet. Deswegen wohl Folgendes:


> Zur Vereinfachung wird als Verschlüsselungsfunktion E die binäre Addition und als Entschlüsselungsfunktion D die binäre Subtraktion verwendet.


Was eigentlich gemacht werden soll ist eine "CBC-Addition", um es einmal so zu nennen.
(Außerdem kann AES nicht mit 2-bit-Blöcken umgehen.)

Mit AES hat das gar nichts mehr zu tun.

...
Um für die Details eine Grundlage zu haben:
Wie sicher bist du dir beim Rechnen mit Binärzahlen generell?
Also Binär-Addition, Binär-Subtraktion, Binär-XOR,
und Verständnis von Modulo bzw. Overflows
(zB. 1111+0010=0001, also 15+2=1, wenn man auf 4bit beschränkt ist)?


----------

