Zero-Knowledge-Proof (zK-Beweis)
Ein Zero-Knowledge-Proof, im Deutschen als Null-Wissens-Beweis bezeichnet, ist eine Verifikationsmethode, die zwischen einem Verifizierer und einem Überprüfer abläuft. Im zK-Protokoll (zK steht für Zero-Knowledge) kann der Verifizierer dem Prüfer beweisen, dass er über eine bestimmte Information (z. B. die Lösung einer mathematischen Gleichung) verfügt, ohne die Information selbst preiszugeben. Diese Beweissysteme können von modernen Kryptographen verwendet werden, um ein höheres Maß an Privatsphäre und Sicherheit zu gewährleisten.
Das Konzept des Zero-Knowledge-Proofs wurde erstmals 1985 in einer MIT-Veröffentlichung von Shafi Goldwasser und Silvio Micali beschrieben.
Sie zeigten, dass es möglich ist, einige Eigenschaften einer Zahl zu beweisen, ohne die Zahl oder zusätzliche Informationen über sie preiszugeben. In dieser Arbeit wurde auch die mathematisch bedeutsame Erkenntnis vorgestellt, dass Interaktionen zwischen einem Überprüfer und einem Prüfer die Menge an Informationen reduzieren können, die für den Beweis eines bestimmten Theorems erforderlich sind.
Ein Zero-Knowledge-Proof muss zwei grundlegende Anforderungen erfüllen, die als Vollständigkeit und Solidität bekannt sind. Die Vollständigkeit bezieht sich auf die Fähigkeit des Beweisführers, die Kenntnis der relevanten Informationen mit einem hohen Grad an wahrscheinlicher Genauigkeit nachzuweisen. Damit ein Beweis solide ist, muss der Überprüfer in der Lage sein, zuverlässig festzustellen, ob der Verifizierer tatsächlich im Besitz der Informationen ist oder nicht. Damit ein Beweis wirklich Zero-Knowledge-Proof ist, muss er sowohl vollständig als auch stichhaltig sein, ohne dass die betreffende Information jemals zwischen dem Überprüfer und dem Verifizierer ausgetauscht wird.
Zero-Knowledge-Proofs werden meist für Anwendungen verwendet, bei denen Privatsphäre und Sicherheit von entscheidender Bedeutung sind. Authentifizierungssysteme können z.B. zk-Beweise verwenden, um Anmeldedaten oder Identitäten zu verifizieren, ohne sie direkt preiszugeben. Ein einfaches Beispiel ist die Verifizierung, dass eine Person ein Passwort für ein Computersystem hat, ohne dass das Passwort bekannt gegeben werden muss.
Ein bekannter Anwendungsfall von Zero-Knowledge-Proofs ist in der Welt der Kryptowährung und der Blockchain-Technologie zu finden. Durch die Verwendung eines Zero-Knowledge-Proofs, der als „Succinct Non-interactive Argument of Knowledge“ (zk-SNARK) bekannt ist, können auf Datenschutz ausgerichtete Kryptowährungen wie Zcash ihren Nutzern Blockchain-Transaktionen mit einem höheren Maß an Datenschutz anbieten. Auch Ethereum arbeitet seit dem Byzantium-Update im Jahr 2017 mit zk-SNARK-Beweisen.
« Zurück zum Glossar Index