zk-SNARKs und zk-STARKs Erklärt

Teilen
Copied to clipboard!
zk-SNARKs und zk-STARKs Erklärt
Diesen Artikel anhören
00:00 / 00:00

Privatsphäre wurde schon immer als ein wichtiges Thema innerhalb der Kryptowährungsgemeinschaft angesehen. Sie ist der Vorläufer der Fungibilität, die für eine weit verbreitete Form des Geldes notwendig ist. Ebenso wollen die meisten Krypto-Asset-Inhaber nicht, dass ihre Bestände und ihre Transaktionsgeschichte vollständig öffentlich sind. Unter den verschiedenen kryptographischen Techniken, die darauf abzielen, Blockchains Privatsphäre zu gewähren, sind die zk-SNARK und zk-STARK Proofs zwei bemerkenswerte Beispiele.

zk-SNARK steht für zero-knowledge succinct non-interactive argument of knowledge, und zk-STARK repräsentiert zero-knowledge succinct transparent argument of knowledge. Zk-SNARK Proofs werden bereits in Zcash, dem blockchainbasierten Zahlungssystem von JP Morgan Chase, und als Möglichkeit zur sicheren Authentifizierung von Clients gegenüber Servern verwendet. Aber während zk-SNARKs erhebliche Fortschritte gemacht haben, um sich gut zu etablieren, werden zk-STARK Proofs nun als neue und verbesserte Version des Protokolls gewürdigt, die viele der früheren Nachteile von zk-SNARKs beseitigen.


Ali Babas Höhlenparabel

1990 wurde vom Kryptographen Jean-Jacques Quisquater (zusammen mit anderen Mitwirkenden) ein Dokument mit dem Titel "How to Explain Zero-Knowledge Protocols to Your Children" veröffentlicht. Das Papier stellt das Konzept der ZK-Proofs mit einer Parabel über Ali Babas Höhle vor. Seit seiner Entstehung wurde die Parabel mehrmals angepasst und wir haben nun mehrere Varianten. Dennoch sind die zugrunde liegenden Informationen im Wesentlichen die gleichen.

Stellen wir uns eine ringförmige Höhle mit einem einzigen Eingang und einer magischen Tür vor, die die beiden Seitenwege voneinander trennt. Um durch die magische Tür zu gelangen, muss man die richtigen geheimen Worte flüstern. Bedenkt also, dass Alice (gelb) Bob (blau) beweisen will, dass sie weiß, was die geheimen Worte sind - während sie sie trotzdem geheim hält. Um dies zu tun, stimmt Bob zu, draußen zu warten, während sie die Höhle betritt und bis zum Ende eines der beiden möglichen Wege geht. In diesem Beispiel beschließt sie, Pfad 1 zu durchlaufen.

zk-SNARKs und zk-STARKs Erklärt

Nach einer Weile geht Bob durch den Eingang und ruft, von welcher Seite Alice erscheinen soll (Pfad 2 in diesem Fall).

zk-SNARKs und zk-STARKs Erklärt

Wenn Alice das Geheimnis wirklich kennt, wird sie aus dem Pfad den Bob ausgesucht hat erscheinen.

zk-SNARKs und zk-STARKs Erklärt

Der gesamte Prozess kann mehrmals wiederholt werden, um zu bestätigen, dass Alice nicht zufällig den richtigen Weg wählt.

Ali Babas Höhlenparabel veranschaulicht das Konzept der Zero-Knowledge Proofs, die Teil der Protokolle zk-SNARK und zk-STARK sind. ZK-Proofs können verwendet werden, um den Besitz bestimmter Kenntnisse nachzuweisen, ohne Informationen darüber preiszugeben.


zk-SNARKs

Zcash ist die erste weit verbreitete Anwendung von zk-SNARKs. Während andere Datenschutzprojekte wie Monero Ringsignaturen und andere Techniken verwenden - was effektiv einen Rauchvorhang dafür schafft, wer was geschickt hat - verändert zk-SNARKS die Art und Weise, wie Daten ausgetauscht werden, grundlegend. Die Privatsphäre von Zcash ergibt sich aus der Tatsache, dass Transaktionen im Netzwerk verschlüsselt bleiben, aber dennoch mit Hilfe von Zero-Knowledge-Proofs als gültig verifiziert werden können. So müssen diejenigen, die Konsensregeln durchsetzen, nicht alle Daten kennen, die jeder Transaktion zugrunde liegen. Es ist erwähnenswert, dass die Datenschutzfunktionen in Zcash nicht standardmäßig aktiv, sondern eher optional und abhängig von der manuellen Einrichtung sind.

Zero-Knowledge-Proofs ermöglichen es einer Person, einer anderen Person zu beweisen, dass eine Aussage wahr ist, ohne Informationen über die Gültigkeit der Aussage hinaus preiszugeben. Die beteiligten Parteien werden gemeinhin als Prüfer und Verifizierer bezeichnet, und die Aussage, die sie im Geheimen halten, wird als Zeuge bezeichnet. Das Hauptziel dieser Beweise ist es, so wenig Daten wie möglich zwischen den beiden Parteien offenzulegen. Mit anderen Worten, man kann mit Zero-Knowledge-Proofs beweisen, dass man über bestimmte Kenntnisse verfügt, ohne Informationen über das Wissen selbst preiszugeben.

Innerhalb des SNARK-Akronyms bedeutet "succinct", dass diese Proofs kleiner sind und schnell überprüft werden können. "Non-interactive" bedeutet, dass es wenig bis gar keine Interaktion zwischen dem Prüfer und dem Verifizierer gibt. Ältere Versionen von Zero-Knowledge-Protokollen erfordern in der Regel, dass der Prüfer und der Verifizierer hin und her kommunizieren, und werden daher als "Interactive" zk proofs betrachtet. Aber in "non-interactive" Konstruktionen müssen Prüfer und Verifizierer nur einen Beweis austauschen.

Derzeit sind zk-SNARK Proofs von einer anfänglich vertrauenswürdigen Einrichtung zwischen einem Prüfer und einem Verifizierer abhängig, was bedeutet, dass eine Reihe öffentlicher Parameter erforderlich ist, um Zero-Knowledge-Proofs und damit private Transaktionen zu konstruieren. Diese Parameter sind fast wie die Spielregeln, sie sind in das Protokoll kodiert und sind einer der notwendigen Faktoren, um zu beweisen, dass eine Transaktion gültig war. Dies führt jedoch zu einem möglichen Zentralisierungsproblem, da die Parameter oft von einer sehr kleinen Gruppe formuliert werden.

Während eine anfänglich öffentliche Einrichtung für die heutigen zk-SNARK-Implementierungen von grundlegender Bedeutung ist, arbeiten die Forscher daran, andere Alternativen zu finden, um das erforderliche Vertrauen in den Prozess zu verringern. Die anfängliche Einrichtungsphase ist wichtig, um gefälschte Ausgaben zu verhindern, denn wenn jemand Zugang zu der Zufälligkeit hätte, die die Parameter erzeugt hat, könnte er falsche Beweise erstellen, die für den Prüfer gültig erscheinen. In Zcash wird die anfängliche Einrichtungsphase als Parametergenerierungszeremonie bezeichnet.

Kommen wir zum Stück "ARguments" des Akronyms. zk-SNARKs gelten als rechnerisch einwandfrei, was bedeutet, dass ein unehrlicher Spielleiter eine sehr geringe Chance hat, das System erfolgreich zu betrügen. Diese Eigenschaft wird als Solidität bezeichnet und setzt voraus, dass der Spielleiter über eine begrenzte Rechenleistung verfügt. Theoretisch könnte ein Spitzel mit ausreichender Rechenleistung gefälschte Beweise liefern, und das ist einer der Gründe, warum Quantencomputer von vielen als Bedrohung für zk-SNARKs und Blockchain-Systeme angesehen werden.

Der letzte Teil des Akronympuzzles ist "of Knowledge", was bedeutet, dass es für den Spielleiter nicht möglich ist, einen Beweis zu konstruieren, ohne tatsächlich das Wissen (oder die Zeugin) zu haben, ihre Aussage zu unterstützen.

Zero-Knowledge-Proofs sind schnell überprüfbar und benötigen in der Regel viel weniger Daten als eine Standard-Bitcoin-Transaktion. Dies eröffnet einen Weg für die zk-SNARK-Technologie, die sowohl als Datenschutz- als auch als Skalierungslösung eingesetzt werden kann.


zk-STARKs

zk-STARKs wurden als alternative Version von zk-SNARK Proofs erstellt und gelten als eine schnellere und kostengünstigere Implementierung der Technologie. Noch wichtiger ist jedoch, dass zk-STARKs kein anfängliches vertrauenswürdiges Setup erfordern (daher das "T" für transparent).

Technisch gesehen benötigen Zk-STARKs kein anfängliches vertrauenswürdiges Setup, da sie auf eine schlankere symmetrische Kryptographie durch kollisionsfeste Hash-Funktionen setzen. Dieser Ansatz eliminiert auch die zahlentheoretischen Annahmen von zk-SNARKs, die rechenintensiv und theoretisch anfällig für Angriffe durch Quantencomputer sind.

Einer der Hauptgründe, warum Zk-STARKs eine kostengünstigere und schnellere Implementierung bieten, liegt darin, dass die Anzahl der Kommunikationsrunden zwischen Prüfern und Verifizierern im Vergleich zu einer Erhöhung der Rechenleistung konstant bleibt. Im Gegensatz dazu müssen die Parteien bei zk-SNARKs umso mehr Nachrichten hin und her senden, je mehr Berechnungen erforderlich sind. Daher ist die Gesamtdatengröße von zk-SNARKs viel größer als die von zk-STARK Proofs. 

Es ist klar, dass sowohl zk-SNARKS als auch zk-STARKs auf das wachsende Interesse an der Privatsphäre hinweisen. Innerhalb der Welt der Kryptowährung haben diese Protokolle ein großes Potenzial und können ein bahnbrechender Weg zur Mainstream-Akzeptanz darstellen.

Loading