Kernaussagen
Ein Zero-Knowledge-Proof ermöglicht es einer Partei, einer anderen Partei zu beweisen, dass eine Aussage wahr ist, ohne irgendeine zugrunde liegende Daten offenzulegen.
zk-SNARKs sind eine Art von Zero-Knowledge-Proof-Protokoll, das in der Krypto-Welt verwendet wird, um Informationen wie Kontostände zu verifizieren, ohne private Details offenzulegen.
Binance verwendet zk-SNARKs in Kombination mit Merkle-Bäumen, damit Nutzer verifizieren können, dass ihre Kontostände im gesamten Proof of Reserves enthalten sind, ohne einzelne Kontodaten offenzulegen.
Jenseits von Börsenreserven werden ZK-Beweise zunehmend in ZK-Rollups, bei der Identitätsverifizierung und in Wahlsystemen im gesamten Blockchain-Ökosystem eingesetzt.
Einführung
Blockchain-Nutzer schätzen sowohl Transparenz als auch Datenschutz. In vielen Situationen scheinen diese beiden Ziele in Konflikt zu geraten: Zu beweisen, dass etwas wahr ist, erfordert oft, die Details dahinter offenzulegen. Zero-Knowledge-Proofs bieten einen Weg, diese Spannung aufzulösen.
Durch die Nutzung von Zero-Knowledge-Proof-Protokollen wie zk-SNARKs zusammen mit kryptografischen Datenstrukturen wie Merkle-Bäumen ist es möglich, die Gültigkeit von Informationen zu beweisen, ohne die Informationen selbst offenzulegen. Dieser Artikel erklärt, wie diese Werkzeuge funktionieren und wie Binance sie für Proof of Reserves einsetzt.
Was ist ein Zero-Knowledge-Proof?
Ein Zero-Knowledge-Proof ermöglicht es einer Partei (dem Beweiser), einer anderen Partei (dem Verifizierer) zu überzeugen, dass eine Aussage wahr ist, ohne irgendeine Information über den Inhalt dieser Aussage zu teilen. Das Konzept erschien erstmals in einem akademischen Paper aus dem Jahr 1985 und ist seitdem ein grundlegendes Element der angewandten Kryptografie.
Eine einfache Analogie: Stellen Sie sich vor, Sie kennen die Kombination zu einem verschlossenen Safe. Sie können dies einem Freund beweisen, indem Sie den Safe öffnen, einen Zettel vorlesen lassen, den die Person hineingelegt hat, und ihn dann wieder schließen. Ihr Freund ist nun überzeugt, dass Sie die Kombination kennen, ohne dass Sie jemals sagen, was sie ist.
Für eine tiefergehende technische Erklärung sehen Sie sich den Academy-Artikel „Was ist ein Zero-Knowledge-Proof und wie wirkt er sich auf die Blockchain aus?“ an.
Warum sind Zero-Knowledge-Proofs nützlich?
ZK-Beweise sind in jeder Situation nützlich, in der Sie eine Behauptung beweisen müssen, ohne sensible Daten offenzulegen. In traditionellen Systemen erfordert der Nachweis, dass Sie ein Asset besitzen oder bestimmte Credentials haben, häufig, die zugrunde liegende Information zu teilen, wodurch Datenschutz- und Sicherheitsrisiken entstehen.
In Krypto sind häufige Anwendungsfälle zum Beispiel:
Den Nachweis der Eigentümerschaft eines privaten Schlüssels erbringen, ohne ihn offenzulegen.
Es einer Börse ermöglichen, ihre gesamten Nutzerreserven zu verifizieren, ohne einzelne Kontostände offenzulegen.
Skalierbare Blockchain-Transaktionen über ZK-Rollups ermöglichen, ohne jede Transaktion on-chain zu veröffentlichen.
Diese Beweise nutzen Algorithmen, die Daten als Eingabe verwenden und entweder „wahr“ oder „falsch“ zurückgeben, ohne irgendwelche Details über die Eingabe selbst offenzulegen.
Technische Eigenschaften von Zero-Knowledge-Proofs
Ein gültiger Zero-Knowledge-Proof muss drei Eigenschaften erfüllen:
Vollständigkeit. Wenn die Aussage wahr ist, wird ein ehrlicher Verifizierer durch den Beweis überzeugt.
Korrektheit (Soundness). Wenn die Aussage falsch ist, kann kein Beweiser den Verifizierer davon überzeugen, dass sie wahr ist.
Zero-Knowledge (Vertraulichkeit). Wenn die Aussage wahr ist, lernt der Verifizierer nichts weiter als die Tatsache, dass sie wahr ist.
Was ist ein zk-SNARK?
Ein zk-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) ist eine Art von Zero-Knowledge-Proof-Protokoll. Er ist darauf ausgelegt, kompakt zu sein (kleine Beweisgröße), nicht interaktiv (keinen Hin- und Her-Austausch zwischen Beweiser und Verifizierer) und kryptografisch korrekt (sound).
Mit einem zk-SNARK kann ein Prover (Beweiser) nachweisen, dass er einen geheimen Wert kennt oder dass eine Berechnung korrekt durchgeführt wurde, ohne irgendetwas über die Eingaben offenzulegen. Im Kontext eines Krypto-Börsenhandels bedeutet das: Es wird bewiesen, dass die Summe aller Kontostände der Nutzer mit den behaupteten Reserven übereinstimmt, ohne einen einzelnen Kontostand zu zeigen.
Der Verifizierungsschritt ist im Vergleich zur Zeit, die benötigt wird, um den Beweis selbst zu erstellen, extrem schnell. Dadurch sind zk-SNARKs praktisch für groß angelegte Anwendungen wie Exchange-Audits oder Blockchain-Skalierbarkeit.
Was ist ein Merkle-Baum?
Ein Merkle-Baum ist eine kryptografische Datenstruktur, die große Mengen an Daten effizient organisiert. Jeder Datenbestandteil wird in einen Hash umgewandelt, und diese Hashes werden paarweise kombiniert, bis schließlich ein einziger Root-Hash (Wurzel-Hash) entsteht. Jede Änderung an einem beliebigen Eingabewert verändert den Root-Hash, wodurch Manipulationen leicht zu erkennen sind.
Hash-Funktionen
Merkle-Bäume hängen von Hash-Funktionen ab, um zu funktionieren. Hashing nimmt eine Eingabe beliebiger Länge und erzeugt eine Ausgabe fester Länge. Dieselbe Eingabe erzeugt immer dieselbe Ausgabe. Schon eine minimale Änderung der Eingabe führt zu einer vollständig anderen Ausgabe.
Wenn man zum Beispiel 100 Bücher durch die SHA-256-Hash-Funktion laufen lässt, entsteht eine eindeutige 64-stellige Zeichenkette. Ändert man in diesen Büchern nur ein einziges Zeichen, verändert sich die Ausgabe vollständig. Diese Eigenschaft macht es leicht, die Datenintegrität zu überprüfen, ohne den gesamten ursprünglichen Inhalt miteinander zu vergleichen.
Merkle-Bäume in der Kryptowährung
In der Blockchain wird jede Transaktion gehasht, um einen eindeutigen Blattknoten zu erzeugen. Paare von Blattknoten werden kombiniert und erneut gehasht, um Knoten der nächsten Ebene (Branch Nodes) zu bilden. Dieser Prozess wird fortgesetzt, bis ein einziger Merkle-Root entsteht. Dieser Root fasst kryptografisch alle Transaktionen in einem Block zusammen.
Für Börsen bieten Merkle-Bäume eine Möglichkeit, Kundenkontostände so zu organisieren, dass sie geprüft werden können, ohne jedes einzelne Konto offenzulegen.
Die Grenzen der ausschließlichen Nutzung von Merkle-Bäumen
Eine Krypto-Börse könnte einen Merkle-Baum aus allen Kontoständen der Kunden aufbauen, um eine Proof of Reserves (PoR) zu unterstützen. Allerdings hat dieser Ansatz ohne zusätzliche Schutzmaßnahmen Schwächen.
Ohne eine ZK-Ebene könnte eine Börse potenziell einige Konten aus dem Baum ausschließen oder gefälschte Konten mit negativen Guthaben einfügen, um die scheinbare Gesamthaftung zu verringern. Ein Nutzer, der nur seinen eigenen Blattknoten überprüft, hätte keine Möglichkeit, dies zu erkennen, ohne alle anderen Konten zu sehen.
Die Nutzung eines vertrauenswürdigen Drittprüfers ist eine mögliche Lösung, erfordert jedoch, sowohl dem Prüfer als auch den Daten zu vertrauen, auf die er Zugriff hatte.
Wie zk-SNARKs und Merkle-Bäume zusammenarbeiten
Durch die Kombination von zk-SNARKs mit Merkle-Bäumen entfällt die Notwendigkeit, einer dritten Partei zu vertrauen. Die Börse erstellt einen Merkle-Baum aus allen Nutzerkontoständen und generiert anschließend einen zk-SNARK-Beweis, der mathematisch garantiert:
Jeder Nutzerkontostand ist im Merkle-Baum enthalten (keine Konten werden ausgelassen).
Kein Nutzer hat ein negatives Netto-Guthaben (keine verfälschten Daten).
Der Merkle-Root ist gültig und unverändert.
Nutzer können überprüfen, dass ihr eigener Kontostand zum Merkle-Root beigetragen hat. Sie können außerdem den zk-SNARK-Beweis verifizieren, um sicherzustellen, dass der Baum korrekt erstellt wurde, ohne den Kontostand anderer zu sehen.
Wie Binance dieses System anwendet
Binance definiert die Bedingungen dessen, was es nachweisen möchte, als programmierbaren Schaltkreis (programmable circuit). Für jeden Blattknoten des Nutzerkontostands im Merkle-Baum prüft der Schaltkreis drei Bedingungen:
Die Vermögenswerte des Nutzers sind in die Berechnung des gesamten Netto-Guthabens einbezogen.
Das gesamte Netto-Guthaben des Nutzers ist größer oder gleich null.
Der Merkle-Root ist nach der Einbeziehung der Nutzerdaten gültig.
Anschließend erstellt Binance einen zk-SNARK-Beweis für den gesamten Merkle-Baum. Bei jeder Veröffentlichung eines Proof of Reserves veröffentlicht Binance den Merkle-Beweis für jeden Nutzer sowie den zk-SNARK-Beweis zusammen mit seinen öffentlichen Eingaben. Jeder kann beides unabhängig voneinander mit öffentlich verfügbaren Open-Source-Implementierungen verifizieren.
Dieser Ansatz bietet eine mathematische Absicherung, statt sich allein auf das Vertrauen in einen Prüfer zu verlassen.
Breitere Anwendungsfälle jenseits von Proof of Reserves
Die Technologie für ZK-Beweise ist weit über das Exchange-Auditing hinausgewachsen. ZK-Rollups sind inzwischen einer der führenden Ansätze zur Skalierung der Layer 2 auf Ethereum. Dabei werden Transaktionen außerhalb der Kette verarbeitet und ZK-Beweise an die Main Chain übermittelt, um die Gültigkeit zu bestätigen. Das kann den Durchsatz erhöhen, während die Sicherheit erhalten bleibt.
Über Skalierung hinaus werden ZK-Beweise auch für die Verifizierung von Identitäten untersucht (nachzuweisen, dass man eine Alters- oder Jurisdiktionsanforderung erfüllt, ohne die vollständige Identität offenzulegen), für private Wahlsysteme und für die vertrauliche Ausführung von Smart Contracts. Die Technologie reift noch, aber ihr Potenzial über Finanzwesen, Governance und digitale Identität hinweg ist erheblich.
FAQ
Was ist ein Zero-Knowledge-Proof in einfachen Worten?
Ein Zero-Knowledge-Proof ermöglicht es Ihnen, nachzuweisen, dass Sie etwas wissen oder dass eine Aussage wahr ist, ohne die zugrunde liegende Information offenzulegen. Es ist so, als würden Sie beweisen, dass Sie die Kombination eines Safes kennen, indem Sie ihn öffnen, den Zettel mit der Kombination vorzeigen und dann wieder schließen – ohne jemals zu sagen, was die Kombination ist.
Warum nutzt Binance zk-SNARKs für Proof of Reserves?
Binance nutzt zk-SNARKs, um zu beweisen, dass die Kontostände der Kunden vollständig gedeckt sind, ohne einzelne Kontodetails offenzulegen. Der ZK-Beweis liefert eine mathematische Verifikation, dass alle Konten enthalten sind und keine negativen Salden existieren – ohne dass Nutzer einem Prüfer vertrauen müssen.
Was ist der Unterschied zwischen zk-SNARKs und ZK-Rollups?
zk-SNARKs sind eine Art von Zero-Knowledge-Proof-Protokoll. ZK-Rollups sind eine Lösung zur Skalierung der Layer 2, die zk-SNARKs (oder ähnliche Beweise) nutzt, um viele Transaktionen gebündelt zu verarbeiten und einen einzelnen Gültigkeitsbeweis an die Haupt-Blockchain zu übermitteln. zk-SNARKs sind das zugrunde liegende kryptografische Werkzeug; ZK-Rollups sind eine Anwendung dieses Werkzeugs.
Können Nutzer unabhängig Binances Proof of Reserves verifizieren?
Ja. Binance veröffentlicht den Merkle-Beweis für jeden Nutzer sowie den zk-SNARK-Beweis zusammen mit dessen öffentlichen Eingaben. Nutzer können verifizieren, dass ihr Kontostand im Merkle-Baum enthalten ist und dass der zk-SNARK-Beweis bestätigt, dass der Baum korrekt aufgebaut wurde – mithilfe des von Binance öffentlich bereitgestellten Open-Source-Codes.
Werden Zero-Knowledge-Proofs nur für Börsenreserven verwendet?
Nein. ZK-Beweise haben eine breite Palette an Anwendungen. In der Blockchain werden sie in ZK-Rollups für Transaktionsskalierung, Identitätssysteme und die vertrauliche Ausführung von Verträgen genutzt. Außerhalb von Krypto werden sie für datenschutzfreundliche Wahlen, Altersverifizierung und die Validierung von Credentials erforscht, ohne Daten offenzulegen.
Abschließende Gedanken
Durch die Kombination von zk-SNARKs mit Merkle-Bäumen können Börsen kryptografische Evidenz für Reserven bereitstellen, ohne die Nutzerdaten zu kompromittieren. Über das Reservere-Audit hinaus findet die ZK-Technologie ihren Platz in der Blockchain-Skalierbarkeit, in Identitätssystemen und in dezentraler Governance.
Weiterführende Informationen
Was ist ein Zero-Knowledge-Proof und wie wirkt er sich auf die Blockchain aus?
zk-SNARKs und zk-STARKs erklärt
Was sind ZK-Rollups?
Was ist Proof of Reserves und wie funktioniert es bei Binance
Merkle-Bäume und Merkle-Roots erklärt
Haftungsausschluss: Dieser Inhalt wird Ihnen ausschließlich „wie er ist“ zur Verfügung gestellt, nur für allgemeine Informationen und zu Bildungszwecken, ohne irgendeine Darstellung oder Gewährleistung. Er sollte nicht als finanzieller, rechtlicher oder sonstiger professioneller Rat verstanden werden, und er soll auch nicht dazu dienen, den Kauf eines bestimmten Produkts oder einer bestimmten Dienstleistung zu empfehlen. Sie sollten sich Ihren eigenen Rat bei geeigneten professionellen Beratern holen. Wenn der Inhalt von einem Drittanbieter beigesteuert wird, beachten Sie bitte, dass die darin geäußerten Ansichten dem Drittanbieter gehören und nicht unbedingt die von Binance Academy widerspiegeln. Die Preise digitaler Vermögenswerte können schwanken. Der Wert Ihrer Anlage kann steigen oder fallen, und Sie erhalten möglicherweise nicht den investierten Betrag zurück. Sie sind allein für Ihre Anlageentscheidungen verantwortlich, und Binance Academy haftet nicht für Verluste, die Sie möglicherweise erleiden. Weitere Informationen finden Sie in unseren Allgemeinen Geschäftsbedingungen, der Risikowarnung und den Bedingungen von Binance Academy.
