Fiat-Shamir-Protokoll
Das Fiat-Shamir-Protokoll ist ein Protokoll aus dem Gebiet der Kryptografie, mit dem man sich jemandem gegenüber authentisieren kann. Dazu zeigt man, dass man eine Quadratwurzel einer vorher veröffentlichten Quadratzahl kennt. Es wird dabei keine Information über die geheime Quadratwurzel preisgegeben; man spricht deswegen von einem Zero-Knowledge-Protokoll. Insbesondere ist das Protokoll perfekt zero-knowledge. Das heißt, es gibt einen Simulator, dessen Ausgabe von einer echten Durchführung des Protokolls nicht unterschieden werden kann.
Das Fiat-Shamir-Protokoll wurde im Jahr 1986 von Amos Fiat und Adi Shamir vorgestellt.
Das Verfahren arbeitet interaktiv, das heißt, es findet ein Austausch zwischen Geheimnisträger und Prüfer statt.
Die Sicherheit des Fiat-Shamir-Protokolls beruht auf der Schwierigkeit Quadratwurzeln im Restklassenring zu berechnen. Diese Berechnung ist genauso schwer wie die Zahl (, sind Primzahlen) zu faktorisieren und damit bisher praktisch nicht durchführbar.
Protokoll
Beim Fiat-Shamir-Protokoll wird eine vertrauenswürdige dritte Partei benötigt. Diese veröffenlicht einen RSA-Modul , dessen Primfaktoren und sie geheimhält. Die Geheimnisträgerin Peggy (P wie Prover) wählt eine Zahl als Geheimnis, mit dem sie sich Victor (V wie Verifier) gegenüber authentisieren will. Sie berechnet und registriert als öffentlichen Schlüssel bei der dritten Partei.
Eine einzelne Runde im Fiat-Shamir-Protokoll besteht aus den folgenden Aktionen:

- Peggy wählt eine Zufallszahl , berechnet und sendet an Victor.
- Victor wählt zufällig ein und sendet dies an Peggy. Dabei gibt Victor zu verstehen, ob er erhalten möchte () oder lieber (bei ).
- Peggy berechnet und sendet an Victor.
- Victor überprüft, ob gilt.
Quellen
- Albrecht Beutelspacher, Klaus-Dieter Wolfenstetter: Moderne Verfahren der Kryptographie. Vieweg, Braunschweig/Wiesbaden 1995, ISBN 3-528-06590-7, S. 47–49
- Amos Fiat, Adi Shamir: How to Prove Yourself: Practical Solutions to Identification and Signature Problems. In: Proceedings on Advances in Cryptology - CRYPTO '86. Springer-Verlag, 1987, ISBN 0-387-18047-8, S. 186–194