MPC-Problem und Yao-Garbled-Circuits
Verstehen Sie sichere Berechnung für zwei Parteien mithilfe verschleierter boolescher Schaltkreise.
MPC-Problem und Yao-Garbled-Circuits ist eine kostenlose Cryptology Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cryptology Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cryptology Academy-Kurs umfasst insgesamt 4 Lektionen.
Das Problem der sicheren Mehrparteienberechnung
MPC ermöglicht es n Parteien, die jeweils eine private Eingabe x_i besitzen, gemeinsam f(x_1,...,x_n) zu berechnen, ohne ihre Eingaben einander offenzulegen – so, als hätte eine vertrauenswürdige dritte Partei die Berechnung durchgeführt.
Klassisches Beispiel: das Millionärsproblem
Yaos Millionärsproblem von 1982: Alice und Bob möchten herausfinden, wer reicher ist, ohne ihr Vermögen offenzulegen. Es gibt keine vertrauenswürdige dritte Partei. MPC löst dieses Problem mit kryptografischen Garantien.
Sicherheitsziele bei MPC
1. Vertraulichkeit: Die Parteien erfahren nur die Ausgabe und Informationen, die sich daraus ableiten lassen. 2. Korrektheit: Die Ausgabe ist korrekt, selbst wenn einige Parteien kompromittiert sind. 3. Es gibt Varianten für semi-honest und böswillige Angreifer.
Boolesche Schaltungen als Berechnungsmodell
Jede Funktion lässt sich als boolesche Schaltung aus (AND-, XOR- und NOT-)Gattern darstellen. MPC-Protokolle arbeiten häufig auf Schaltungsebene und werten jedes Gatter sicher aus.
Yaos Konstruktion verschleierter Schaltungen
Alice (Garblerin) weist jeder Leitung zwei zufällige Labels zu: eines für 0 und eines für 1. Sie verschlüsselt die Wahrheitstabelle jedes Gatters mit den Labels der Eingangsleitungen. Bob (Evaluator) erhält die Labels für seine Eingaben über Oblivious Transfer.
Auswertung verschleierter Gatter
Bob erhält verschleierte Tabellen (4 Verschlüsselungen pro AND-Gatter). Mit seinen Eingabe-Labels entschlüsselt er genau eine Zeile und erhält das Ausgabe-Label, ohne zu erfahren, ob es 0 oder 1 repräsentiert.
Optimierung durch Point-and-Permute
Fügen Sie jedem Label ein zufälliges „Auswahlbit“ hinzu. Bob verwendet die Auswahlbits, um die richtige Zeile der verschleierten Tabelle in O(1) zu finden, statt alle vier Entschlüsselungen auszuprobieren. Das reduziert den Berechnungsaufwand um den Faktor 4.
Optimierung durch Free-XOR
Kolesnikov und Schneider (2008): Wählen Sie einen globalen Offset Δ. Dann gilt für jede Leitung label_1 = label_0 ⊕ Δ. XOR-Gatter sind dadurch kostenlos (keine Verschlüsselung erforderlich), wodurch etwa 30 % Bandbreite eingespart werden.
Half-Gates: Minimale AND-Gatter
Zahur et al. (2015): Jedes AND-Gatter benötigt nur 2 Chiffrate (statt 4). Zusammen mit Free-XOR halbiert dies die Bandbreite gegenüber standardmäßigen verschleierten Schaltungen.
Verschleierung für zwei und mehrere Parteien
Klassische verschleierte Schaltungen sind für zwei Parteien ausgelegt. Erweiterungen für mehrere Parteien (z. B. das BMR-Protokoll) parallelisieren die Verschleierung über alle Parteien, erfordern jedoch eine Kommunikation von O(n²). Für kleine n ist das praktikabel.
Wissensabfrage
Wie erhält Bob im Protokoll der verschleierten Schaltung von Yao die Wire-Labels, die seinen privaten Eingabebits entsprechen?
Zusammenfassung der Lektion
MPC ermöglicht es Parteien, gemeinsam zu berechnen, ohne Eingaben offenzulegen. Verschleierte Schaltungen codieren boolesche Funktionen als verschlüsselte Wahrheitstabellen. Optimierungen (Free-XOR, Half-Gates, Point-and-Permute) machen sie praktikabel. OT übermittelt Bobs Eingabe-Labels vertraulich.
Häufig gestellte Fragen
Ist die Lektion „MPC-Problem und Yao-Garbled-Circuits“ kostenlos?
Ja — der vollständige Text von „MPC-Problem und Yao-Garbled-Circuits“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cryptology Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cryptology Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „MPC-Problem und Yao-Garbled-Circuits“?
Verstehen Sie sichere Berechnung für zwei Parteien mithilfe verschleierter boolescher Schaltkreise. Du übst Cryptology Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Cryptology Academy zu starten?
Keine Vorkenntnisse erforderlich. Cryptology Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „MPC-Problem und Yao-Garbled-Circuits“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Cryptology Academy-Lektion Code schreiben und ausführen?
Ja. Jede Cryptology Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- MPC-Problem und Yao-Garbled-Circuits
- GMW-Protokoll und Oblivious Transfer
- SPDZ und arithmetische MPC mit Secret Shares
- MPC-Anwendungen: Private Set Intersection und ML