5月7日、インターレイ・クロスチェーン相互運用性プロジェクトの発明者であるアレクセイ・ザミャーチン氏は、ビットコインネットワーク上に完全に分散化されたクロスチェーン資産を確立し、ライトニングネットワークでそれらを活用するBRC-21標準の作成を提案した。
この提案は、イーサリアム、コスモス、ポルカドット、インターレイなどの他の「ソース」チェーンで発行された BRC-20 トークンをビットコインに発行および償還するためのプロトコルを指定します。つまり、BRC-21 は、他のチェーンからのトークンをビットコイン ブロックチェーンで生成および償還できるようにするトークン標準です。
BRC-21とは何ですか?
ザミャーティン氏によると、提案された標準により、分散型ステーブルコインをライトニングネットワークやその他の同等の支払いプロトコルに導入することが可能になり、これが主な使用例となる。一方、BRC-21 資産は、ビットコイン上で ETH、DOT、SOL、その他の暗号通貨を表すために使用できる可能性がある。
提案された方法では、第三者への信頼は必要ありません。
Interlay Labs は、BRC-21 トークン標準に関するドキュメント V 0.1 もリリースしました。ドキュメントの説明によると、BRC-21 コンテンツは本質的には BRC-20 コンテンツのままですが、「突然生まれる」BRC-20 コンテンツとは異なり、BRC-21 は初期資産キー (ETH、DOT、ATOM、DAI など) によって生成される必要があります。言い換えると、BRC-21 標準は、Bitcoin ネットワーク上で ETH、DAI、およびその他のオンライン資産の BRC-20 バージョンを作成する機能を提供します。
ユースケース
BRC-21 資産を利用してビットコイン上で ETH、DOT、SOL、その他の暗号通貨を表すことは可能ですが、この標準から生まれる主な使用例は、ライトニング ネットワークまたは同等の支払いプロトコル上での分散型ステーブルコインの展開です。
MakerDAO、Liquity、RAI などの分散型ステーブルコインは、ペッグを維持するために、複雑な鋳造、償還、清算プロセスを必要とします。プログラム可能性がないため、これらのプロトコルはビットコインに直接インストールできません。他の場所で数行のコードで表現できるビットコインのプロトコルの設計に労力を費やす代わりに、この提案では、クロスチェーン資産をビットコインとの間で鋳造および償還するこの完全に分散化されたアプローチの方が、普遍的に受け入れられる可能性がはるかに高いと主張しています。
技術要件
技術的な観点から見ると、BRC-21 資産のクロスチェーンは、完了するために 3 つのコンポーネントに依存するだけでよく、プロセス全体で完全な分散化が達成されると予想されます。
カスタム インデクサー: Bitcoin の BRC-21 ミント、転送、償還アクティビティ、および SOURCE チェーンの契約ステータスを変更します。
SOURCE チェーン コントラクト: SOURCE チェーンのミントおよび償還手順を処理します。
BTC-Relay: ソース チェーン上にスマート コントラクトとしてデプロイされ、BTC トランザクションを検証および解釈できる BTC ライト クライアント アプリケーション。
たとえば、仕様についてはここを、Ethereum での概念実証の実装についてはここを、Interlay 上の Rust での監査済みの本番実装についてはここを参照してください。
BRC-21 プロトコル
ビットコインネットワークに展開
Interlay Labs は論文の中で BRC-21 資産の初期チェーンへの展開については説明していませんが、それが Bitcoin ネットワーク上でどのように展開されるかについては言及する価値があります。
一般的に、BRC-21 トークンと BRC-20 トークンの実装は似ていますが、具体的には次のような違いがあります。
以前は最大供給量を示すために使用されていた「max」パラメータは不要になりましたが、入力するために選択することはできます。ただし、元の BRC-21 資産の最大供給量は通常、シーケンスの開始前にすでに決定されているため、選択すると安全性がさらに高まります。
制限付きミントを識別するために使用されていた「lim」パラメータは、すべての BRC-21 資産が厳しいミントおよび償還制限の対象となり、トランザクションでミントできるトークンの数を制限する必要がないため削除されました。
「source」パラメータは、トークンが「インポート」するテキストを定義するために導入されます。これは、「Ethereum」のような文字列、または一意の数値識別子(合意されたディレクトリが必要)である可能性があります。
ソース チェーンに「id」フィールドを追加してターゲット トークンを定義します。このフィールドには、そのトークンのコントラクト アドレスを入力できます。
{ "p": "brc-21", "op": "deploy", "tick": "30sResearcg", "max": "10000000" (オプション)、“src”: “CHAIN”, “id”: “contract-address-on-CHAIN” }

SOURCEチェーンにデプロイ
DEPLOY 手順は SOURCE チェーンの実装に依存します。スマート コントラクト CONTRACT 基準は次のとおりです。
COINをロックし、「ロック」イベントを生成する
関連する「引き換え」手順がビットコイン取引に含まれている場合にのみ、COIN のロックを解除します。関連するビットコイン取引を検証および検証 (つまり解析) するには、BTC-RELAY を使用します。
これは、BTC-RELAY 契約がチェーンに実装されていること、またはチェーンに Bitcoin Lite クライアント機能が組み込まれていることを前提としています。
として
CHAINでX COINトークンをロックし、BitcoinでX bCOIN BRC-21トークンを発行します。
ビットコインの「ミント」操作は次のように定義されています(碑文)。
{ "p": "brc-21", "op": "mint", "tick": "bCOIN", "amt": "100", "src": "CHAIN" }
Bitcoin では、採掘された量を「amt」列に、ソース チェーンを「src」フィールドに指定して、BRC-21 の鋳造アクティビティを記録します。
ネットワーク上で 100 枚のコインをロックし、トランザクションの組み込みの証拠となる刻印またはトランザクション ID を CONTRACT 側に提供します。最も簡単な方法は、ビットコイン ラップ トランザクションと、ビットコイン ブロックの組み込みを確認する Merkle-Tree ルートを送信し、その後 CONTRACT BTC-RELAY を呼び出して検証を完了することです。
BRC-21 bCOIN はインデクサーによって正当なものとして受け入れられます。
移行
TRANSFER 操作は、BRC-20 標準で指定されているものと同じです。
{ "p": "brc-21", "op": "転送", "tick": "30sResearch", "amt": "100", }
償還
X bCOIN トークンが Bitcoin でバーンされ、X COIN が CHAIN でロック解除されます。
「償還」操作は次のように定義されます。
{ "p": "brc-21", "op": "redeem", "tick": "bCOIN", "amt": "1000", “dest”: “CHAIN”, “acc”: “account-on-CHAIN” }
dest フィールドは宛先 CHAIN を指定し、ミント操作の src フィールドと同じである必要があります。acc フィールドは、CHAIN 上の COIN の受信者アカウントを指定します。
ビットコインに「償還」操作を記述し、amt、dest、ACCを指定する
生のBTCトランザクションとトランザクション包含証明をCONTRACTに送信し、CONTRACTはBTC-RELAYを呼び出して検証を完了します。
BTC-Relay が「true」を返す場合、CONTRACT は acc フィールドで指定されたアカウントに X COIN のロックを解除します。BRC-21 インデクサーは、X bCOIN がバーンされたと見なし、Bitcoin で追跡しなくなります。

