Heim  >  Artikel  >  Diskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls

Diskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls

王林
王林nach vorne
2024-02-04 09:30:08425Durchsuche

PHP-Redakteur Baicao wird die Prinzipien und technischen Details des Ordinal-Inschriftenprotokolls im Detail analysieren. Das Ordinal Inscription Protocol ist ein Verschlüsselungsprotokoll zum Schutz der Datenübertragung. Es verwendet fortschrittliche Verschlüsselungsalgorithmen und Authentifizierungsmechanismen, um die Sicherheit und Integrität der Daten während der Übertragung zu gewährleisten. In diesem Artikel werden die Grundprinzipien des Ordinal-Inskriptionsprotokolls vorgestellt, einschließlich Kerntechnologien wie Schlüsselaustausch, Verschlüsselungsalgorithmen und Nachrichtenauthentifizierungscodes, und seine Anwendung in der Netzwerkkommunikation eingehend untersucht. Egal, ob Sie Anfänger oder Profi sind, die Lektüre dieses Artikels wird Ihnen helfen, ein tieferes Verständnis des Ordinal-Protokolls zu erlangen.

BTC-Blockstruktur

Blockchain ist eine Mehrbenutzer-Buchhaltungstechnologie, die auch als verteilte Datenbank bezeichnet werden kann. Es organisiert Datensätze in chronologischer Reihenfolge in Blöcken und erweitert das Hauptbuch.

Diskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls

Wir haben mit Excel eine Tabelle erstellt, um zu erklären, wie die Blockchain funktioniert. Eine Excel-Datei stellt eine Blockchain dar, in der jede einzelne Tabelle einen Block darstellt. Die Blöcke sind in chronologischer Reihenfolge von 560331, 560332 bis spätestens 560336. 560336 packt die neuesten Transaktionen in den Block. Der Hauptteil des Blocks ist die gebräuchlichste doppelte Buchführungsmethode im Buchhaltungsbereich. Eine Seite der Adresse wird als Soll (Soll) erfasst, also als Eingang, und die andere Seite wird als Haben (Haben) erfasst. an die ausgegeben wird. Der Wert entspricht der Anzahl der BTC in der entsprechenden Adresse. Die Anzahl der Input-Münzen ist größer als die Anzahl der Output-Coins, und die Differenz ist die Transfergebühr auf Benutzerebene und die Bearbeitungsgebühr, die von den Minern (Buchhaltern) erhoben wird. Der Blockheader erhält die Höhe des vorherigen Blocks, den Hashwert des vorherigen Blocks, die Erstellungszeit (Zeitstempel) dieses Blocks und eine Zufallszahl. Wer wird also als dezentrale Buchhaltungstechnologie die Buchhaltungsrechte des nächsten Blocks übernehmen? Es basiert auf dieser Zufallszahl und dem entsprechenden Hashwert. Miner mit Rechenleistung führen eine Hash-Berechnung auf der Zufallszahl des aktuellen Blocks durch. Der Miner, der zuerst den Hash-Wert erhält, der die Bedingungen erfüllt, hat die Abrechnungsrechte für den nächsten Block und gewinnt die Blockbelohnung und die Übertragungsgebühr. Schließlich gibt es noch den Skriptbereich, der für einige erweiterte Anwendungen verwendet werden kann. Beispielsweise kann das Skript op_return als Postscript-Spalte verwendet werden. Es ist zu beachten, dass der Skriptbereich im eigentlichen Block an die Ein- und Ausgabeinformationen angehängt ist und kein separater Bereich ist. Das an die Eingabe angehängte Skript ist beispielsweise ein Entsperrskript (ScriptSig), das die Wallet-Adresse für die Signaturautorisierung des privaten Schlüssels benötigt, um die Übertragung zu ermöglichen, während das an die Ausgabe angehängte Skript ein Sperrskript (ScriptPubKey) ist, das dazu dient Legen Sie die Entsperrbedingungen für den Empfang von BTC fest (im Allgemeinen lautet die Bedingung „Nur diejenigen mit dem entsprechenden privaten Schlüssel können konsumieren“).

Diskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls

Diskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls

Die ursprünglichen Eingabe- und Ausgabedatenstrukturtabellen zeigen die begleitenden Parameter der Transaktionsinformationen. Darunter ist das Entsperrskript (ScriptSig) Teil der Autorisierung mit privatem Schlüssel und wird auch als „Zeugendaten“ bezeichnet.

Segwit und Taproot

Während das Bitcoin-Netzwerk seit über 10 Jahren ohne nennenswerten Vorfall läuft, sind die Transaktionskosten immer wieder auf Höhen gestiegen, die nicht mehr machbar sind. Infolgedessen diskutieren Bitcoin-Entwickler darüber, wie sie das Netzwerk am besten skalieren können, um künftig wachsende Transaktionsvolumina zu bewältigen.

Im Jahr 2017 war die Bitcoin-Entwicklergemeinschaft in zwei Fraktionen gespalten. Eine Fraktion unterstützte die SegWit-Funktion von Soft Forks und die andere befürwortete eine direkte Erweiterung der Blockgröße, die sogenannte „Big Block“-Fraktion. Die Spaltung löste heftige Debatten aus.

Wir haben oben erwähnt, dass das Entsperrskript die Autorisierung eines privaten Schlüssels erfordert, um „Zeugendaten“ zu generieren. Können diese Zeugendaten also vom Block getrennt werden, wodurch die Anzahl der Transaktionen erhöht wird, die jeder Block getarnt aufnehmen kann? Segregated Witness wurde im August 2017 offiziell aktiviert. Die Implementierung besteht darin, alle Transaktionsdaten in zwei Teile zu unterteilen: Ein Teil sind die Basisinformationen der Transaktion (Transaktionsdaten), der andere Teil sind die Signaturinformationen der Transaktion (Zeugendaten) und die Signaturinformationen werden gespeichert Eine neue Datenstruktur befindet sich in einem neuen Block namens „Segregated Witness“ und wird getrennt von der ursprünglichen Transaktion übertragen.

Diskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls

Technisch gesehen bedeutet die Implementierung von SegWit, dass Transaktionen keine Zeugendaten mehr enthalten müssen (es wird nicht den ursprünglich von Bitcoin für Blöcke vorgesehenen 1 MB-Speicherplatz beanspruchen). Stattdessen wird am Ende eines Blocks ein zusätzlicher separater Bereich für Zeugendaten erstellt. Es unterstützt beliebige Datenübertragungen und verfügt über ein reduziertes „Blockgewicht“, das große Datenmengen geschickt innerhalb der Blockgrößenbeschränkungen von Bitcoin hält, um die Notwendigkeit einer Hard Fork zu vermeiden. Auf diese Weise wird die Obergrenze der Transaktionsdatengröße von Bitcoin-Transaktionen erhöht, während die Transaktionsgebühr von Signaturdaten reduziert wird. Vor dem SegWit-Upgrade lag die Obergrenze der Bitcoin-Kapazität bei 1 MB, obwohl die Obergrenze für reine Transaktionen immer noch 1 MB betrug, erreichte die Größe des Segregated Witness-Speicherplatzes 4 MB.

Taproot wurde im November 2021 implementiert und besteht aus drei verschiedenen Bitcoin Improvement Proposals (BIPs), darunter: Taproot, Tapscript und sein neues digitales Signaturschema namens „Schnorr Signature“. Taproot wurde entwickelt, um Bitcoin-Benutzern viele Vorteile zu bieten, wie z. B. eine erhöhte Privatsphäre bei Transaktionen und niedrigere Transaktionsgebühren. Dadurch kann Bitcoin auch komplexere Transaktionen durchführen und dadurch die Anwendungsszenarien erweitern (einige neue Opcodes wurden hinzugefügt).

Diese Updates sind eine wichtige Voraussetzung für Ordinals NFT, das NFT-Daten in einem Spend-Skript im Taproot-Skriptpfad (Zeugendatenraum) speichert. Dieses Upgrade erleichtert die Strukturierung und Speicherung beliebiger Zeugendaten und legt den Grundstein für den „ord“-Standard. Mit der Lockerung der Datenanforderungen wird davon ausgegangen, dass eine Transaktion einen ganzen Block mit ihren Transaktions- und Zeugendaten füllen kann – und damit die Blockgröße von 4 MB (Zeugendatenspeicherplatz) erreicht – wodurch die Arten von Medien, die in der Kette platziert werden können, erheblich erweitert werden . .

Einige Leute fragen sich vielleicht: Gibt es keine Einschränkungen für diese Zeichenfolgen, da einige Zeichenfolgen in das Skript eingefügt werden? Was passiert, wenn diese Skripte tatsächlich ausgeführt werden? Wenn Sie den Inhalt beiläufig platzieren, wird es dann einen Fehlercode geben, der die Erzeugung eines Blocks verweigert? Dadurch wird die Anweisung OP_FALSE aufgerufen. OP_FALSE (in Bitcoin Script auch als „0“ dargestellt) stellt sicher, dass der Ausführungspfad in der Skriptsprache niemals in den OP_IF-Zweig gelangt und nicht ausgeführt wird. Es fungiert als Platzhalter oder keine Operation (No Operation) im Skript, ähnlich einem „Kommentar“ in einer Hochsprache, um sicherzustellen, dass nachfolgender Code nicht ausgeführt wird.

Diskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls

UTXO-Transfermodell

Das obige ist der detaillierte Inhalt vonDiskussion der Prinzipien und technischen Details des Ordinalinschriftprotokolls. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen