707 / 736BRC20

BRC-20

Ordinals Inscriptionsで記録するトークン

BRC-20は、ビットコイン取引に書き込まれたテキストでトークンを管理する仕組みです。Bitcoinはデータを保存しますが、トークン残高は計算しません。別のプログラムであるインデクサーが記録を読み、BRC-20のルールに従って解釈します。

BRC-20はメタプロトコル、つまりBitcoinに保存されたデータを解釈するルールです。基本操作のdeploy、mint、transferは、トークンの作成、単位の発行、移転を担います。追加のBTCでも、ビットコインのコンセンサスに新たに加わった機能でもありません。

domoという名の作者は、Ordinalsを使って代替可能なトークンを作れるかを探りました。同じトークンの各単位を、帳簿上で同じものとして扱うという意味です。原文では実験と説明され、最終的な解決策とみなさないよう注意されています。BRC-20のルールは参加者の合意であり、Bitcoinのルール変更ではありません。 [1]

Inscriptionは、Taproot出力を使用する際にwitnessデータへ書き込むコンテンツです。BRC-20では、p、op、tickなどの名前付きフィールドを持つテキスト、JSONを記録します。Bitcoinノードは取引を検証しますが、このテキストをトークンの帳簿として実行しません。意味を読み取るのはインデクサーです。 [5]

最初の有効なdeployが、大文字と小文字を区別せずにティッカー、つまりトークンの識別名を確保します。供給量maxと、必要に応じて発行上限lim、精度decを設定します。基本ルールでは小数点以下は最大18桁です。従来の4バイトのティッカーに加え、IP1ではself_mintと結び付いた5バイトのティッカーが導入されました。数えるのは文字ではなくUTF-8のバイト数で、自由に置き換えられる形式ではありません。 [2] [3] [6]

保有者はまず、金額amtを指定したtransfer inscriptionを作ります。その金額は利用可能残高から予約されますが、総残高はまだ変わりません。このinscriptionを最初に移動したときだけ、受取人に単位が移ります。自分へ送れば予約が解除されます。transfer inscriptionは一度しか使えず、同じ記録を再び売ってもトークンがもう一度移るわけではありません。 [1] [3]

インデクサーは、イベントの順序、上限、最初の移転を同じように処理する必要があります。残高の所有者は、表示アドレスだけでなく、出力のロックスクリプトであるscriptPubKeyで追跡します。再編成によって順序や帳簿が変わる場合もあります。したがって、ビットコイン取引の承認だけでは、そのBRC-20操作が有効だったとは証明できません。 [3]

基本ルールではコンテンツタイプがtext/plainまたはapplication/jsonで、有効なJSONであることを求めます。必須フィールドと操作名は小文字、必須の値は数値も含めて引用符付きの文字列です。decが小数桁数を、uint64_maxが数値範囲を制限します。人には読めても、引用符のない数値や余分なカンマで操作が無効になり得ます。 [3]

サービスが最初に自分のアドレスでmintを作ると、トークン残高を受け取るのはそのサービスかもしれません。後からmint inscriptionだけを渡しても、その残高は移りません。該当UTXOを誤って使用した場合も、想定外の結果になり得ます。Inscriptionを採掘手数料として送る場合やトークンを破棄する場合には独自のルールがあり、通常のBTC送金の手順をそのまま適用できません。 [1] [6]

最初の有効なdeploy、max、lim、dec、必要ならself_mintを確認し、その後のイベントをブロックと取引の順に追います。OPIでは、各ブロックのイベントハッシュと履歴全体の累積ハッシュを比較できます。ただし、ルールのバージョンは同じでなければなりません。新しいプログラマブルモジュールは元のモデルを拡張しています。この項目はその基礎を説明するもので、すべての拡張を扱うものではありません。 [4]

理解を深めるには、この項目とあわせて次もお読みください Ordinals Inscriptions, Runes, UTXO, Taproot, Bitcoin Script, Fee Rate.

01BitcoinのFull NodesはBRC-20を検証しますか?

ビットコイン取引とそのスクリプトを検証しますが、BRC-20残高は計算しません。残高はインデクサーがメタプロトコルのルールで再構成します。したがって、Bitcoinノードだけではトークンの帳簿を検証できません。

02BRC-20はRunesと同じですか?

いいえ。基本のBRC-20はテキストのOrdinals Inscriptionsと二段階の移転を使います。RunesはOP_RETURNを含む出力にバイナリのrunestoneメッセージを記録し、別の方法でトークンをUTXOに割り当てます。両者のルールは置き換えられません。

DOC · 001domo — BRC-20 experiment一次資料 DOC · 002Layer 1 Foundation — BRC-20 Documentation文書 DOC · 003Layer 1 Foundation — BRC-20 Indexing Rules仕様 DOC · 004OPI — Open Protocol Indexer文書 DOC · 005Ordinal Theory Handbook — Inscriptions文書 DOC · 006Layer 1 Foundation — BRC20 IP1仕様 DOC · 007Ordinal Theory Handbook — Runes文書
改訂日: 一次資料を優先 · 投資助言ではありません