Menu Close

Kryptologie (Vorlesung 3)

Skript-AnfangSkript – Seite 11
Skript-EndeSkript – Seite 17

Zusammenfassung

  • Es gibt absolut sichere Systeme, diese sind aber nicht praktikabel
  • Sicherheitsniveau von 100 Bit benötigt 2100 Versuche das System zu brechen
  • Ein wesentlicher Faktor für Sicherheit ist die Größe des Schlüsselraums
  • Ein möglicher Angriff ist das Durchprobieren aller Schlüssel, d.h. wir brauchen 2100 verschiedene Schlüssel
  • Ist {0,1}n der Schlüsselraum, dann n ≥ 100
  • Es gibt andere Angriffsverfahren, die sogar unter Umständen keinen Schlüssel benötigen

Klausurfrage

  • Nennen Sie alle Schutzziele

Symmetrische Verschlüsselungsverfahren

  • Verschlüsselung dient Schutzziel Vertraulichkeit
  • Symmetrische Verschlüsselungsverfahren (Schlüssel zum Ver- und Entschlüsseln sind identisch)
  • Aus einfachen Grundfunktionen zusammengestellt
  • Sehr effizient
  • Einsatz für große Datenmengen

Asymmetrische Verschlüsselungsverfahren

  • auch Public-Key-Verfahren genannt
  • Schlüssel zum Verschlüsseln (Public Key) und zum Entschlüsseln (Private Key) sind verschieden
  • Beruhen auf schweren mathematischen Problemen
  • Sind sehr ineffizient
  • Daher nur für kleine Datenmengen einsetzbar, um z.B. symmetrische Schlüssel zu verschlüsseln (Schlüsselaustausch-Protokolle)

Blockchiffren (AES)

  • Symmetrisches Verfahren
  • Eine Blockchire ist ein Algorithmus, der einen Klartext fester Bitlänge (z. B. 128 Bit) mittels eines Schlüssels zu einem Chiretext gleicher Bitlänge verschlüsselt. Diese Bitlänge heisst auch Blockgrösse der Chiffre. Für die Verschlüsselung längerer Klartexte werden sogenannte Betriebsarten eingesetzt, siehe 2.2.

Ziele

  • Einsatz für sehr große Datenmengen (z.B. Rohdaten von Satellitenbildern)
  • Also müssen sehr effizient sowohl Soft- und Hardware laufen (mit beschränkten Ressourcen)
  • Muss aus einfachen Grundfunktionen zusammengesetzt werden (z.B. ⊕ = boolsche Operation, Auswertung von Listen)
  • Wichtige Nebenbedingung ist, dass das Verfahren sicher sein muss

Konstruktionsprinzipien (Shannon 1948)

  • Diffusion (Durchmischung)
    • Bits des KTB werden über den gesamten Block verschmiert (Lawinen-Effekt)
    • Jedes Bit des GT hängt von den jedem Bit des KT ab
    • Grundbaustein: Permutation
  • Konfusion (Komplexität des Zusammenhangs)
    • Beziehung zwischen KTB und GTB soll möglichst kompliziert sein (hochgradig nicht linear)
    • Beziehung zwischen Schlüssel und GTB soll möglichst kompliziert sein
    • Es soll für einen Angreifer unmöglich sein zu erkennen, ob er einen Schlüssel fast richtig geraten hat
    • Grundbaustein: Substitution

Permutation

  • Blockgröße n = 128
  • Spezielle lineare Abbildungen P: {0,1}→ {0,1}n
  • Ein gegebenes n-Tupel (x1,…,xn) wird mittels einer bijektiven Abbildung π : {1, … , n } → {1, … , n } zu {xπ(1) , … , xπ(n) } verändert.
  • Siehe Tabelle 2.1
Implementierung
  1. int array x = [x1 , … , xn]; //Klartext
  2. int array y = new array[]; //Ergebnis der Abbildung
  3. int array π = [π1 , … , π128]; // beschreibt die bijektive Abbildung
  4. for i = 1 to n do
    y[i]=x[ π 1 ];
    end for
  5. return y;

Substitution

  • Nichtlineare Abbildung S: {0,1}n -> {0,1}n
  • Implementierung als Array über den gesamten Block nicht möglich
    • 2n verschiedene Bitstrings müssen abgebildet werden
    • Array mit 2n Einträgen (n=128)
    • Daher beschränkt man sich auf Teilblöcke (meist 8 oder 16 Bit) mit Paralleler Ausführung
Implementierung

Interpretiere Bitstring der Länge 8 als natürliche Zahlen 0, … , 28 – 1 = 255

  1. int x; // Klartext
  2. int y; // Ergebnis
  3. int array S[] = [S1 , … , S256] // Nichtlineare Abbildung
  4. y = S[x];
  5. return y;
Schlüsseladdition
  • Nach Substitution und Permutation wird ein Rundenschlüssel aufaddiert (⊕).
  • Hierzu wird der eingesetzte Schlüssel (meist 128 bit) expandiert und Rundenschlüssel abgeleitet

Auch Substitutions-Ptermutations-Netzwerk (SPN) genannt, z.B.: AES

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.

Index