MINT üben

Moderne Blockchiffren

Ein Mini-Verfahren für die Robotik-AG und gescannte Formulare in der Cloud — was Runden leisten und was ECB verrät.

Dein Fortschritt:
0 / 0 Aufgaben
1

Das Mini-Verfahren der Robotik-AG

AFB I–II

Die Robotik-AG will Steuerbefehle zwischen zwei Mikrocontrollern verschlüsseln und entwirft dafür das Lernverfahren „AG-8“ — eine stark vereinfachte Blockchiffre mit 8-Bit-Blöcken. Eine Runde von AG-8 besteht aus drei Schritten:

  1. Der Block wird in zwei Nibbles zu je 4 Bit zerlegt; jedes Nibble wird mit der S-Box ersetzt.
  2. Die 8 Bits werden nach der Permutation umgelegt: Die Bits des linken Nibbles kommen auf die Positionen 1, 3, 5, 7, die Bits des rechten Nibbles auf die Positionen 2, 4, 6, 8 („Reißverschluss“).
  3. Der Block wird per XOR mit dem Rundenschlüssel verknüpft.
S-Box und Permutation von AG-8
Eingang \(x\)0123456789ABCDEF
\(S(x)\)C56B90AD3EF84712
Bitposition vorher12345678
Bitposition nachher13572468
Nibbles hexadezimal (A = 1010 … F = 1111); Bitpositionen von links gezählt. Rundenschlüssel \(K_1 = 1011\,0010\).
  1. Beschreiben Sie den Aufbau einer Runde von AG-8 und ordnen Sie die drei Schritte den Prinzipien Konfusion und Diffusion zu.
  2. Wenden Sie eine Runde von AG-8 mit dem Rundenschlüssel \(K_1\) auf den Klartextblock \(0110\,1001\) an. Geben Sie alle Zwischenergebnisse an.
  3. Erläutern Sie am Ergebnis aus b), wie der Empfänger den Block entschlüsselt, und warum die S-Box jeden Ausgangswert genau einmal enthalten muss.

Hinweise

Hinweis zu Aufgabe a)
Welcher Schritt verändert die Werte, welcher nur ihre Lage — und wo kommt der Schlüssel ins Spiel?Beschreiben heißt: das Verfahren in eigenen Worten und mit Fachbegriffen wiedergeben.
Hinweis zu Aufgabe b)
Nibbles hexadezimal lesen: \(0110 = 6\), \(1001 = 9\). Beim Reißverschluss wechseln sich die Bits von links und rechts ab.
Hinweis zu Aufgabe c)
Die Schritte rückwärts: Welcher Schritt hebt sich selbst auf, welche brauchen eine Umkehrung? Was passiert, wenn zwei Eingänge der S-Box denselben Ausgang hätten?