mirror of
https://github.com/theoleuthardt/hwr-notes.git
synced 2026-06-06 01:11:08 +00:00
338 lines
No EOL
20 KiB
Markdown
338 lines
No EOL
20 KiB
Markdown
# Zusammenfassung Vorlesung 4
|
||
**Hochschule für Wirtschaft und Recht Berlin – 09.03.2026** **Folien 79–139 (61 Folien)**
|
||
|
||
---
|
||
## 1. Komplexitätsklassen-Übersicht (Folien 79, 101)
|
||
Die Vorlesung beginnt mit einem Venn-Diagramm der wichtigsten Komplexitätsklassen und ordnet kryptographische Probleme darin ein:
|
||
|
||
- **P** liegt im Zentrum als Klasse der effizient lösbaren Probleme.
|
||
- **NP** und **Co-NP** umschließen P und überlappen sich teilweise.
|
||
- **PP** enthält NP und beherbergt MAJSAT.
|
||
- **PSPACE** ist die äußerste dargestellte Klasse und umfasst alle anderen, inklusive LEMMINGS.
|
||
- **BQP** (Bounded-Error Quantum Polynomial Time) erstreckt sich als grüne Fläche über mehrere Klassen hinweg – es überlappt mit NP, Co-NP und ragt teils über P hinaus.
|
||
- **Co-AM** umfasst große Teile von Co-NP und BQP.
|
||
|
||
**Einordnung kryptographischer Probleme:**
|
||
- **DLOG** (Diskreter Logarithmus) und **RSA** liegen in der Schnittmenge von NP ∩ Co-NP, nahe an P.
|
||
- **SAT** liegt in NP (aber außerhalb von P, sofern P ≠ NP).
|
||
- **Co-SAT** liegt in Co-NP.
|
||
- **GI** (Graph-Isomorphismus) liegt in NP ∩ Co-AM ∩ BQP.
|
||
- **MAJSAT** liegt in PP.
|
||
- **LEMMINGS** liegt in PSPACE, aber außerhalb von NP und Co-NP.
|
||
|
||
Auf Folie 101 wird das gleiche Diagramm erneut gezeigt, nun ergänzt um **GapSVP_γ** (das zentrale Gitterproblem). Je nach Approximationsfaktor γ wandert GapSVP_γ zwischen verschiedenen Komplexitätsklassen: Bei γ ~ 1 liegt es nahe an NP-hart, bei γ ~ √n oder größer nähert es sich P an. Die dargestellten Werte sind γ ~ 1, 2^{(log n)^{1-ε}}, √(n/log n), √n und 2^{n(log log n)²/log n}.
|
||
|
||
---
|
||
## 2. PQC-Strategien – Überblick (Folie 80)
|
||
Post-Quantum Cryptography (PQC) verfolgt verschiedene Ansätze, um Kryptographie gegen Quantencomputer abzusichern:
|
||
|
||
- **Lattice-based** (Gitter-basiert)
|
||
- **Code-based** (Code-basiert)
|
||
- **Multivariate polynomials** (Multivariate Polynome)
|
||
- **Isogenies** (Isogenien)
|
||
- **Hash-based** (Hash-basiert)
|
||
- **Trotziges Kind** (humorvolle Bezeichnung für den „PQ-RSA"-Ansatz)
|
||
- **MPC in the Head**
|
||
- und weitere
|
||
|
||
---
|
||
|
||
## 3. „Trotziges Kind" – PQ-RSA (Folie 81)
|
||
Der Ansatz „Trotziges Kind" beschreibt die Idee, RSA einfach mit extrem großen Parametern weiterzuverwenden, anstatt auf neue Algorithmen umzusteigen:
|
||
|
||
- **PQ-RSA**: RSA mit einem Modulus von ca. **1 Terabyte**, zusammengesetzt als Produkt von **4096-Bit-Primzahlen**.
|
||
- **Kosten für einen Quantenangreifer**: ca. **2^100** Operationen.
|
||
- **Kosten für den Besitzer des geheimen Schlüssels**: ca. **2^50** Operationen.
|
||
|
||
Dieser Ansatz ist zwar theoretisch sicher, aber aufgrund der enormen Schlüsselgrößen praktisch kaum umsetzbar.
|
||
|
||
---
|
||
## 4. Hash-basierte Kryptographie (Folien 82–85)
|
||
|
||
### Grundprinzip (Folie 82)
|
||
Bei hash-basierten Signaturen besteht das Schlüsselpaar aus:
|
||
- **Öffentlicher Schlüssel**: Paar von Hash-Werten h(x) || h(y)
|
||
- **Privater Schlüssel**: Das Paar (x, y) selbst
|
||
|
||
### Merkle-Baum (Folie 83)
|
||
Ein binärer Hash-Baum wird dargestellt mit Ebenen j = 0 (Blätter) bis j = h (Wurzel). Die Blätter enthalten Einmal-Signaturen (z. B. Lamport- oder Winternitz-Signaturen). Die inneren Knoten werden durch Hashing ihrer Kindknoten berechnet. Ein Authentifizierungspfad (grau markierte Knoten) ermöglicht die Verifikation.
|
||
|
||
### XMSS-Konstruktion (Folie 84)
|
||
Die erweiterte Darstellung zeigt die Konstruktion des Knotens N_{i,j}:
|
||
- Zwei Kindknoten N_{2i,j-1} und N_{2i+1,j-1} werden zusammen mit einer Bitmaske Q_j per XOR verknüpft.
|
||
- Das Ergebnis wird gehasht (H), um den Elternknoten zu erzeugen.
|
||
|
||
### SPHINCS-Hypertree (Folie 85)
|
||
SPHINCS verwendet eine hierarchische Baumstruktur:
|
||
- Mehrere TREE-Ebenen (TREE_{d-1}, TREE_{d-2}, ..., TREE_0) mit jeweils Höhe h/d.
|
||
- Jede Ebene signiert die nächste mit einer Winternitz-Signatur (σ_{W,i}).
|
||
- Am Ende steht ein HORST-Baum (Höhe log t) mit der eigentlichen Nachrichtensignatur σ_H.
|
||
|
||
---
|
||
|
||
## 5. Isogenien-basierte Kryptographie (Folien 86–89)
|
||
|
||
### Elliptische Kurven (Folie 86)
|
||
Grundlage ist die Punktaddition auf elliptischen Kurven: Gegeben zwei Punkte P und Q auf einer Kurve, ergibt die geometrische Konstruktion (Gerade durch P und Q, Schnittpunkt mit der Kurve, Spiegelung) den Punkt R = P + Q.
|
||
|
||
### Skalare Multiplikation (Folie 87)
|
||
Die Abbildung [n]: E → E multipliziert einen Punkt n-mal mit sich selbst: [n]P = P + P + ... + P (n-mal). Als Beispiel wird die Kurve E: y² = x³ + x gezeigt, für die die Verdopplungsabbildung [2] durch eine explizite rationale Funktion gegeben ist.
|
||
|
||
### Isogenien (Folie 88)
|
||
Eine Isogenie φ: E → E' ist ein Gruppenhomomorphismus zwischen elliptischen Kurven, gegeben durch rationale Funktionen: φ(x,y) = (f₁(x,y)/g₁(x,y), f₂(x,y)/g₂(x,y)).
|
||
|
||
### SIDH-Schlüsselaustausch (Folie 89)
|
||
Das Protokoll funktioniert analog zu Diffie-Hellman, aber mit Isogenien statt Exponentialfunktionen:
|
||
|
||
- Alice sendet (Φ_A(E), Δ_A) an Bob.
|
||
- Bob sendet (Φ_B(E), Δ_B) an Alice.
|
||
- Beide berechnen denselben j-Invarianten als gemeinsames Geheimnis: j(Φ'_A(Φ_B(E))) = k = j(Φ'_B(Φ_A(E))).
|
||
|
||
---
|
||
|
||
## 6. Multivariate Polynome (Folien 90–92)
|
||
|
||
### Hilberts 10. Problem (Folie 90)
|
||
Die Folie zeigt ein Porträt von Hilbert und zitiert sein 10. Problem (auf Deutsch): Gegeben eine diophantische Gleichung, soll ein Verfahren angegeben werden, das in endlich vielen Schritten entscheidet, ob sie ganzzahlig lösbar ist. (Dieses Problem ist bekanntlich unentscheidbar – Matijasevic, 1970.)
|
||
|
||
### MQ-Problem (Folie 91)
|
||
|
||
Das System besteht aus m quadratischen Polynomen in n Variablen über einem endlichen Körper 𝔽_q:
|
||
|
||
p^(k)(x₁,...,xₙ) = Σ γ_{ij}^(k) xᵢxⱼ + Σ β_i^(k) xᵢ + α^(k)
|
||
|
||
Das **MQ-Problem** (Multivariate Quadratic): Gegeben eine quadratische Polynomabbildung 𝒫: 𝔽_q^n → 𝔽_q^m, finde x ∈ 𝔽_q^n mit 𝒫(x) = 0. Dieses Problem ist NP-hart.
|
||
|
||
### Oil-and-Vinegar-Konstruktion (Folie 92)
|
||
Die Signatur basiert auf einer Trapdoor-Struktur:
|
||
|
||
- **Öffentlicher Schlüssel**: Die zusammengesetzte Abbildung 𝒫(x) = h(m), wobei 𝒫 = T ∘ 𝒬 ∘ S.
|
||
- T und S sind geheime affine Transformationen (invertierbar).
|
||
- 𝒬 ist ein System mit spezieller Struktur, das effizient invertierbar ist.
|
||
- Die „Oil-and-Vinegar"-Variablen (symbolisiert durch Öl- und Essigflaschen) erzeugen die Trapdoor.
|
||
|
||
---
|
||
|
||
## 7. Code-basierte Kryptographie (Folien 93–95)
|
||
|
||
### Binary Symmetric Channel (Folie 93)
|
||
Die Folie zeigt ein Porträt von Claude Shannon und das Modell eines binären symmetrischen Kanals: Bits werden mit Wahrscheinlichkeit (1-p) korrekt übertragen und mit Wahrscheinlichkeit p verfälscht.
|
||
|
||
### Syndrome-Decoding / Coset Weights (Folie 94)
|
||
|
||
Grundlegende Konstruktion:
|
||
- Ein Codewort c gehört zum Code 𝒞 ⊆ 𝔽₂ⁿ genau dann, wenn cH = 0 (H ist die Prüfmatrix).
|
||
- Ein empfangenes Wort (c + e) hat das Syndrom s = eH.
|
||
- **Coset-Weights-Problem**: Gegeben s und H, finde x mit Gewicht ν(x) ≤ t und xH = s.
|
||
|
||
### McEliece-Kryptosystem (Folie 95)
|
||
- **Öffentlicher Schlüssel**: H* = PHS, wobei P eine Permutationsmatrix und S eine invertierbare Matrix ist.
|
||
- **Verschlüsselung**: c = mH*
|
||
- **Entschlüsselung**: m = δ_H(cS⁻¹)P⁻¹, wobei δ_H der effiziente Dekodieralgorithmus für den geheimen Code ist.
|
||
|
||
Die Sicherheit beruht darauf, dass das allgemeine Dekodierungsproblem NP-hart ist, während der Besitzer von P, H und S effizient dekodieren kann.
|
||
|
||
---
|
||
## 8. Gitter-basierte Kryptographie (Folien 96–103)
|
||
|
||
### Gitter-Grundlagen (Folien 96–99)
|
||
Ein Gitter wird durch Basisvektoren b₁ und b₂ aufgespannt. Die Punkte bilden ein regelmäßiges Muster im Raum.
|
||
|
||
- **Folie 97**: Das Closest Vector Problem (CVP) wird illustriert – ein Punkt (rot markiert) nahe einem Gitterpunkt soll dem nächsten Gitterpunkt zugeordnet werden.
|
||
- **Folie 98**: Basisreduktion wird gezeigt – der Vektor b₁ - b₂ (rot) ist kürzer als b₁ und liefert eine „bessere" Basis.
|
||
- **Folie 99**: Das Shortest Vector Problem (SVP) wird visualisiert – der kürzeste Nicht-Null-Vektor im Gitter liegt in einem Ring (Donut-förmige Region) um den Ursprung.
|
||
|
||
### GapSVP_γ (Folie 100)
|
||
Das Entscheidungsproblem GapSVP_γ ist formal definiert:
|
||
|
||
- **Eingabe**: Basis **B**, Distanz d.
|
||
- **Ausgabe**: „Yes", falls λ(**B**) ≤ d; „No", falls λ(**B**) > γd; sonst beliebig.
|
||
|
||
### Worst-Case zu Average-Case Reduktion (Folie 102)
|
||
Ein zentraler Vorteil gitter-basierter Kryptographie: Es existieren **Worst-Case-zu-Average-Case-Reduktionen** von GapSVP_γ zu den Problemen **LWE** (Learning With Errors) und **SIS** (Short Integer Solution) für γ = poly(n). Das bedeutet: Wenn LWE/SIS im Durchschnitt leicht wäre, wäre GapSVP im schlimmsten Fall leicht – was als unwahrscheinlich gilt.
|
||
|
||
### Regev's Public-Key-Kryptosystem (Folie 103)
|
||
Ein konkretes Beispiel basierend auf LWE:
|
||
|
||
- **Privater Schlüssel**: s ∈ ℤ_q^n, zufällig gewählt.
|
||
- **Öffentlicher Schlüssel**: m Paare (aᵢ, bᵢ) mit bᵢ = ⟨aᵢ, s⟩/q + eᵢ, wobei eᵢ aus einer Fehlerverteilung χ stammt und 𝕋 = ℝ/ℤ.
|
||
- **Verschlüsselung** eines Bits x: Wähle eine zufällige Teilmenge S ⊂ [m], berechne Enc(x) = (Σᵢ∈S aᵢ, x/2 + Σᵢ∈S bᵢ).
|
||
- **Entschlüsselung**: Prüfe, ob b - ⟨a, s⟩/q näher an 0 oder an 1/2 liegt.
|
||
|
||
Das LWE-Problem besteht darin, s aus den verrauschten Skalarprodukt-Samples zu bestimmen.
|
||
|
||
---
|
||
|
||
## 9. Wie dringend ist die Quantenbedrohung? (Folien 104–107)
|
||
### Moscas Theorem (Folie 105)
|
||
Drei Zeitparameter werden definiert:
|
||
|
||
- **x**: Wie lange muss die Verschlüsselung sicher bleiben?
|
||
- **y**: Wie lange dauert die Umstellung bestehender Infrastruktur auf quantensichere Lösungen?
|
||
- **z**: Wie lange dauert es, bis ein großskaliger Quantencomputer gebaut wird?
|
||
|
||
**Moscas Theorem**: Falls **x + y > z**, dann sollte man sich **jetzt** Sorgen machen. Denn wenn die Umstellungszeit plus die Geheimhaltungsdauer die Zeit bis zum Quantencomputer übersteigt, sind heutige Daten bereits gefährdet („Harvest now, decrypt later").
|
||
|
||
### Gartner Hype Cycles (Folien 106–107)
|
||
- **2017**: Quantum Computing befindet sich am Anfang des „Innovation Trigger", mit einer geschätzten Reife von „mehr als 10 Jahren".
|
||
- **2018**: Quantum Computing ist weiter aufgestiegen (Richtung „Peak of Inflated Expectations"), die Reifeschätzung bleibt bei „5–10 Jahren".
|
||
|
||
---
|
||
|
||
## 10. NIST PQC-Standardisierung (Folie 108)
|
||
- **1. Runde** startete im November 2017 mit **69 Kandidaten**.
|
||
- **Ausgewählte Algorithmen** (2022):
|
||
- **CRYSTALS-Kyber** – Key Encapsulation Mechanism (KEM)
|
||
- **CRYSTALS-Dilithium** – Digitale Signatur (DSA)
|
||
- **Falcon** – Digitale Signatur (DSA)
|
||
- **SPHINCS+** – Digitale Signatur (DSA)
|
||
- **2022–2024**: Entwürfe der Standards wurden veröffentlicht.
|
||
|
||
---
|
||
|
||
## 11. Drei Dimensionen des Datenschutzes (Folie 109)
|
||
Daten existieren in drei Zuständen, die jeweils unterschiedliche Schutzziele erfordern:
|
||
|
||
- **Data at rest** (Daten in Ruhe): Vertraulichkeit, Integrität, ...
|
||
- **Data in transit** (Daten in Übertragung): Vertraulichkeit, Integrität, Authentizität, ...
|
||
- **Data in use** (Daten in Verarbeitung): Vertraulichkeit, ...
|
||
|
||
Das Modell zeigt den Datenfluss: Quelldaten (Input Parties) → Statistische Analyse (Computing Parties) → Statistische Produkte (Result Parties).
|
||
|
||
---
|
||
|
||
## 12. Weitere Schutzziele (Folien 110–111)
|
||
Über die klassischen Schutzziele hinaus gibt es:
|
||
|
||
- **Input Privacy**: Schutz der Eingabedaten der Datenlieferanten.
|
||
- **Output Privacy**: Schutz der Ergebnisse vor unberechtigtem Zugriff.
|
||
- **Policy Enforcement**: Durchsetzung von Nutzungsregeln.
|
||
|
||
Das Diagramm auf Folie 111 zeigt diese drei Ziele im Kontext des Datenflusses: Input Privacy umschließt die Quelldaten, Output Privacy die statistischen Produkte, und Policy Enforcement umrahmt das Gesamtsystem.
|
||
|
||
---
|
||
|
||
## 13. Privacy Goals and Technologies (Folie 112)
|
||
Ein Venn-Diagramm zeigt die Beziehung zwischen den drei Privacy-Zielen und Technologien:
|
||
|
||
- **Policy Enforcement** wird durch _Non-Disclosure Agreements_ (NDAs) und ähnliche vertragliche Maßnahmen adressiert.
|
||
- **Input Privacy** und **Output Privacy** überlappen sich im Bereich der _Aggregation_ (statistische Zusammenfassung als Datenschutzmaßnahme).
|
||
|
||
---
|
||
|
||
## 14. Homomorphe Verschlüsselung (Folien 113–125)
|
||
### Grundidee (Folien 113–117)
|
||
Die zentrale Frage: „Kann man nicht auch auf verschlüsselten Daten rechnen?"
|
||
|
||
Homomorphe Verschlüsselung ermöglicht es, eine Funktion f auf verschlüsselten Daten auszuführen, ohne die Daten zu entschlüsseln:
|
||
|
||
- Aus **Enc(m)** wird direkt **Enc(f(m))** berechnet.
|
||
- Die Kerngleichung: **Enc(m₁) ⋆ Enc(m₂) = Enc(m₁ ∘ m₂)**, wobei ⋆ eine Operation auf Chiffretexten und ∘ die entsprechende Operation auf Klartexten ist.
|
||
|
||
### Klassifizierung (Folie 118)
|
||
Es gibt drei Stufen homomorpher Verschlüsselung, dargestellt als Trade-off zwischen Performance und Funktionalität:
|
||
|
||
- **PHE** (Partially Homomorphic Encryption): Unterstützt **eine Operation** (z. B. nur Addition oder nur Multiplikation), diese aber beliebig oft. Höchste Performance.
|
||
- **SWHE** (Somewhat Homomorphic Encryption): Unterstützt **zwei Operationen**, mindestens eine davon ist in der Anzahl beschränkt.
|
||
- **FHE** (Fully Homomorphic Encryption): Volle, unbeschränkte Funktionalität für beliebige Berechnungen. Niedrigste Performance.
|
||
|
||
### Beispiel: RSA als PHE (Folie 119)
|
||
RSA ist multiplikativ homomorph:
|
||
|
||
- E(M₁) · E(M₂) = E(M₁ · M₂)
|
||
- Das Produkt zweier Chiffretexte entspricht dem Chiffretext des Produkts der Klartexte.
|
||
- RSA unterstützt also beliebig viele Multiplikationen auf Chiffretexten.
|
||
|
||
### Beispiel: Paillier als PHE (Folien 120–121)
|
||
Paillier ist **additiv homomorph**:
|
||
|
||
- Schlüsselerzeugung: n = p·q, g = n+1, λ = φ(n), μ = φ(n)⁻¹ mod n.
|
||
- Verschlüsselung: c = g^m · r^n mod n².
|
||
- Entschlüsselung: m = L(c^λ mod n²) · μ mod n, mit L(x) = (x-1)/n.
|
||
- **Homomorphe Eigenschaft**: D(E(m₁,r₁) · E(m₂,r₂) mod n²) = m₁ + m₂ mod n.
|
||
- Das Produkt zweier Chiffretexte entspricht der **Summe** der Klartexte.
|
||
|
||
### Beispiel: SWHE (Folien 122–123)
|
||
Ein einfaches SWHE-Schema wird vorgestellt:
|
||
|
||
- **Verschlüsselung** eines Bits b: c₁ = b₁ + 2r₁ + r₂p, wobei b das Nachrichtenbit, r₁ und r₂ zufällige Werte und p eine geheime Primzahl sind.
|
||
- **Entschlüsselung**: Erst modulo p (entfernt r₂p), dann modulo 2 (entfernt 2r₁), ergibt b.
|
||
- **Addition**: c₁ + c₂ = b₁ + b₂ + 2(r₁ + s₁) + p(r₂ + s₂) → Berechnung in GF(2), also XOR der Klartextbits.
|
||
- **Multiplikation**: c₁ · c₂ = b₁b₂ + 2(…) + p(…) → AND der Klartextbits.
|
||
- **Einschränkung**: Die Fehlerwerte wachsen bei Multiplikation, daher ist die Tiefe der Berechnungen beschränkt (Anforderungen an die Intervalle der r's und s's).
|
||
|
||
### HE vs. Klassischer Ansatz (Folien 124–125)
|
||
**Klassisch** (Folie 124): Daten werden verschlüsselt übertragen, aber für die Verarbeitung entschlüsselt. Der Server sieht die Klartextdaten.
|
||
|
||
**Homomorphe Verschlüsselung** (Folie 125): Daten bleiben durchgehend verschlüsselt. Der Evaluationsalgorithmus arbeitet auf verschlüsselten Daten und liefert verschlüsselte Ergebnisse zurück. Nur der Datenbesitzer kann mit seinem privaten Schlüssel entschlüsseln. Mehrere verschlüsselte Datensätze können kombiniert werden, ohne dass der Verarbeiter die Rohdaten sieht.
|
||
|
||
---
|
||
|
||
## 15. Multi-Party Computation – MPC (Folien 126–132)
|
||
### Millionärsproblem (Folie 126)
|
||
|
||
Die Motivationsfrage (in Anlehnung an Yaos Millionärsproblem): „Wie können Lucy und Linus herausfinden, wer von beiden mehr Bonbons besitzt, ohne die Anzahl ihrer Bonbons preiszugeben?"
|
||
|
||
### Grundmodell (Folien 127–129)
|
||
- **Ideales Modell** (Folie 128): Beide Parteien senden ihre geheimen Eingaben A und B an eine vertrauenswürdige dritte Partei, die f(A, B) berechnet und das Ergebnis zurückgibt.
|
||
- **Reales Modell** (Folie 129): Die zentrale Frage: „Geht das auch ohne vertrauenswürdige dritte Partei?" – Ja, durch kryptographische Protokolle können die Parteien gemeinsam f(A, B) berechnen, ohne ihre Eingaben preiszugeben.
|
||
|
||
### Dating-Problem (Folien 130–132)
|
||
|
||
Ein weiteres anschauliches Beispiel: „Wie können Lucy und Linus herausfinden, ob beide zusammen zum Fasching gehen wollen, ohne sich ‚einen Korb' zu holen?"
|
||
|
||
**Lösung mit Spielkarten** (Folien 131–132):
|
||
- Lucy und Linus kodieren ihre Antwort (Ja/Nein) durch die Reihenfolge zweier Karten (Linus-Karte und Lucy-Karte):
|
||
- „Ja, ich will" → Linus-Karte links, Lucy-Karte rechts.
|
||
- „Auf keinen Fall" → Lucy-Karte links, Linus-Karte rechts.
|
||
- Die Karten werden verdeckt gelegt und dann aufgedeckt:
|
||
- Wenn beide „Ja" gewählt haben, ergibt sich ein bestimmtes Muster → „Lass uns zusammen gehen".
|
||
- In allen anderen Fällen kann keiner ableiten, was der andere gewählt hat → „Danke, und nichts für ungut".
|
||
|
||
---
|
||
|
||
## 16. Oblivious Transfer – OT (Folien 133–139)
|
||
|
||
### Definition nach Rabin (Folie 133)
|
||
Rabin definierte 1981 den „Oblivious Transfer": Eine Informationsübertragung, bei der der Sender nicht weiß, ob der Empfänger die Information tatsächlich erhalten hat.
|
||
|
||
### Drei Varianten (Folien 134–135)
|
||
- **Definition 1 (O.T.)**: Alice kennt ein Bit b. Bob erhält b mit Wahrscheinlichkeit 1/2. Bob weiß, ob er b erhalten hat. Alice weiß nicht, ob Bob b erhalten hat.
|
||
- **Definition 2 (1-out-of-2 O.T.)**: Alice kennt zwei Bits b₀ und b₁. Bob erhält genau eines davon (b_k), jeweils mit Wahrscheinlichkeit 1/2 für k=0 oder k=1. Bob weiß, welches er erhalten hat. Alice weiß nicht, welches Bob erhalten hat.
|
||
- **Definition 3 (p-O.T.)**: Wie Definition 1, aber Bob erhält b mit beliebiger Wahrscheinlichkeit p.
|
||
|
||
### Protokoll für 1-out-of-2 O.T. (Folie 136)
|
||
Ein konkretes Protokoll wird beschrieben: Alice und Bob einigen sich auf einen Sicherheitsparameter s. Alice nutzt wiederholte p-O.T.-Aufrufe, Bob teilt die Indizes in zwei Mengen U und V und sendet eine (möglicherweise vertauschte) Version an Alice. Alice berechnet daraus maskierte Versionen beider Bits, von denen Bob genau eines entschlüsseln kann.
|
||
|
||
### DH-basiertes O.T.-Protokoll (Folie 137)
|
||
Ein elegantes Protokoll auf Basis des Diffie-Hellman-Problems:
|
||
|
||
- Der Sender hat Eingabe (M₀, M₁), der Empfänger hat Auswahlbit c.
|
||
- Der Sender wählt a, sendet A = g^a.
|
||
- Der Empfänger wählt b und setzt B = g^b (falls c=0) oder B = Ag^b (falls c=1).
|
||
- Beide berechnen Schlüssel: Der Sender k₀ = H(B^a) und k₁ = H((B/A)^a); der Empfänger k_R = H(A^b).
|
||
- Der Empfänger kann genau M_c entschlüsseln, da k_R = k_c.
|
||
|
||
### Alternatives O.T.-Protokoll (Folie 138)
|
||
Ein weiteres Protokoll basierend auf Public-Key-Verschlüsselung, bei dem die Sicherheit darauf beruht, dass ein Chiffretext nicht von einem Nicht-Chiffretext unterschieden werden kann.
|
||
|
||
### Abschluss (Folie 139)
|
||
Die Vorlesung endet mit einem Zitat von Benjamin Franklin (1783): „À quoi bon l'enfant qui vient de naître?" – „Was nutzt das Kind, das gerade geboren wird?" – als philosophische Reflexion über den Nutzen neuer kryptographischer Primitive.
|
||
|
||
---
|
||
|
||
## Zusammenfassung der Kernthemen
|
||
|
||
|Thema|Kernaussage|
|
||
|---|---|
|
||
|Komplexitätsklassen|Kryptographische Sicherheit basiert auf der vermuteten Schwierigkeit bestimmter Probleme in NP|
|
||
|PQ-RSA|Theoretisch möglich, aber unpraktisch wegen Terabyte-großer Schlüssel|
|
||
|Hash-basiert|Sicherheit basiert nur auf Hashfunktionen; SPHINCS+ ist NIST-standardisiert|
|
||
|Isogenien|Eleganter Ansatz analog zu Diffie-Hellman, aber SIKE wurde 2022 gebrochen|
|
||
|Multivariate Polynome|MQ-Problem ist NP-hart; Oil-and-Vinegar als Trapdoor-Konstruktion|
|
||
|Code-basiert|McEliece-Kryptosystem seit 1978; basiert auf Syndrome-Decoding|
|
||
|Gitter-basiert|Stärkstes theoretisches Fundament durch Worst-Case-Reduktionen; CRYSTALS-Kyber/Dilithium standardisiert|
|
||
|Mosca-Theorem|x + y > z → jetzt handeln|
|
||
|Homomorphe Verschlüsselung|Rechnen auf verschlüsselten Daten; PHE → SWHE → FHE|
|
||
|Multi-Party Computation|Gemeinsame Berechnung ohne Preisgabe der Eingaben|
|
||
|Oblivious Transfer|Fundamentaler Baustein für MPC-Protokolle| |