Menu Close

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

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