php エディター Baicao は、Ordinal 碑文プロトコルの原理と技術的詳細を詳細に分析します。 Ordinal inscription プロトコルは、データ送信を保護するために使用される暗号化プロトコルであり、高度な暗号化アルゴリズムと認証メカニズムを使用して、送信中のデータのセキュリティと整合性を確保します。この記事では、鍵交換、暗号化アルゴリズム、メッセージ認証コードなどのコア技術を含む Ordinal 碑文プロトコルの基本原理を紹介し、ネットワーク通信におけるその応用を深く探ります。初心者でも専門家でも、この記事を読むと、Ordinal プロトコルをより深く理解できるようになります。
ブロックチェーンはマルチユーザー会計技術であり、分散データベースとも呼ばれます。記録を時系列順にブロックに整理し、台帳を拡張します。
Excel を使用して、ブロックチェーンがどのように機能するかを示す表を作成しました。 Excel ファイルはブロックチェーンを表しており、各個別のテーブルがブロックを表します。ブロックは 560331、560332 から最新の 560336 まで時系列順に並んでいます。560336 はブロック内の最新のトランザクションをパッケージ化します。ブロックの本体部分は会計分野で最も一般的な複式簿記方式で、一方の住所は入力となる借方(借方)として記録され、もう一方の住所は貸方(貸方)として記録されます。クレジット)、への出力です。値は、対応するアドレスの BTC の数に対応します。入力コインの数は出力コインの数よりも多くなり、その差額はユーザーレベルでの送金手数料とマイナー(ブックキーパー)が得る手数料です。ブロックヘッダーは、前のブロックの高さ、前のブロックのハッシュ値、このブロックの作成時刻 (タイムスタンプ)、および乱数を取得します。では、分散型会計技術として、次のブロックの会計権を誰が掴むのでしょうか?この乱数とそれに対応するハッシュ値に依存します。計算能力のあるマイナーが現在のブロックの乱数に対してハッシュ計算を行い、条件を満たすハッシュ値を最初に取得したマイナーが次のブロックの会計権を持ち、ブロック報酬と転送手数料を獲得します。最後にスクリプト領域があり、一部の拡張アプリケーションに使用できます。たとえば、スクリプト op_return をポストスクリプト列として使用できます。実際のブロックでは、スクリプト領域は実際には別個の領域ではなく、入力情報と出力情報に関連付けられていることに注意してください。たとえば、入力に添付されたスクリプトはロック解除スクリプト (ScriptSig) で、転送を許可するには秘密キー署名の承認にウォレット アドレスが必要ですが、出力に添付されたスクリプトはロック スクリプト (ScriptPubKey) で、これは次の目的で使用されます。 BTCを受け取るためのロック解除条件を設定します(通常、条件は「対応する秘密鍵を持つもののみが消費できる」です)。
#元の入力データ構造テーブルと出力データ構造テーブルには、トランザクション情報の付随パラメーターが示されています。このうち、ロック解除スクリプト (ScriptSig) は秘密鍵認証の一部であり、「証人データ」とも呼ばれます。 分離された証人およびタップルートビットコイン ネットワークは 10 年以上重大な事故もなく運営されてきましたが、取引コストは繰り返し高騰し、もはや実行不可能な高値に達しています。その結果、ビットコイン開発者は、将来的に増加するトランザクション量に対処するためにネットワークを最適に拡張する方法について議論してきました。 2017 年、ビットコイン開発コミュニティは 2 つの派閥に分かれていました。1 つの派閥はソフト フォークの SegWit 機能を支持し、もう 1 つは「ビッグ ブロック」派として知られるブロック サイズの直接拡張を支持しました。この分裂は激しい議論を引き起こした。 ロック解除スクリプトは秘密キー認証を使用して「証人データ」を生成する必要があると上で述べましたが、この証人データをブロックから分離して、偽装して各ブロックの容量を増やすことができますか?取引数は? Segregated Witness は 2017 年 8 月に正式に有効になりました。その実装は、すべてのトランザクション データを 2 つの部分に分割し、1 つの部分はトランザクションの基本情報 (Transaction Data) で、もう 1 つの部分はトランザクションの署名情報 (Witness Data) であり、署名情報を新しいデータに保存します。構造 は、「分離された証人 (証人)」と呼ばれる新しいブロック内にあり、元のトランザクションとは別に送信されます。技術的には、SegWit の実装は、トランザクションに証人データを含める必要がなくなることを意味します (ビットコインがブロック用に元々配置していた 1MB のスペースを占有することはありません)。代わりに、ブロックの最後に、証人データ用に追加の別個のスペースが作成されます。任意のデータ転送をサポートし、ハード フォークの必要性を回避するために大量のデータをビットコインのブロック サイズ制限内に賢く維持する割引「ブロック ウェイト」を備えています。これにより、ビットコイン取引の取引データサイズの上限が増加し、署名データの取引手数料が削減されます。 SegWit のアップグレード前は、ビットコインの容量の上限は 1MB でしたが、SegWit 後は、純粋なトランザクションの上限は 1M のままでしたが、Segregated Witness の領域のサイズは 4MB になりました。
Taproot は 2021 年 11 月に実装され、Taproot、Tapscript、および「Schnorr Signature」と呼ばれるその新しいデジタル署名スキームを含む 3 つの異なるビットコイン改善提案 (BIP) で構成されています。 Taproot は、トランザクションのプライバシーの向上やトランザクション手数料の削減など、ビットコイン ユーザーに多くのメリットをもたらすように設計されています。また、ビットコインがより複雑なトランザクションを実行できるようになり、アプリケーションのシナリオが広がります (いくつかの新しいオペコードが追加されました)。
これらのアップデートは、Taproot スクリプト パス (監視データ空間) の支出スクリプトに NFT データを保存する Ordinals NFT の重要なイネーブラーです。このアップグレードにより、任意の証人データの構造化と保存が容易になり、「ord」標準の基礎が築かれます。データ要件が緩和されると、トランザクションはブロック全体をそのトランザクションと監視データで満たすことができると想定され、4MB のブロック サイズ (監視データ スペース) 制限に達し、チェーン上に配置できるメディアの種類が大幅に拡大します。 。
スクリプトにはいくつかの文字列が含まれているのですが、これらの文字列には制限がないのではないかと疑問に思う人もいるかもしれません。これらのスクリプトが実際に実行されるとどうなるでしょうか?何気なく内容を記載すると、ブロックの生成を拒否するエラーコードが表示されますか?これにより、OP_FALSE 命令が表示されます。 OP_FALSE (ビットコイン スクリプトでは「0」とも表されます) は、スクリプト言語の実行パスが OP_IF 分岐に入らず、実行されないままであることを保証します。これは、高級言語の「コメント」と同様に、スクリプト内のプレースホルダーまたは操作なし (No Operation) として機能し、後続のコードが実行されないようにします。
以上がOrdinal inscription プロトコルの原則と技術的詳細についての議論の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。