起源#
BRC-20 は、Twitter ユーザー @domodata によって 2023 年 3 月に作成されたビットコイン上のトークン化標準の試みです。
ソース:Twitter: https://twitter.com/domodata/status/1633658974686855168
BRC-20 は、JSON 形式の Ordinals 銘文を使用してトークン契約を展開し、トークンを鋳造し、転送するために使用されます。Ordinals プロトコルは、ビットコインのセグウィットデータに追加データを保持するために使用され、この解説記事で詳しく説明されています。
BRC-20 の最初のトークンであるordi("Ordinals" の略)は、すぐにコミュニティの FOMO 感情を引き起こしました。ordi の 2100 万トークンは 18 時間で鋳造され、すぐに "meme"(ミーム)や "pepe"(カエルのペペ)が展開され、急速に鋳造されました。現在までに、brc-20.ioのデータによると、7543 種類の異なる BRC-20 トークンが鋳造されており、多くのトークンが驚異的な成長を遂げています。これは現在最も注目されているトピックです。
著者は BRC-20 が現時点では単なる興味深い実験であり、ビットコイン上のトークン化標準とは見なされないべきであり、参加する人々の情熱を阻止することはできないと強調しています。
BRC-20 とは何ですか?#
BRC-20 という名前は、イーサリアムの ERC-20 トークン標準に基づいていますが、ビットコインブロックチェーンにはイーサリアムのようなオンチェーン実行機能がないため、BRC-20 はビットコインのセグウィットデータ領域に JSON 形式の銘文を記録し、オフチェーンで状態(残高)を更新する方法で BRC-20 を実装しています。
BRC-20 は、トークンの展開、鋳造、転送を記述するための簡単な JSON 形式の銘文セットを定義しています。以下は、https://domo-2.gitbook.io/brc-20-experiment/からの引用です。
BRC-20 の展開銘文は次のとおりです:
{
"p": "brc-20",
"op": "deploy",
"tick": "ordi",
"max": "21000000",
"lim": "1000"
}
p:プロトコル名を表します。
op:操作タイプを表します。操作は deploy、mint、transfer のいずれかです。
tick:BRC-20 の 4 文字の識別子です。
max:BRC-20 の最大発行量を設定します。
lim:各 mint 時の制限額です。
BRC-20 トークンの鋳造銘文は次のとおりです:
{
"p": "brc-20",
"op": "mint",
"tick": "ordi",
"amt": "1000"
}
amt:鋳造する BRC-20 トークンの数量で、上記の "lim" よりも小さくする必要があります。
BRC-20 トークンの鋳造(転送)銘文は次のとおりです:
{
"p": "brc-20",
"op": "transfer",
"tick": "ordi",
"amt": "100"
}
各アドレスの BRC-20 トークンの残高は、unisat.io などのクライアントソフトウェア(インデクサー)によって、mint、transfer イベントに基づいて統計されます。たとえば、UTXO には mint 銘文が含まれており、最初の所有者に追加されます。一方、transfer 銘文は送信者のアドレスから残高を差し引き、受信者のアドレスに残高を加算します。
銘文はトランザクションの「追加」データであり、ビットコインのマイナーはこの銘文を処理しません。ブロックチェーン上では他のトランザクションと同様に扱われ、通常のトランザクションとして転送されます。
Ordinals プロトコルに基づく追加データは、追加のウォレット(Ord Wallet / ordinalswalletまたは unisat)とブロックチェーンエクスプローラーが必要です。
以下は、FREE トークンの鋳造トランザクションの例です:
https://blockstream.info/tx/331d02db3d6ee0cffae9052be5799bd7754c6ebb2020e422058b73334c59bf85
詳細な JSON 銘文は Ordinals ブラウザでのみ表示されます:
brc-20.io やunisat.ioなどの銘文サービスプロバイダーは、各トランザクションを追跡し、銘文を取得して各アドレスが保持する BRC-20 トークンの残高を統計します。unisat.io は現在、完全な残高状態のインデックス表示を提供しています。
発行や鋳造の方法#
銘文を構築するためには、Unisat などの Ordinal ウォレットを選択することが最善です。これらのウォレットは BRC-20 標準を展開するツールを提供しています。
Unisat は、MetaMask のようなブラウザ拡張機能ウォレットであり、ウォレットを作成する際には Taproot 形式のアドレス形式を選択し、取引所から出金したり、他のウォレットからそのアドレスに送金することができます。
BRC-20 の銘刻画面に入る:
BRC-20 を鋳造するか、独自の BRC-20 を発行(Deploy)するかを選択できます。
BRC-20 を発行(Deploy)する場合、各 BRC-20 は "Tick" の名前で一意性を識別します。したがって、デプロイ時には、BRC-20 トークンの tick はすでにデプロイされている BRC-20 とは異なるものにする必要があります。
BRC-20 を鋳造する場合、その BRC-20 が最大発行量に達していないことを確認する必要があります。Unisat では、鋳造割合を確認できます:
発行、鋳造、または転送時には、トランザクションの銘文データはビットコインノードによってチェックおよび実行されないため、銘文 JSON データが有効であることを確認する必要があります。たとえば、有効な転送機能の場合、次の条件が必要です:
銘文で指定された金額は、利用可能残高(Available)を超えてはなりません。
利用可能残高は、[総残高] - [転送可能残高] と定義されます。アドレスが転送されていない場合、利用可能残高と総残高は同じです。
例えば、あるウォレットが保持している総残高が 1000 "ordi" であり、ホルダーが 700 "ordi" の転送銘文に署名した場合、銘文が確認されると以下の状況が実現します:総残高 = 1000、転送された残高 = 700、したがって利用可能残高 = 300 です。次のブロックでユーザーが 500 "ordi" の転送銘文を行った場合、これは無効です。ただし、ビットコインノードは銘文をチェックせず、トランザクションは成功することができますが、brc-20 ウォレットサービスでは失敗したトランザクションとして扱われ、状態は更新されません。
結論#
BRC-20 と Ordinals NFT は、ビットコインに多くの議論をもたらし、2 つの陣営に分かれています。支持派は、手数料を支払えば、ブロックスペースを自由に使用できると主張し、トランザクションの内容に関係なく、BRC-20 と NFT がビットコインに新しい文化と物語をもたらし、ビットコインの採用率を向上させると考えています。反対派は、これらの BRC-20 と NFT は無価値であり、ゴミのトランザクションであり、これらのゴミのトランザクションがトランザクションの帯域幅を占有し、ブロック入り時間が長くなり手数料が高くなると主張しています。
現時点では、BRC-20 はまだ中央集権化されており、ユーザーエクスペリエンスが良くありません(プロジェクトのラグ、ネットワークの混雑など)。しかし、多くのツールが登場していることも見て取れます。ビットコイン自体が最大のコンセンサスを持っているため、将来の展開に注目する価値があります。
参考リンク#
BRC-20 ドキュメント:https://domo-2.gitbook.io/brc-20-experiment/
BRC-20 ブラウザ:https://brc-20.io/
BRC-20 ウォレット:https://unisat.io/
Ordinals ネイティブウォレット:https://ordinalswallet.com/
BRC-20 取引市場:https://ordswap.io/
Mint ツール:https://looksordinal.com/
Oriscan:https://ordiscan.com/