In der Kryptographie ist die Fiat-Shamir-Heuristik (auch Fiat-Shamir-Transformation genannt ) ein Verfahren, um aus einem interaktiven Wissensnachweis eine digitale Signatur zu erstellen . Dadurch lässt sich eine Tatsache (z. B. die Kenntnis einer bestimmten geheimen Zahl) öffentlich beweisen, ohne die zugrundeliegenden Informationen preiszugeben. Das Verfahren geht auf Amos Fiat und Adi Shamir (1986) zurück. [ 1 ] Damit das Verfahren funktioniert, muss der ursprüngliche interaktive Beweis die Eigenschaft „öffentlich“ besitzen , d. h. die vom Prüfer verwendeten Zufallszahlen müssen während des gesamten Beweisprotokolls öffentlich sein.
Überblick
Die Heuristik wurde ursprünglich ohne Sicherheitsbeweis vorgestellt. Später bewiesen Pointcheval und Stern [ 2 ] ihre Sicherheit gegen Angriffe mit gewählter Nachricht im Random-Oracle-Modell , also unter der Annahme, dass Random Oracles existieren. Dieses Ergebnis wurde von Don, Fehr, Majenz und Schaffner [ 3 ] sowie gleichzeitig von Liu und Zhandry [ 4 ] auf das quantenzugängliche Random Oracle (QROM) verallgemeinert. Für den Fall, dass keine Random Oracles existieren, wurde die Unsicherheit der Fiat-Shamir-Heuristik von Shafi Goldwasser und Yael Tauman Kalai [ 5 ] bewiesen . Die Fiat-Shamir-Heuristik demonstriert somit eine wichtige Anwendung von Random Oracles. Allgemeiner kann die Fiat-Shamir-Heuristik auch als Umwandlung eines interaktiven Wissensbeweises mit öffentlichen Coins in einen nicht-interaktiven Wissensbeweis betrachtet werden . Wird der interaktive Beweis als Identifikationswerkzeug verwendet, kann die nicht-interaktive Version direkt als digitale Signatur eingesetzt werden, indem die Nachricht als Teil der Eingabe für das Random Oracle verwendet wird. [ 6 ]
Beispiel
Für den unten beschriebenen Algorithmus sollten die Leser mit den multiplikativen Gruppen vertraut sein , wobei q eine Primzahl ist, sowie mit dem Eulerschen Phi-Funktionssatz über die Eulersche Phi-Funktion φ .
Hier ist ein interaktiver Beweis für das Wissen über einen diskreten Logarithmus in , basierend auf der Schnorr-Signatur . [ 7 ] Die öffentlichen Werte sind und ein Generator g von , während der geheime Wert der diskrete Logarithmus von y zur Basis g ist .
- Peggy möchte Victor, dem Prüfer, beweisen, dass sie weiß, wie man befriedigt, ohne etwas preiszugeben .
- Peggy wählt zufällig eine Zahl aus , berechnet das Ergebnis und sendet es an Victor.
- Victor wählt zufällig eine Zahl aus und schickt sie an Peggy.
- Peggy berechnet das Ergebnis und meldet es Victor zurück.
- Victor prüft, ob . Dies trifft zu, weil und .
Die Fiat-Shamir-Heuristik ermöglicht es, den interaktiven Schritt 3 durch einen nicht-interaktiven Zufallsorakelzugriff zu ersetzen . In der Praxis kann stattdessen eine kryptografische Hash-Funktion verwendet werden . [ 8 ]
- Peggy möchte beweisen, dass sie so viel weiß, ohne es preiszugeben .
- Peggy wählt zufällig eine Zahl aus und berechnet sie .
- Peggy berechnet , wobei eine kryptografische Hash-Funktion ist.
- Peggy berechnet . Der resultierende Beweis ist das Paar .
- Jeder kann diesen Beweis verwenden, um zu berechnen und zu überprüfen, ob .
Wenn der unten verwendete Hashwert nicht vom (öffentlichen) Wert von y abhängt , wird die Sicherheit des Schemas geschwächt, da ein böswilliger Beweiser dann einen bestimmten Wert t wählen kann , sodass das Produkt cx bekannt ist. [ 9 ]
Erweiterung dieser Methode
Solange mit den beiden Parteien bekannten Daten ein fester Zufallsgenerator konstruiert werden kann, kann jedes interaktive Protokoll in ein nicht-interaktives umgewandelt werden.
Siehe auch
- Gabellemma
- Zufallsorakelmodell
- Nicht-interaktiver Zero-Knowledge-Beweis
- eine Anwendung im anonymen Veto-Netzwerk
Referenzen
- ^ Fiat, Amos; Shamir, Adi (1987). „Wie man sich selbst beweist: Praktische Lösungen für Identifikations- und Signaturprobleme“. Advances in Cryptology — CRYPTO’ 86. Lecture Notes in Computer Science. Band 263. Springer Berlin Heidelberg. S. 186–194 . doi : 10.1007/3-540-47721-7_12 . ISBN 978-3-540-18047-0Die
- ^ Pointcheval, David; Stern, Jacques (1996). „Sicherheitsbeweise für Signaturverfahren“. Advances in Cryptology — EUROCRYPT '96 . Lecture Notes in Computer Science. Band 1070. Springer Berlin Heidelberg. S. 387–398 . doi : 10.1007/3-540-68339-9_33 . ISBN 978-3-540-61186-8Die
- ^ Don, Jelle; Fehr, Serge; Majenz, Christian; Schaffner, Christian (2019). „Sicherheit der Fiat-Shamir-Transformation im Quanten-Random-Oracle-Modell“. Advances in Cryptology – CRYPTO 2019. Lecture Notes in Computer Science. Band 11693. Springer Cham. S. 356–383 . arXiv : 1902.07556 . Bibcode : 2019arXiv190207556D . doi : 10.1007/978-3-030-26951-7_13 . ISBN 978-3-030-26950-0S2CID 67769879 .
- ^ Liu, Qipeng; Zhandry, Mark (2019). „Revisiting Post-quantum Fiat-Shamir“. Advances in Cryptology – CRYPTO 2019. Lecture Notes in Computer Science. Band 11693. Springer Cham. S. 326–355 . doi : 10.1007/978-3-030-26951-7_12 . ISBN 978-3-030-26950-0. S2CID 75135227 .
- ^ Goldwasser, S.; Kalai, YT (Oktober 2003). „Zur (Un-)Sicherheit des Fiat-Shamir-Paradigmas“. 44. jährliches IEEE-Symposium über Grundlagen der Informatik, 2003. Tagungsband . S. 102–113 . doi : 10.1109/SFCS.2003.1238185 . ISBN 0-7695-2040-5. S2CID 295289 .
- ^ „Einfügen einer elektronischen Signatur in ein Word-Dokument“ . Abgerufen am 16.02.2025 .
- ^ Camenisch, Jan; Stadler, Markus (1997). „Beweissysteme für allgemeine Aussagen über diskrete Logarithmen“ (PDF) . Departement Informatik, ETH Zürich . Archiviert vom Original (PDF) am 6. Juli 2017.
- ^ Bellare, Mihir; Rogaway, Phillip (1995), Random Oracles are Practical: A Paradigm for Designing Efficient Protocols , ACM Press, S. 62–73 , CiteSeerX 10.1.1.50.3345
- Bernhard , David; Pereira, Olivier; Warinschi, Bogdan. „Wie man sich nicht beweist: Fallstricke der Fiat-Shamir-Heuristik und Anwendungen auf Helios“ (PDF) . In: Wang, Xiaoyun; Sako, Kazue (Hrsg.). Fortschritte in der Kryptologie – ASIACRYPT 2012. S. 626–643 .| https://eprint.iacr.org/2016/771.pdf