Kugelsichere

Die Grundlagen

@RingCT wurde eingeführt, um Transaktionsbeträge zu verschleiern. Ein Ziel von @RingCT war es, die Summe der Eingaben zu beweisen – Ausgaben in der @Transaktion waren gleich 0 und alle Ausgaben waren positive Zahlen. Um dies zu erreichen, wurden zwei Arten von Ringsignaturen konstruiert: Eine Ringsignatur für die gesamte Transaktion (um zu beweisen, dass die Summe 0 ist) und ein Satz von Ringsignaturen für die Teilmengen von Transaktionsbits (um zu beweisen, dass die Ausgaben positive Zahlen sind). dann unter Verwendung ursprünglicher Schnorr-Signaturen miteinander kombiniert (und später durch Borromäische Ringsignatur ersetzt). Ein großer Nachteil war zwar die enorme Größe einer solchen ringCT-Transaktion.

Wo es um Kugelsichere geht

Im Jahr 2017, a Standford wandte Krypto-Gruppe an schrieb ein Papier präsentiert eine neue Art von Reichweitenbeweisen, genannt Bulletproofs.

Bulletproofs sind kurze, nicht interaktive Zero-Knowledge-Proofs, die keine vertrauenswürdige Einrichtung erfordern.

Bulletproofs sind im Gegensatz zu Borromäischen oder Schnorr-Signaturen sehr effizient als Reichweitenbeweise. Der Beweis einer großen Menge von Daten erzeugt nur einen kleinen Beweis, und die Größe dieser Beweise wächst logarithmisch mit der Größe der zu beweisenden Daten. Dies bedeutet, dass eine Erhöhung der Anzahl der Ausgaben in einer Transaktion bei Bulletproofs die Größe des Proofs nur geringfügig erhöht. Bulletproofs haben auch den Vorteil, dass sie beweisen können, dass mehrere zugesagte Beträge gleichzeitig im gewünschten Bereich liegen. Es ist nicht erforderlich, jede Ausgabe für jedes Ziel in separaten Beweisen nachzuweisen; die gesamten Transaktionsbeträge konnten in einem größeren (aber immer noch sehr kleinen) kugelsicheren Beweis nachgewiesen werden.

Gründlicher Auditprozess und Implementierung

Da Bulletproofs wirklich neu waren und die anfängliche Implementierung durch die Gruppe zwar gründlich durchgeführt wurde, aber eine Neufassung mit Fokus auf unseren speziellen Anwendungsfall erforderte, war die Implementierung von Bulletproof in Haven keine einfache Sache.

Der Code wurde geschrieben und neu geschrieben, um der neuen Version von Bulletproofs zu folgen, die sich noch in der Entwicklung befand, aber sobald diese Haven-Implementierung abgeschlossen war, sollte die resultierende Bereitstellung mit äußerster Sorgfalt durchgeführt werden.

Aus diesem Grund hat die Community einen Auditing-Prozess gestartet. Die Forscher wandten sich an Benedikt Bünz, den Hauptautor des Bulletproofs-Papiers, und an OSTIF eine Organisation, die Open-Source-Technologien dabei unterstützt, sich selbst zu verbessern und zu sichern.

OSTIF leitete die Gruppe an mehrere Organisationen weiter, die über die erforderlichen Fähigkeiten zur Durchführung des Audits verfügten. Während einer von ihnen darum bat, namentlich nicht genannt zu werden, und daher aus dem öffentlich zu machenden Prozess ausgeschlossen wurde, wurden zwei andere (QuarksLab & Kudelski Security) für die Durchführung des Audits ausgewählt.

Unsere 3 Auditoren wurden von der Community finanziert, um zu überprüfen, ob die Implementierung keine kritischen Fehler enthielt und ob sie keine Exploits aufwies.

Die Abschlussberichte wurden im Sommer 2018 veröffentlicht, wobei mehrere nützliche Korrekturen und Fixes vorgeschlagen wurden, und die endgültige kugelsichere Implementierung wurde zuerst dem Haven Stagenet und dann dem Haven-Hauptnetzwerk während des Netzwerk-Upgrades im Oktober 2018 hinzugefügt.

Seit der Bereitstellung von Bulletproofs ist die Größe einer durchschnittlichen Transaktion um mindestens 80% gesunken, ebenso wie die Transaktionsgebühren.

Weitere Erklärungen zur Implementierung von Bulletproofs durch Haven finden Sie auf dem YouTube-Fondajo-Kanal in a Gespräch mit Sarang Noether.

de_DE_formalDeutsch (Sie)