Wie zk-SNARK Gate.io verbessert Nachweis der Reserven

ErweitertOct 12, 2023
Als einer der Pioniere der Branche bei der Einführung von Reservennachweisen wird Gate.io die zk-SNARK-Technologie übernehmen, um seine Reservennachweise zu verbessern und den Benutzern eine überlegene Vermögenssicherheit und Datenschutz zu bieten.
Wie zk-SNARK Gate.io verbessert Nachweis der Reserven

Mit über 13 Millionen Nutzern ist sich Gate.io der Bedeutung der Fondssicherheit voll bewusst und hat in der Branche als Vorreiter wirksame Maßnahmen ergriffen. Gate.io war eine der ersten Börsen, die den Proof of Reserves (PoR) implementierte, und gab seinen PoR bereits im Mai 2020 bekannt. Erst nachdem FTX im Jahr 2022 Benutzervermögen veruntreut hatte, was zu einer Liquiditätskrise und anschließendem Bankrott führte, wurde der Nachweis von Reserven weithin als Lösung zur Gewährleistung der Sicherheit von Benutzergeldern und zur Verbesserung der Vertrauenswürdigkeit der Plattform anerkannt.

Nach dem FTX-Vorfall veröffentlichte Gate.io umgehend seinen zweiten Nachweis der Reserven. Kurz nach seiner Veröffentlichung veröffentlichte der Gründer von Ethereum, Vitalik Buterin, einen Artikel mit dem Titel „ Einen sicheren CEX haben: Nachweis der Zahlungsfähigkeit und mehr“, in dem er erörterte, wie Börsen ihre Zahlungsfähigkeit besser nachweisen können. Der Artikel schlägt die Integration fortschrittlicher Technologien wie zk-SNARK zusätzlich zum traditionellen Nachweis von Reserven vor, um ein öffentlicheres, transparenteres und authentischeres PoR zu gewährleisten. Gate.io plant, die im Artikel erwähnte neue Technologie zu nutzen, um seinen Reservenachweis zu verbessern und den Benutzern mehr Privatsphäre und echte Vermögenssicherheit zu bieten.

Was ist ein Reservenachweis?

Beim Proof of Reserves (PoR) handelt es sich um die Überprüfung der von Kryptowährungsbörsen oder anderen Finanzinstituten gehaltenen Guthaben, um zu überprüfen, ob der vom Unternehmen erfasste Vermögenswert mit den tatsächlich gehaltenen Vermögenswerten übereinstimmt. Wenn der Vermögenswert in den Reserven den Betrag der von den Nutzern hinterlegten Vermögenswerte übersteigt, d. h. die Sicherheitenquote mehr als 100 % beträgt, beweist dies, dass die Gelder der Nutzer im Verhältnis 1:1 durch reale Vermögenswerte gedeckt sind.

Vor der Entstehung von PoR gab es auch Vorschläge für die Übertragung von Vermögenswerten und den Nachweis von Verbindlichkeiten, um nachzuweisen, dass die Börsen über ausreichende Mittel verfügten.

Vermögensübertragung – Nachweis, dass die Börse über ausreichende Vermögenswerte verfügt

Im Jahr 2011 bewies MtGox, damals die größte Bitcoin-Börse, dass sie über bestimmte Gelder verfügte, indem sie eine Transaktion durchführte, bei der 424.242 BTC an eine zuvor bekannt gegebene Adresse übertragen wurden. Mit dieser Methode konnten nur Vermögenswerte validiert und die Verbindlichkeiten der Börse nicht nachgewiesen werden.

Nachweis der Verbindlichkeiten

Die Verbindlichkeiten einer Börse sind die von ihren Nutzern hinterlegten Vermögenswerte. Der einfachste Weg, das Vermögen der Benutzer nachzuweisen, besteht darin, eine Liste mit Benutzerkonten und -salden zu veröffentlichen. Jeder Benutzer kann auf diese Liste zugreifen und prüfen, ob der Saldo seines Kontos korrekt ist. Diese Methode hat jedoch offensichtliche Nachteile:

  1. Es gibt keine Garantie dafür, dass die von der Börse bereitgestellte Liste authentisch ist.

  2. Dabei werden sowohl die Kontodaten als auch der Kontostand des Nutzers offengelegt.

Diese Methode könnte auch eine Datenstruktur wie Merkle verwenden, um die Offenlegung von Benutzerinformationen zu minimieren, was zum aktuellen Konzept von PoR führt.

Wie dargestellt, ist ein Merkle-Baum eine baumartige Datenstruktur. Die Daten auf der untersten Ebene werden als „Blattknoten“ bezeichnet, und die Daten in der Mitte können als „Zwischenknoten“ bezeichnet werden. Zwei Blattknoten können einem Hashing unterzogen werden (Verarbeitung eines beliebigen Eingabewerts, um einen bestimmten Wert zu erhalten), um den Wert eines Zwischenknotens zu erzeugen. Anschließend werden zwei Zwischenknoten gehasht, um einen eindeutigen Ausgabewert für den Knoten der nächsten Ebene zu erhalten. Nach aufeinanderfolgenden Verarbeitungsebenen wird schließlich der Wurzelknoten (Root) des Merkle-Baums erhalten. Dieser Wert ist eindeutig und jede Änderung an einem Blattknoten führt zu einer Änderung am Wurzelknoten.

Reservenachweis in Merkle Trees (Quelle: Vitalik

Bei dieser Methode wird das Gesamtvermögen, das eine Börse im Namen ihrer Benutzer hält, durch die schichtweise Akkumulation der Werte ermittelt. Allerdings besteht auch nach dem direkten Einfügen der Benutzerkonto- und Kontostanddaten in die Blattknoten weiterhin ein geringes Risiko eines Informationslecks. Am Beispiel der Abbildung kann der grün markierte Benutzer (Charlie) auf Teilinformationen von David sowie auf die Salden von Alice und Bob auf der linken Seite zugreifen. Folglich gab es technische Verbesserungen in den Blattknoten:

  1. Wie in der Abbildung gezeigt, wird die Benutzerkonto-ID zusammen mit einem bestimmten Wert gehasht.

  2. Benutzerguthaben sind verteilt. Beispielsweise könnte Charlies 10ETH in zwei 5ETH-Beträge aufgeteilt und in zwei verschiedenen Blattknoten platziert werden.

  3. Die Benutzer-ID und der Kontostand werden separat gehasht und anschließend werden die resultierenden Werte noch einmal gehasht. Der Reservefondsnachweis von Gate.io verwendet diese Methode.

Trotz dieser Fortschritte auf Blattknotenebene bleibt ein Problem ungelöst: negative Salden. In der Praxis nutzen Benutzer, nachdem sie Kryptowährungen eingezahlt haben, Börsenprodukte wie Leveraged Trading und unbefristete Verträge. Kommt es zu Verlusten, sollte der maximale Verlust 100 % des Kapitals betragen, d. h. der Kontostand eines Nutzers sollte immer größer oder gleich Null sein.

Typischerweise werden negative Salden durch böswillige Börsen ausgelöst. Wenn eine Börse beispielsweise 500 ETH zweckentfremdet, könnten nach Standardberechnungen die Vermögenswerte, die die Börse tatsächlich hält, geringer sein als die erforderlichen Sicherheiten, möglicherweise sogar weniger als 100 %, was die Veruntreuung aufdeckt. Die Börse könnte jedoch ein Konto wie das mit dem Namen Henry und einem Kontostand von -500 ETH in der Abbildung erstellen, um den gesamten Vermögenswert des Merkle-Baums gleich oder kleiner als die Vermögenswerte zu machen, die die Börse nach der Veruntreuung hält, und so eine Illusion zu erzeugen einer Sicherheitenquote von mehr als 100 %.

Einfluss von Konten mit negativem Wert auf Merkle Trees Illustration (Quelle: Vitalik

Um dieses Problem anzugehen, haben Börsen wie Gate.io damit begonnen, die wissensfreie zk-SNARK-Proof-Technologie zu nutzen, um ihre Reservenachweise zu verbessern.

Was sind Zero-Knowledge-Proofs und ZK-SNARKs?

Ein wissensfreier Beweis ist eine Technik, mit der eine Partei einer anderen etwas beweisen kann, ohne vertrauliche Informationen preiszugeben. Um dieses Konzept anhand eines einfachen Beispiels zu veranschaulichen: Wenn Benutzer A die Telefonnummer von Benutzer B kennt und Benutzer C fragt, ob Benutzer A sie kennt, kann Benutzer A sofort die Nummer von B wählen, um zu überprüfen, ob er sie tatsächlich hat, ohne dem Benutzer die tatsächliche Nummer mitzuteilen C. Dieser Prozess, der die Privatsphäre der Benutzer schützt und gleichzeitig Wissen bestätigt, ist ein Beispiel für den „Zero-Knowledge-Proof“-Mechanismus.

Im Bereich der Kryptowährungen ermöglichen wissensfreie Beweise den Benutzern, den Besitz eines privaten Schlüssels nachzuweisen, ohne den Schlüssel selbst oder eine elektronische Signatur preiszugeben. Handelsplattformen für Kryptowährungen hoffen, den Status ihrer Reservefonds überprüfen zu können, ohne vertrauliche Benutzerinformationen wie individuelle Kontostände preiszugeben.

zk-SNARK steht für eine prägnante, nicht interaktive Zero-Knowledge-Proof-Technik. Es durchläuft eine „anfängliche vertrauenswürdige Einrichtung“, um einen Common Reference String (CRS) zu erstellen, auf den alle Prüfer direkt zugreifen können. Dies ist analog zu einem Prüfungsbewertungssystem, bei dem zk-SNARK die richtigen Antworten direkt hochlädt. Die Prüflinge können dann ihre Antworten überprüfen (indem sie ihre Lösung für eine Frage an ein Backend-System senden, das sofort das richtige oder falsche Ergebnis liefert), was den Prozess äußerst effizient macht.

Mit zk-SNARK können Benutzer bestätigen, dass sie den ursprünglichen gehashten Wert kennen, ohne den tatsächlichen Inhalt dieses Werts preiszugeben. Ohne die Offenlegung konkreter Beträge, Werte oder Adressen können Nutzer zudem die Gültigkeit einer Transaktion überprüfen. Es wird häufig bei privaten Transaktionen verwendet. Bei der Gestaltung von Reservenachweisen kann zk-SNARK Einschränkungen vordefinieren, Nicht-Null-Konten eliminieren und die Privatsphäre der Benutzer gewährleisten.

Wie Gate.io zk-SNARKs nutzt, um Reservenachweise zu verbessern

Gate.io integriert die zk-SNARK-Technologie mit Merkle-Bäumen, um transparentere, datengeschützte und manipulationssichere Reservenachweise zu erstellen.

Umsetzungsprozess

  1. Cold Wallet-Autorisierung
    Alle Cold- und Hot-Wallets überweisen einen bestimmten, zufälligen Betrag an eine von der Wirtschaftsprüfungsgesellschaft angegebene Adresse, um den Besitz zu überprüfen. Die Wirtschaftsprüfungsgesellschaft fasst dann die Salden dieser Adressen zusammen, um den von der Börse kontrollierten Gesamtbetrag zu ermitteln (einschließlich Benutzer- und Eigengeldern).

  2. Snapshot des Benutzerguthabens
    Zu einem bestimmten Zeitpunkt wird eine Momentaufnahme der Benutzersalden auf der Plattform erstellt. Die tatsächlichen Kontobestände werden anhand von Daten wie ausstehenden Aufträgen, geliehenen Beträgen, geschuldeten Zinsen und nicht realisierten Gewinnen/Verlusten berechnet.

  3. Salden exportieren
    Die verschlüsselte UID und der Kontostand jedes Benutzers werden der Wirtschaftsprüfungsgesellschaft zur Berechnung des gesamten Benutzervermögens und zur Veröffentlichung einer Merkle-Nummer zur Verfügung gestellt.

  4. Stapelverarbeitung von Benutzerressourcen
    Es wird bestätigt, dass das Nettovermögen der Börse die Summe des Nettovermögens jedes Benutzers ist. Anschließend wird auf der Grundlage des Nettovermögens der Benutzer ein Merkle-Baum erstellt.
    (Der Hauptgrund für die Stapelverarbeitung ist, dass Gate.io 13 Millionen Benutzer hat. Die gleichzeitige Verarbeitung aller Benutzerdaten würde extreme Anforderungen an Hardware und Software stellen. Die Stapelverarbeitung ist zeit- und kosteneffizienter, ohne die Sicherheit oder den Datenschutz zu beeinträchtigen.)

  5. Implementierung von Schaltungsbeschränkungen
    ① Bevor das Nettovermögen eines Benutzers in den Merkle-Baum eingefügt wird, ist der Knoten, der der ID dieses Benutzers entspricht, leer.
    ② Berechnen Sie basierend auf der Vermögensliste des Benutzers und dem Preis jedes Vermögenswerts die gesamten Vermögenswerte/Verbindlichkeiten des Benutzers. Das Gesamtvermögen muss stets die Gesamtverbindlichkeiten übersteigen.
    ③ Fügen Sie die Vermögenswerte/Verbindlichkeiten des Benutzers zu den Vermögenswerten/Verbindlichkeiten der Börse hinzu.
    ④ Berechnen Sie anhand der Benutzer-ID, der Gesamtaktiva/-verbindlichkeiten und der Asset-Liste den Benutzerstatus-Hash. Fügen Sie den Status des Benutzers in den Merkle-Baum ein, um einen neuen Merkle-Root zu erhalten.
    ⑤ Bevor eine Operation für einen Benutzer erstellt wird, muss der Root-Hash-Wert des Baums mit dem Hash-Wert des Root-Knotens nach dem Erstellen einer Operation für den nachfolgenden Benutzer übereinstimmen.
    (Einschränkung ① verhindert unwahre Knotendaten, ② verhindert Konten mit negativen Werten und ⑤ stellt sicher, dass Benutzerdaten vor und nach Vorgängen unverändert bleiben.)

  6. Generieren eines Reservenachweises
    Bestimmen Sie mithilfe der zk-SNARK-Schaltung die Anzahl der Benutzervermögenswerte und erstellen Sie dann einen Reservenachweisbericht.

Für eine detailliertere Erläuterung des Reserveberechnungsprozesses und der Code-Implementierung klicken Sie hier.

Leistung

Auf einer Maschine mit 32 Kernen und 128 GB RAM dauert die Berechnung der Asset-Proofs für 10 Millionen Benutzer 15 Tage. Reservebeweisberechnungen können parallelisiert werden; bei 10 Maschinen dauert es also nur 1,5 Tage.

Abschluss

Die Einführung von zk-SNARKs ist ein bedeutendes Upgrade für Gate.io Reservenachweise und ein wesentlicher Schritt zum Schutz der Benutzerressourcen. Dieser überlegene Sicherheits- und Datenschutz stärkt das Vertrauen der Benutzer und setzt einen neuen Standard für die Kryptowährungsbranche. Als Branchenführer hat Gate.io seinen Code nun als Open Source bereitgestellt , in der Hoffnung, transparentere und sicherere Branchenentwicklungen zu fördern. Auch in Zukunft wird Gate.io seinen Innovationsgeist fortsetzen und gemeinsam mit seinen Nutzern eine sicherere, umfassendere, datenschutzgeschützte kryptografische Zukunft erforschen und vorantreiben.

Verweise

Autor: Wayne
Tradutor: Piper
Revisores: Edward、KOWEI、Elisa、Ashley He、Joyce
* As informações não pretendem ser e não constituem aconselhamento financeiro ou qualquer outra recomendação de qualquer tipo oferecida ou endossada pela Gate.io.
* Este artigo não pode ser reproduzido, transmitido ou copiado sem referência à Gate.io. A contravenção é uma violação da Lei de Direitos Autorais e pode estar sujeita a ação legal.
Comece agora
Inscreva-se e ganhe um cupom de
$100
!
Criar conta