
Autor: Janos Nick, Blockstream
Zusammenstellung: Bai Ding & amp;
Zusammenfassung:Dieser Artikel ist präzise, aber ein weiteres Blut zeigt, wie Bitcoin die ZK -Überprüfungsfunktion unterstützt.Der Artikel hat eine relativ klare Sichtweise:
Es ist ein unvermeidlicher Trend, ZK in die Bitcoin -Vereinbarung einzuführen.Einer ist, dass das Bitcoin -Skript die Snark -Überprüfung direkt unterstützt. Daten.
>
Text:Um Bitcoin tiefer zu verstehen, behandeln wir es besser als ein soziales System.Als Bitcoin früh gestartet wurde, stellten Entwickler das Softwareprogramm fest, das Bitcoin -Knoten ausführen mussten, genau wie die Regeln, die von einer Reihe von sozialen Systemen gefolgt sind.Der Grund, warum das soziale System von Bitcoin stabil arbeiten kann, ist, dass jeder einen Konsens über „Was ist die Essenz von Bitcoin“ und „Was sollte“ und andere wichtige Themen haben.Natürlich ist die Erreichung des Konsenses nicht einfach.
>
Dies kann auf die historische Quelle von Bitcoin zurückgeführt werden.Als die Mittelschule das Bitcoin White Book veröffentlichte, sagte ich: „Ich studiere ein neues elektronisches Zahlungssystem. Dieses System ist vollständig P2P und muss sich nicht auf Dritte verlassen.“Dieser Absatz wird in der Liste der Punk -Punk -E -Mails für Passwort veröffentlicht (eine 1992 eingerichtete E -Mail -Diskussionsgruppe, die aus einer Gruppe von Kryptologen und technischen Enthusiasten besteht, die sich auf Datenschutz- und Kryptographie -Technologie konzentrieren).
Bitcoin begrenzt jedoch den Datendurchsatz auf Produktdesignebene.Die Anzahl der Transaktionen, die während der Einheitszeit beschränkt werden können, ist begrenzt.Nach einer einzelnen Transaktion mit der höchsten Handhabungsgebühr im Bitcoin -Netzwerk erscheinte im Jahr 2024 nach der Halbierung der Dekoration eine mittlere Transaktionsgebühr für eine Priorität der Kette 150 US -Dollar.Es kann gesagt werden, dass die teure Handelsgebühr für das Bitcoin -Netzwerk zu einem Problem geworden ist.
Um das Problem der Transaktionsgebühren zu lösen, haben die Menschen viele Ressourcen in die Entwicklung des Blitznetzwerks investiert.Laut einem im Jahr 2016 veröffentlichten Papier kann das Lightning -Netzwerk jedoch nur zig Millionen von Benutzern in der Praxis unterstützen und die Vision seines globalen Zahlungssystems nicht realisieren.
Zusätzlich zur Transaktionsgebühr ist zu teuer, es gibt ein anderes Problem, nämlich, nämlichBitcoin konnte immer keine Anonymität erreichen, die Sie in seiner Vision erreichen möchten.Nakamoto wies in der Punk -Punk -E -Mail -Diskussionsgruppe darauf hin, dass Bitcoin Datenschutzschutzfunktionen hat und die Sponsoren von Transaktionen vollständig anonym sein können.Obwohl der Handelsinitiator kein KYC benötigt, läuft die Transaktionsdaten auf der Bitcoin -Kette viele Informationen, die weitgehend die Privatsphäre der Benutzer enthüllen.
Obwohl einige Brieftaschenkunden mit Datenschutzfunktionen die oben genannten Probleme in gewissem Maße gelöst haben, stehen die Entwickler dieser Brieftaschenkunden vor einer Bedrohung durch große und kleine.Zum Beispiel wurden die Entwickler der Samourai Coinjoin -Brieftasche im April 2024 vom FBI festgenommen, und eine Woche später schlossen die Entwickler der Wasabi -Brieftasche ihre koordinierten Coinjoin -Komponenten.Offensichtlich sind diese sogenannten Datenschutzbrieftaschen des Benutzervertrauens nicht vollständig würdig.
Zusammenfassend lässt sich sagen, dass viele der Konzepte von Bitcoin heute weit realisiert werden, und verwandte Technologien entwickeln sich noch.Trotzdem glauben viele Menschen in der Bitcoin -Community, dass das Abkommensdesign von Bitcoin unverändert bleiben sollte, aber viele Menschen sind leidenschaftlich, Bitcoin wie mich zu verbessern.In welche Richtung sollte sich Bitcoin verbessern?
>
Für die oben genannten Probleme,Es gibt viele Vorschläge in der Bitcoin -Community.Mit ZK und Schnuppen,Die folgenden Funktionen können erreicht werden:
1. wie zcash).
2. Verbesserung des Transaktionsdurchsatzes
-
Sie können den Stapel und die gleiche Überprüfung wiederherstellen (unter Verwendung der gleichen Formel, um zu überprüfen, ob die spezifischen Bedingungen erfüllt sind, um die Sicherheit und Wirksamkeit der Transaktion sicherzustellen), und Sie können einen Zweig von If-eese ausführen.
-
Sie können begrenzte arithmetische Operationen auf 32 Ziffern durchführen, dh Addition und Subtraktion.
-
Daten können benommen und Sie können die Signaturen von ECDSA und Schnorr überprüfen.
-
Es gibt keinen Zyklus, Springen, Rekursion, dh nicht vollständig, und die Programmierfähigkeit ist sehr begrenzt.
-
Kann nicht durch Position durchgeführt werden.
-
Mangel an Betriebscode für die Multiplikationsmethode.
-
Kann Elemente nicht am Stapel verbinden.
-
Es gibt fast keine Möglichkeit, die Transaktionsdaten in der Kette zu lesen und zu überprüfen.Bitcoin -Skripte können nicht direkt auf die Menge jeder Transaktion zugreifen, und es gibt keine Möglichkeit, den Status zu bestehen (UTXO wird in einer Zeit verwendet, und jede Übertragung zerstört die alte Generation).
Tatsächlich gibt es viele technische Mittel, um die in Bitcoin vorhandenen Probleme zu lösen. Warum wurden diese Technologien bis heute nicht zum Bitcoin -Abkommen hinzugefügt?Dies liegt daran, dass die Bitcoin -Vereinbarung schwer zu ändern ist.Es gibt keine Organisation, die der Ethereum Foundation im Bitcoin -Ökosystem ähnelt.Daher wird der EVM -Betriebscode von Ethereum jedes Jahr aktualisiert, und das Bitcoin -Abkommen hat sich seit seiner Gründung sehr wenig verändert.
Tatsächlich ist es gut, dass es in gewissem Maße geändert wird.Dies führt zu einem Problem:In Ermangelung des Designs des Bitcoin -Protokolls kann die Leistung von Bitcoin verbessern?
>
Um diese Frage zu beantworten, müssen wir zunächst das Wissen über Bitcoin überprüfen.Wenn wir Bitcoin auf andere übertragen möchten, müssen wir zuerst eine Transaktion erstellen und in das Bitcoin -Netzwerk übertragen.Die Ausgangsdaten der Transaktion erläutern die Menge an BTC der Übertragung, und der BTC -Empfänger kann eine neue Transaktion erstellen, um die empfangene BTC auszugeben.Seitdem generiert diese neue Transaktion neue Ausgabedaten und sendet BTC an andere.
Es ist hier zu beachten, dass Bitcoin keinen globalen Staat wie Ethereum hat, insbesondere den Zustand des Kontos, nur die Transaktionsausgabendaten.Es gibt zwei Zustände jeder Transaktionsausgabe: Die Empfänger wurden ausgegeben oder wurden nicht ausgegeben.Die Ausgabe, nicht ausgegeben zu werden, ist der UTXO, mit dem wir vertraut sind.
sicherlich,Mit Ausnahme des zugehörigen BTC verfügt jede Transaktionsausgabe über ein zusätzliches Programm, das in einer Sprache, die als Bitcoin -Skript bezeichnet wird, geschrieben ist.Wer kann den richtigen Beweis für das Zeuge dieses Programms zeigen, der die Transaktionsausgabe (UTXO) ausgeben kann.Bitcoin Skript selbst ist eine stapelbasierte Programmiersprache, einschließlich einer Reihe von Betriebscodes.
Es gibt viele Arten von gemeinsamen Bitcoin -Skripten, die seit Beginn von Bitcoin existieren.Beispielsweise besteht das häufigste Skriptprogramm in Bitcoin aus dem Betriebscode des öffentlichen Schlüssels+, der die digitale Signatur überprüft.Der Betriebscode sieht vor, dass es erforderlich ist, einen bestimmten UTXO anzuzeigen/freizuschalten, und die Zahlensignatur des entsprechenden öffentlichen Schlüssels muss angezeigt werden.
Empfohlenes Lesen: „Hintergrundwissen über das Verständnis von Bitvm (1)“ (1) „(1)“
>
Hier fassen wir die Funktion des Bitcoin -Skripts zusammen.Was kann das Bitcoin -Skript zuerst tun?
Was kann Bitcoin -Skript nicht tun?
In der frühen Version von Bitcoin konnten einige der oben genannten Skripte nicht erledigt werden, aber einige von ihnen konnten tatsächlich erledigt werden, aber einige Funktionen wurden später von Satoshi Nakamoto verboten, da Nakamoto feststellte, dass diese Betriebscodes Schwachstellen hatten.Zum Beispiel kann der Betriebscode OP_CAT, der 2 Elemente im Stapel verschmelzen, für Langzeitangriffs -Bitcoin -Knoten verwendet werden, um ihn zusammenzuschließen.
Also,Kann das Bitcoin -Skript Snark überprüfen?Obwohl das Bitcoin -Skript nicht vollständig ist, reicht seine Grundvorbereitung aus, um Berechnungen zu überprüfen.Da die für die Verifizierungsschritte erforderliche Programmgröße die größte Blocklimit von Bitcoin -4 MB überschreitet.
Vielleicht können wir versuchen, arithmetische Operationen in Limited -Domänen mit großer Ebene durchzuführen, aber diese Kosten sind sehr hoch.
Und,Die Kosten für die Überprüfung von Merkle’s Proof ohne OP_CAT sind ebenfalls sehr hoch.Weil dies dem Betrieb der für die Schleife ähnlich sein muss.
>
AlsoZurück zur vorherigen Frage: Warum können wir nicht einfach die Bitcoin -Vereinbarung ändern und leistungsfähigere Betriebscodes hinzufügen?
Wie bereits erwähnt, ist es schwierig, einen Mehrheitsbeteiligung über die neuen Vertragsregeln zu erzielen, da das Bitcoin -Ökosystem keinen zentralisierten Entscheidungsträger hat.Jeder Verbesserungsvorschlag für das Bitcoin -Skript hat viele Einwände,Die Position und der Winkel aller sind anders.Im Bitcoin -Netzwerk gibt es keinen guten Weg, um zu messen, ob die Community einen Mehrheitsbetrag erreicht hat.
sicherlich,Bitcoin ist nicht genau das gleiche.
>
Das Taproot -Upgrade hat viele Regeln geändert und es dauerte dreieinhalb Jahre von der theoretischen Veröffentlichung bis zur wirklich aktivierten.Der Schlüsselfaktor der Erleuchtung von Taproot besteht darin, dass sie die vorhandenen Sicherheitsannahmen nicht geändert und die Bitcoin -Vereinbarung erheblich verbessert hat.Beispielsweise ermöglicht es die Verwendung von Schnorr, anstelle von ECDSA zu signieren.
Darüber hinaus ist die Verbesserung der Taproot -Bitcoin hauptsächlich in die folgenden drei Teile unterteilt:
Zunächst reduziert Taproot die Überprüfungskosten einer großen Anzahl selektiver Zweige, mit denen Bitcoin kompliziertere Programme unterstützen kann.
Zweitens reduziert Taproot die Skriptdaten, die in der Kette angezeigt werden müssen. es zeigt ihm die Blätter und Merkle -Beweis;
Drittens fügte Taproot auch andere Mechanismus -Design hinzu.
>
Sprechen,Da Bitcoin einen Präzedenzfall zum Hinzufügen von leistungsfähigeren Funktionen wie Tarpoot hat, fügen Sie nicht einen dedizierten Betriebscode hinzu, um Snark zu überprüfen?Dies liegt daran, dass das Hinzufügen eines sogenannten OP_SNARK -Betriebscodes sehr unterschiedlich ist, als das Taproot -Upgrade.
Erstens gibt es viele Designideen von OP_SNARK, was es schwierig ist, die meisten Menschen eine einzelne Lösung zu ermöglichen.
Darüber hinaus ist die Komplexität von op_snark selbst keine kleine Herausforderung.Wenn es keine Tests beinhaltet, fügt Taproot nur etwa 1.600 Codezeilen hinzu, was für Personen akzeptabel ist.
Wie auch immer, wer wird den Operationscode von OP_SNARK überprüfen, sollte er aktiviert werden?Wie kann man einen Konsens im Bitcoin -Ökosystem erzielen, wenn nur wenige Menschen ihre Details verstehen?Das sind alles Probleme.daherZusammengenommen wird das OP_SNARK -Upgrade in kurzer Zeit nicht stattfinden.
>
Es gibt jedoch andere Möglichkeiten, Snark im Bitcoin -Skript zu überprüfen.Wir können einen einfacheren Operation Code hinzufügen, um das Bitcoin -Skript leistungsfähiger zu gestalten, sodass Menschen das Snark -Überprüfungsprogramm im Skript implementieren können.Tatsächlich ist es jedoch sehr schwierig, das Snark -Überprüfungsprogramm in der Bitcoin -Skriptsprache zu schreiben.
Daher entwickelt das Blockstream -Forschungsteam Einfachheit, eine Programmiersprache, die das Bitcoin -Skript ersetzen soll.Einfachheit ist für das Blockchain Consensus -System ausgelegt, das absichtlich als vollständige und vollständige Analyse und formale Überprüfung ausgelegt ist.
>
Im Folgenden müssen wir über einen sehr einfachen, aber starken Vorschlag sprechen.Wie ich bereits erwähnt habe, existiert OP_CAT in der Originalversion von Bitcoin, aber dieser Betriebscode kann unter bestimmten Bedingungen von DOS angegriffen werden, sodass er von Satoshi Nakamoto verboten ist. .
Die Funktion von op_cat besteht aus zwei Elementen, die die Oberseite des Stapels aufgeben, sie verbinden und dann wieder in den Stapel bringen.Das klingt sehr einfach, aber es kann das Bitcoin -Skript enorme funktionale Verbesserungen verleihen.
Zum Beispiel konnte das Bitcoin -Skriptprogramm nicht auf die Menge der Transaktion in der Kette zugreifen, aber es wäre möglich, Op_cat zu haben.Kurz gesagt, OP_CAT ist ein Upgrade der zugrunde liegenden Betriebscode -Ebene, die viele neue Funktionen ableitet.
Hilft OP_CAT, Snark im Skript zu überprüfen?Die Antwort ist Hilfe, da die Unterstützung von Merkle -Proofs von Überprüfung dazu beiträgt, den von Fri basierenden Snark zu überprüfen, und OP_CAT kann dies unterstützen.In der Vergangenheit können die in Snark beteiligten Skriptprogramme zu groß sein und nicht in den Bitcoin -Block eingebaut werden.
OP_CAT wird in der Vergangenheit seit vielen Jahren diskutiert, und immer mehr Menschen haben ihre Rolle bei der Handelsinspektion erkannt.Im Vergleich zu anderen Vorschlägen besteht der Vorteil von OP_CAT darin, dass es zuvor im Bitcoin -Skript existiert hat. Daher ist es einfacher, einen Konsens in der Community zu erzielen.OP_CAT kann jedoch auch dazu führen, dass das MEV -Einkommen einiger Menschen beschädigt wird, sodass die Bitcoin -Community noch keinen Konsens darüber erzielt hat.
Zusammenfassend,Bitcoin kann einen potenziellen Weg haben.Es ist auch erwähnenswert, dass es einen aktuellen Vorschlag namens „Great Skript Restaton“ gibt, mit dem der Multiplikationsbetriebscode alle arithmetischen Betriebscodes willkürlich ermöglicht.
>
Wenn wir den Einfluss des OP_CAT -Bitcoin -Netzwerks betrachten, können wir nach dem Bestehen seinen Einfluss auf den Operator des Bitcoin -Knotens untersuchen.Um es Bitcoin zu ermöglichen, Anti -Review und Dezentralisierung zu haben, hofft die Bitcoin -Community, die Daten zur Überprüfung der Knoten so weit wie möglich auszuführen.Wenn Bitcoin Snark -Überprüfungsvorgänge unterstützt, steigen die Kosten für den Betrieb des Bitcoin -Knotens nicht wesentlich, was für die Sicherheit und den Widerstand von Bitcoin nicht viel schädlich ist.
Derzeit kann ein Bitcoin -Block bis zu 4 MB Daten enthalten.Jede Block kann derzeit eine Signaturüberprüfung von bis zu 80.000 enthalten, wobei durchschnittlich 7.000 bis 10.000 Signaturüberprüfungen pro Block sind.Natürlich ist es nicht nur eine Zeit, die die Signaturüberprüfung auswirkt, die die Geschwindigkeit der Blocküberprüfung beeinflusst.
Wenn Bitcoin -Transaktionen ZK in Zukunft unterstützen, auch wenn die Zeit der Transaktionserzeugung verlängert wird, scheint sie nicht schädlich zu sein.Bei Hardware -Geldbörsen für langfristige Speichervermögen haben sie häufig Bildschirme und ihre Lautstärke ist nicht groß.Die CPU der Hardware -Brieftasche ist im Allgemeinen schwach, wie z. B. 240 MHz Dual -Core -CPUs und ein bestimmter Speicher, der bei der Unterzeichnung einer Bitcoin -Transaktion sehr schnell reagiert.
>
Ich habe eine kleine Umfrage vorgenommen und den Benutzer gefragt, dass der Benutzer die längste Verzögerung akzeptieren könnte.Wenn wir also ZK in Bitcoin -Transaktionen einführen, scheint es nicht viel Ärger zu haben.
Wir verbringen viel Platz, um zu diskutieren, wie das zugrunde liegende Design von Bitcoin geändert werden kann, aber es gibt tatsächlich viele Anwendungsszenarien, die ohne Änderung von Bitcoin erreicht werden können.Hier möchte ich eine Anwendung im Zusammenhang mit Bitvm -Chain -Zustandsnachweisen hervorheben, die ZK kombiniert, um die Wirksamkeit des Block -Hashs zu beweisen.
>
Welche Veränderungen haben diese Technologie nach Bitcoin gebracht?Erste,Mit den Kettenzustandsbeweisen kann die Synchronisation und Überprüfung der Bitcoin -Kalenderdaten komprimieren, die die Kosten für laufende Knoten erheblich reduzieren.Derzeit dauert es 5 Stunden und 30 Minuten, um aus dem Erstellungsblock zu synchronisieren und die neuesten Bitcoin -Blöcke für eine Hardware zu überprüfen.Zweitens,Der kettenähnliche Zustand ist ein wichtiger Teil, der mit BITVM verwendet werden kann, was die Implementierung von BITVM fördert.
Das Zerosync -Team, das in der Tiefe der kettenstaatlichen Beweise durchgeführt wurde, und eine leichtere „Header -Ketten -Proofs“ erstellt. „“ „“ Enthalten alle 850.000 Blockköpfe in der Bitcoin -Geschichte und generieren 80 Bytes für jeden Blockkopf.
Dieses Schema erfordert eine doppelte SHA-256-Berechnung jedes Bitcoin-Blockkopfes, um das entsprechende POW-Zertifikat zu überprüfen.Zerosync verwendet Starks, um Bitcoin -Header -Kettennachweis zu erzeugen.
>
Da der Überprüfungsprozess jedoch nicht den Inhalt des Transaktionsinhalts in den Block enthält, kann der Header -Kettenbeweis nur davon ausgehen .In diesem Szenario kann der Angreifer zwar einen Block erstellen, der ungültige Transaktionen enthält, mehr Blöcke nach dem Block hinzufügen und den Header -Kettennachweis erzeugen, um den Bitcoin -Client mit synchronen historischen Daten zu blenden, aber der Angriff erfolgt, wenn Sie dies tun, sind die Kosten Extrem teuer und wird direkt vom vorhandenen Bitcoin Full -Node -Client ausgesetzt.
>
Obwohl die Erfolgsrate dieses Angriffsszenarios sehr niedrig ist, kann der Angreifer, wenn der Angreifer die große Menge an BTC stehlen kann, der Header -Ketten -Proof nicht als narrensichere Lösung erkannt werden.Wenn wir eine vollständige Kette beweisen wollen, müssen wir direkt nachweisen, dass alle Inhalte des Bitcoin -Blocks wirksam sind, einschließlich der SECP256K1 Oval Curve ECDSA und der Schnorr -Signaturüberprüfung.
Bitcoin kann 30 Millionen Unterschriften in den historischen Blöcken eines jeden Monats enthalten.Auf diese Weise beträgt die vom Bitcoin -Netzwerk generierten Blockdaten etwa 7 GB pro Monat, und alle historischen Daten überschreiten 650 GB.In der tatsächlichen Situation kann diese Zahl 2 bis 3 Mal betragen.
>
Schauen wir uns jetzt BitVM noch einmal an.Bitvm ermöglicht Bitcoin, alle Computeraufgaben zu überprüfen.BITVM verwendet zwei Technologien, um die Grenze für die Größe des Bitcoin -Blocks zu umgehen.Zunächst wird die Skriptstruktur von Taproot Merkletree verwendet.
Zweitens ermöglicht es das KV -Speicherschema, auf das über ein einzelnes Skript zugegriffen werden kann, damit eine Verbindung zu einem Super -Skript -Programm hergestellt wird.Die Bitcoin -Vereinbarung erzwingt jedoch nicht die Integrität des oben genannten KV -Speicherschemas.BITVM muss den böswilligen Prover durch Betrugsbeweis überprüfen. .
>
Zusammenfassend lässt sich sagen, dass Bitcoin jedoch mit großen Herausforderungen konfrontiert ist bedeutet auch, dass Bitcoin dezentralisiert und sicherer ist.
Viele Menschen in der Bitcoin -Community freuen sich über das Potenzial von Snark/Stark.Die am besten geeignete Methode zur Implementierung der Snark -Überprüfung in Medium und langfristig ist BITVM, erfordert jedoch mehr F & E -Investitionen, um eine Rolle in der Praxis zu spielen.
Es ist auch eine Idee, den op_cat -Betriebscode wieder einzubauen, aber das Einkommen des Neustarts des Betriebscode muss mehr als Risiko sein und welche einfachen Betriebscodes Snark im Bitcoin -Skript überprüfen oder untersuchen können, welche Szenarien ähnliche Szenarien wie OP_CAT -Funktionen verifizieren können kann erreicht werdenUnabhängig davon, welcher Plan ausgewählt ist, muss der ultimative Zweck der Bitcoin -Community darin bestehen, das Produkt praktisch zu gestalten und mehr Szenen zu unterstützen.
Original -Link: https://www.youtube.com/watch?