13 KiB
KR3 – Zusammenfassung
Vorlesung: Kryptographie & Rechnernetze 3
Dozent: Prof. Dr. Björn Grohmann
Datum: 02.03.2026
1. Digitale Signaturen
Grundprinzip
Eine digitale Signatur ermöglicht es, die Integrität, Authentizität und Non-Repudiation (Nicht-Abstreitbarkeit) einer Nachricht zu gewährleisten.
Ablauf:
- Sender: Nachricht
M+PrivateKey→ Secure Signature Algorithm →Sign - Empfänger: Verifiziert mit
PublicKey, berechnetSign'und prüftSign == Sign'
Formale Algorithmen
| Algorithmus | Funktion |
|---|---|
keygen(1^k) → (sk, pk) |
Schlüsselpaar generieren |
sign(m, sk) → σ |
Nachricht signieren |
verify(σ, m, pk) → d |
Signatur verifizieren |
Mögliche Angriffsziele (Adversarial Goals)
- Total Break: Angreifer Oscar kann Alices privaten Signieralgorithmus vollständig ableiten.
- Selective Forgery: Oscar kann eine gültige Signatur für eine von jemand anderem gewählte Nachricht erstellen (mit nicht-vernachlässigbarer Wahrscheinlichkeit).
- Existential Forgery (relevant für Praxis): Oscar kann eine gültige Signatur für mindestens eine beliebige Nachricht erstellen.
2. Beispiel: RSA-Signatur
Signaturformel
s = m^d \pmod{n}
s= Signaturm= zu signierende Nachrichtd= privater Exponentn= öffentlicher Modulus
Existential Forgery Attack gegen RSA
Oscar kennt Bobs öffentlichen Schlüssel k_pub = (n, e). Er:
- Wählt eine beliebige Signatur
s ∈ ℤ_n - Berechnet die „Nachricht":
x ≡ s^e mod n - Präsentiert Alice das Paar
(x, s)
Alice verifiziert: s^e ≡ x' mod n → da x' = x → gültige Signatur!
⚠️ RSA ohne Padding ist anfällig für Existential Forgery!
3. RSA-PSS (Probabilistic Signature Scheme)
RSA-PSS verhindert die oben genannte Attacke durch gezieltes Padding vor der Signatur:
Prozess:
- Nachricht
Mwird gehasht →mHash M' = [8 × 0x00 Bytes | mHash | salt]wird erneut gehasht →HDB = [PS | 0x01 | salt]maskedDB = DB ⊕ MGF(H)(Mask Generation Function)- Encoded Message:
EM = [maskedDB | H | TF]
4. ECDSA – Elliptic Curve Digital Signature Algorithm
Signieren (Alice, Nachricht m)
e = HASH(m)(z.B. SHA-2)z= dieL_nlinksten Bits vone- Wähle zufälliges
k ∈ [1, n-1] - Berechne Kurvenpunkt:
(x₁, y₁) = k × G(G = Generator der EC-Gruppe) r = x₁ mod ns = k⁻¹(z + r·d_A) mod n(d_A = geheimer Schlüssel von Alice)- Signatur:
(r, s)
Verifizieren (Bob)
- Überprüfe, dass
Q_A(Alices öffentlicher Schlüssel) ein gültiger Kurvenpunkt ist - Berechne
e = HASH(m),z= linksteL_nBits u₁ = zs⁻¹ mod n,u₂ = rs⁻¹ mod n(x₁, y₁) = u₁ × G + u₂ × Q_A- Signatur gültig wenn
r ≡ x₁ (mod n)
5. Zertifikate (Certificates)
Kernproblem
Wie kann Alice sicher sein, dass ein Public Key wirklich zu Bob gehört?
Lösung: Certificate Authority (CA)
Eine vertrauenswürdige Instanz (CA) bestätigt die Identität einer Person und signiert deren Public Key mit ihrem eigenen Private Key.
Inhalt eines Zertifikats (X.509):
- Name, Organisation, Adresse, Land
- Gültigkeitszeitraum
- Public Key des Inhabers
- Digitale Signatur der CA
Zertifikatskette (Chain of Trust)
Endnutzer-Zertifikat
← signiert von CA
CA-Zertifikat
← signiert von Root CA
Root CA (selbstsigniert, vertrauensanker)
X.509-Struktur (RFC 5280)
Certificate ::= SEQUENCE {
tbsCertificate TBSCertificate,
signatureAlgorithm AlgorithmIdentifier,
signature BIT STRING
}
Zertifikatswiderruf
CRL (Certificate Revocation List): Wird periodisch heruntergeladen.
OCSP (Online Certificate Status Protocol): Status wird bei Bedarf online abgefragt.
Widerrufsgründe (RFC 5280): unspecified, keyCompromise, cACompromise, affiliationChanged, superseded, cessationOfOperation, certificateHold, removeFromCRL, privilegeWithdrawn, aACompromise
6. Identity-Based Encryption (IBE)
Grundidee (Boneh & Franklin, 2001): Der öffentliche Schlüssel ist die Identität (z.B. eine E-Mail-Adresse), kein separater Schlüssel wird benötigt.
Beteiligte Instanz: PKG (Private Key Generator)
- Kennt den Master-Key
sk_PKG - Gibt nach Authentifizierung den privaten Schlüssel
sk_ID_Bobheraus
Mathematische Grundlage: Bilineare Abbildung
Eine bilineare Abbildung ê: G₁ × G₁ → G₂ mit den Eigenschaften:
- Bilinear:
ê(aP, bQ) = ê(P, Q)^ab - Nicht-degeneriert
- Effizient berechenbar
IBE-Algorithmen (Boneh-Franklin)
- Setup: Generiert Parameter
(q, G₁, G₂, ê, n, P, P_pub, H₁, H₂), Master-Keys ∈ ℤ_q* - Extract:
d_ID = s · Q_IDwobeiQ_ID = H₁(ID) - Encrypt:
C = ⟨rP, M ⊕ H₂(g_ID^r)⟩mitg_ID = ê(Q_ID, P_pub) - Decrypt:
V ⊕ H₂(ê(d_ID, U)) = M
Das funktioniert, da: e(d, U) = e(sQ, rP) = e(Q, sP)^r
7. Historisches Beispiel: The Babington Plot (1586)
Schichtenmodell der Kommunikationssicherheit
Das historische Beispiel mit Maria Stuart und Anthony Babington illustriert ein dreischichtiges Sicherheitsmodell:
| Schicht | Beschreibung | Akteure |
|---|---|---|
| Conspiracy Layer | Inhalt der geheimen Kommunikation | Maria Stuart ↔ Babington |
| Carrier Layer | Übertragungsweg | Gilbert Gifford als Bote |
| Beer Barrel Layer | Physisches Medium | Bierfass als Versteck |
Security der einzelnen Schichten
Beer Barrel Layer: Walsingham kompromittierte das physische Medium (fing die Nachrichten ab).
Carrier Layer: Gilbert Gifford arbeitete als Doppelagent für Walsingham.
Conspiracy Layer:
- Verschlüsselung: Substitutionschiffre (angreifbar durch Frequenzanalyse)
- Authenticated Encryption: AES-CTR-Mode + GMAC
- Schlüsselaustausch: Diffie-Hellman (
a^x mod p↔a^y mod p) - Problem: Man-in-the-Middle-Angriff möglich ohne Authentifizierung
- Lösung: Public Key + digitale Signatur
Sign(sk_A, M)+ Zertifikate (PKI)
8. Transport Layer Security (TLS)
Ziel (RFC 8446, TLS 1.3)
Sicherer Kanal zwischen zwei kommunizierenden Parteien mit:
- Authentication: Server wird immer, Client optional authentifiziert
- Confidentiality: Daten nur für Endpunkte sichtbar
- Integrity: Manipulationen werden erkannt
Einordnung im OSI-Modell
TLS liegt zwischen Session/Presentation Layer (OSI 5/6) und Transport Layer (OSI 4):
Application → TLS/SSL → TCP/UDP → Network → Data Link → Physical
TLS-Komponenten
- Handshake Layer: Handshake, Alert, Change Cipher Spec (nur für Kompatibilität in v1.3)
- Record Layer: Fragmentierung, Kompression (entfernt in v1.3), Authentifizierung, Verschlüsselung
TLS Handshake (vereinfacht)
Client Server
ClientHello (key_share, etc.) →
← ServerHello, {EncryptedExtensions},
{Certificate}, {CertificateVerify}, {Finished}
{Certificate}, {CertificateVerify}, {Finished} →
[Application Data] ↔ [Application Data]
TLS Key Exchange Modi
- (EC)DHE – Diffie-Hellman über finite Felder oder elliptische Kurven
- PSK-only – Pre-Shared Key
- PSK mit (EC)DHE
SSL/TLS Versionshistorie
| Version | Jahr | Status |
|---|---|---|
| SSL 1.0 | – | Unveröffentlicht |
| SSL 2.0 | 1995 | Deprecated 2011 |
| SSL 3.0 | 1996 | Deprecated 2015 |
| TLS 1.0 | 1999 | Deprecated 2021 |
| TLS 1.1 | 2006 | Deprecated 2021 |
| TLS 1.2 | 2008 | Noch in Nutzung |
| TLS 1.3 | 2018 | Aktuell |
Bekannte TLS-Angriffe
"Attacks always get better; they never get worse"
BEAST, POODLE, LOGJAM, RC4 (Harmful?), Heartbleed, LUCKY 13, Raccoon Attack, ALPACA Attack, TLS-RENEGOTIATION, u.v.m.
Cipher-Sicherheit (Auswahl)
- Sicher in TLS 1.3: AES-GCM, AES-CCM, ChaCha20-Poly1305
- Unsicher/Entfernt: AES-CBC (abhängig von Mitigations), 3DES, RC4 (verboten in TLS 1.1+)
- Datenintegrität in TLS 1.3: Nur AEAD
TLS-Anwendungsprotokolle
| Protokoll | Beschreibung |
|---|---|
| HTTPS | HTTP über TLS/TCP |
| SMTPS | Sicheres Mail-Transfer-Protokoll |
| POP3S | Post-Office-Protokoll (sicher) |
| IMAPS | Internet Message Access (sicher) |
| FTPS | File Transfer (sicher) |
| SIPS | Session Initiation (sicher) |
9. QUIC
QUIC kombiniert TLS-Sicherheit mit UDP-basiertem Transport und ersetzt den TCP+TLS-Stack:
Traditionell: HTTP/2 | TLS | TCP | IP
QUIC: HTTP/2 | QUIC (Multistream, Encryption, Congestion, Reliability) | UDP | IP
QUIC-Vorteile: Eingebettete Verschlüsselung, Multistream, schnellerer Handshake (0-RTT möglich), bessere Performance bei Paketverlusten.
10. IPSec
IPSec arbeitet auf Layer 3 (Network Layer) des OSI-Modells.
Modi
Tunnel Mode: Das gesamte ursprüngliche IP-Paket wird verschlüsselt und in ein neues IP-Paket eingebettet (Gateway zu Gateway).
Protokolle
| Header | Bietet |
|---|---|
| AH (Authentication Header) | Authentifizierung des gesamten Pakets (kein Verschlüsseln) |
| ESP (Encapsulating Security Payload) | Verschlüsselung + Authentifizierung der Daten |
11. Quantenmechanik – Grundlagen
Relevante Phänomene
- Nondeterminismus: Messung eines Quantenzustands ergibt zufälliges, nicht vorhersagbares Ergebnis → echte Zufallszahlengeneratoren (QRNG)
- Superposition: Ein Qubit kann gleichzeitig
|0⟩und|1⟩sein:1/√2 |alive⟩ + 1/√2 |dead⟩ - Verschränkung (Entanglement): Zwei Qubits sind korreliert, auch über Distanz:
|↑⟩|↑⟩ + |↓⟩|↓⟩ - Unschärfe (Uncertainty): Heisenbergsche Unschärferelation – Ort und Impuls nicht gleichzeitig exakt messbar
12. Quantum Key Distribution – BB84 Protokoll
Erfinder: Charles Bennett & Gilles Brassard (1984)
Ablauf
- Alice wählt zufällige Bits und kodiert sie in Photonen (mit zufällig gewählten Basen)
- Bob misst die Photonen mit zufällig gewählten Basen
- Alice und Bob vergleichen ihre Basen (öffentlich)
- Bits mit übereinstimmenden Basen ergeben den Sifted Key
Sicherheit: Jede Messung durch Eve verändert den Quantenzustand (Messung = Störung). In 25 % der Fälle führt Eves Abhören zu einem Bitfehler → Eve ist nachweisbar.
No-Cloning-Theorem
Quantenzustände können nicht kopiert werden → klassische Repeater funktionieren nicht → Lösung: Quantum Repeater
Satellite-QKD
BB84 über Satelliten ermöglicht Quantenkommunikation über >1000 km (z.B. Micius-Satellit).
13. Quantencomputer & Auswirkungen auf Kryptographie
Shors Algorithmus
Peter Shor (1994): Kann ganzzahlige Faktorisierung und diskrete Logarithmen in polynomialer Zeit lösen.
Konsequenz:
| Algorithmus | Verwendung | Pre-Shor-Sicherheit | Post-Shor-Sicherheit |
|---|---|---|---|
| RSA-3072 | Verschlüsselung/Signatur | 128 Bit | keine |
| DH-3072 | Schlüsselaustausch | 128 Bit | keine |
| DSA-3072 | Signatur | 128 Bit | keine |
| 256-bit ECDH/ECDSA | Schlüsselaustausch/Signatur | 128 Bit | keine |
Grovers Algorithmus
Lov Grover: Findet eine Nadel im Heuhaufen der Größe N in O(√N) Schritten.
Konsequenz: Halbierung der effektiven Schlüssellänge symmetrischer Verfahren.
| Algorithmus | Pre-Grover-Sicherheit | Post-Grover-Sicherheit |
|---|---|---|
| AES-128 | 128 Bit | 64 Bit |
| AES-256 | 256 Bit | 128 Bit ✓ |
| SHA-256 | 256 Bit* | 128 Bit* ✓ |
| SHA-3 | 256 Bit* | 128 Bit* ✓ |
Simons Algorithmus
Löst Simons Problem exponentiell schneller als klassische Algorithmen:
- Klassisch:
Ω(2^(n/2))Anfragen - Quantum:
O(n)Anfragen
Im Quantenzeitalter gebrochene Konstruktionen
Durch quantenbasierte Angriffe (insbesondere via Simons Algorithmus) sind viele klassische Konstruktionen gebrochen:
- Even-Mansour
- 3-Runden-Feistel
- LRW
- CBC-MAC
- GMAC
- PMAC
- GCM
- OCB
- … (und viele weitere)
⚠️ Dies motiviert die Notwendigkeit von Post-Quantum Cryptography (PQC).
Überblick: Key Takeaways
| Thema | Kernaussage |
|---|---|
| Digitale Signaturen | Bieten Integrität, Authentizität, Non-Repudiation |
| RSA-Signatur | Ohne Padding anfällig für Existential Forgery |
| RSA-PSS | Sicheres Padding schützt vor Forgery-Angriffen |
| ECDSA | Effizientere Alternative zu RSA auf Basis elliptischer Kurven |
| Zertifikate (X.509) | PKI löst das Problem der Public-Key-Authentizität |
| IBE | Identität als öffentlicher Schlüssel, PKG verteilt private Schlüssel |
| TLS 1.3 | Modernes Protokoll: AEAD, keine Kompression, PFS durch (EC)DHE |
| QUIC | TLS-Sicherheit direkt in UDP eingebettet, schnellerer Verbindungsaufbau |
| IPSec | Sicherheit auf Netzwerkschicht, Tunnel- und Transportmodus |
| Quantenmechanik | Nondeterminismus, Superposition, Verschränkung als Grundlage für QKD |
| BB84 | Quantenschlüsselaustausch, sicher durch No-Cloning-Theorem |
| Shors Algorithmus | Bricht RSA, DH, ECDH, ECDSA vollständig |
| Grovers Algorithmus | Halbiert effektive Schlüssellänge symmetrischer Verfahren |
| Post-Quantum-Krypto | Notwendigkeit neuer quantenresistenter Verfahren |
Tags: #Kryptographie #TLS #Signaturen #RSA #ECDSA #Zertifikate #IBE #QuantumCryptography #BB84 #PostQuantum #HWR