Kryptologie (Vorlesung 4)

Skript-AnfangSkript – Seite 15
Skript-EndeSkript – Seite 22

Klartextblockgröße beim AES

  • 128 bit / 16 byte

Verschlüsselung

  1. Permutation
  2. Substitution
  3. Schlüsseladdition

AES Implementierung

Betriebsarten

  • Bisher nur 128 bit Verschlüsselung
  • Für längere Texte benötigt man Betriebsarten
  • Teilung des Textes in Blöcke (Länge = Blockgröße der Blockchiffre, d.h. 128 bit bzw. 16 byte)
  • Einfachste Lösung = Electronic Code Book (ECB)
    • Gleiche Klartextblöcke führen zu den gleichen Chiffretexten
    • Der n-te Chiffretext sollte nicht nur vom Klartext, sondern auch von einem weiteren Text abhängig sein

Cipher Block Chaining (CBC)

  • Initialisierungsvektor (IV) = 128 bit lang → darf nicht vorhersagbar sein (siehe Watermark Angriff)
  • Vorherige Ciphertexte dienen zur Generierung der weiteren Ciphertexte

Counter Mode

  • Aus den Blockchiffren kommen immer Zufallszahlen heraus
  • Es wird eine lange Zufallsfolge generiert
  • Auf die Zufallsfolge wird der Klartext aufaddiert via XOR
  • Funktioniert am Ende wie das OTP-Verfahren
  • Angreifer muss nur die Länge des Anfangsschlüssels erraten ← 128 bit (IV ist bekannt) auch bei 1 Millionen Bit lang generierter Zufallsfolge

Asymmetrische Verschlüsselungsverfahren

  • Werden eingesetzt um kleinere Datenmengen zu verschlüsseln
  • Typische Anwendung ist die verschlüsselung symmetrischer Schlüssel in Schlüsselaustauschprotokollen
  • Idee:
    • Den öffentlichen Schlüssel (Public Key) zum Verschlüsseln (muss nicht geheim gehalten werden)
    • Den geheimen Schlüssel (Private Key) zum Entschlüsseln (muss geheim gehalten werden)
  • Aus dem öffentlichen Schlüssel darf der geheime Schlüssel nicht berechnet werden können

RSA-Verschlüsselungsverfahren

  • Je „schwieriger“ das mathematische Problem zu lösen, desto sicherer das Verfahren

Mathematik

  • Kommutativ = abelsche Gruppe (a+b=b+a)
  • Halbgruppe = ohne inverse Elemente
  • Distributiv = a*(b+c)=a*b+a*c
  • Je näher p und q zusammen liegen, desto näher sind diese an der Wurzeln aus n → D.h. einfacher zu knacken
  • Z10* = {1, 3, 7, 9}
  • 3*7 = 21 mod 10 = 1
  • 9*9 = 81 mod 10 = 1
  • 1*1 = 1
  • Zp* (p=primzahl) = {1, … , p-1}
  • Zpq* = (p-1)(q-1) für zwei Primzahlen p, q ∈ N
  • Es gilt a, b, c: a2+b2=c2
  • Die Gleichung an+bn=cn ist für a, b, c ∈ N nicht lösbar für n < 2

RSA-Verfahren

  • Siehe Seite 20
  • n = p*q heißt RSA Modul (Zn)
  • (n, e) = öffentlicher Schlüssel
  • (n, d) = geheimer Schlüssel
  • p, q und φ(n)= müssen geheim bleiben

Verschlüsselung einer Nachricht

  • m < n (m ∈ Zn)
  • Berechne c = me mod n

Entschlüsseln eines Ciphertextes

  • c < n (c ∈ Zn)
  • Berechne cd mod n
  • (me)d
  • = m(ed)
  • = m(1+kφ(n))
  • = m*(m(φ(n)))k
  • = m*(1)k
  • = m
Maximilian
Maximilian

Herzlich willkommen! Ich bin Max, ein Informatiker mit über 15 Jahren Berufserfahrung. Hier teile ich meine Leidenschaften, Erlebnisse und Perspektiven. Ich lade dich ein, gemeinsam mit mir auf eine Entdeckungsreise zu gehen.

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.