今からちょうど1年ほど前、BRC-20の登場によってビットコインのトランザクション手数料は久しぶりに高騰して物議を醸していました。メインネットの手数料水準も過去と比べて安くはありませんが、最近話題になっているのはテストネットの手数料水準の高騰です。

ビットコインにはPoWを採用するパブリックなテストネット(Testnet)のほか、中央集権的なテストネットとしてSignet、ローカル環境で実行できるRegtestなどいくつかのテスト用ネットワークとブロックチェーンが存在します。その中でも一番古いTestnetはブロックの生成間隔が不安定だったり、大規模なReorgが発生したり、コインの入手が難しいなど使い勝手が悪いという問題を抱えており、他の選択肢がある現在はそれほど人気のあるネットワークではありません。

ところが人気のブロックチェーンエクスプローラーであるMempool.spaceでTestnetを覗いてみると、なんと現在150ブロック分以上もトランザクションがメモリプールに存在しているではありませんか!中身を覗いてみるとInscriptionのようなサイズの大きいトランザクションもありますが、数百satsを1つのアドレスに送金するだけの細かいトランザクションも数多いです。

Testnetの最近のブロックの中身をmempool.spaceで可視化したもの

Mempool.spaceでのブロックの可視化については最近の記事をご覧ください。

トランザクションの「順番」にも情報を記録できる?マイナーが収益化できるかもしれない新しいフロンティア
3月下旬、アメリカの大手マイニング企業Marathon Digital Holdings社が公式ツイッター上で「Mブロック」をマイニングしたと発表しました。 This morning, we mined the M block on #Bitcoin – a visual demonstration of Marathon’s template building capabilities and vertical tech stack. https://t.co/cXSHnobzPg pic.twitter.com/zwwUbXWHRY — Marathon Digital Holdings (NASDAQ: MARA) (@MarathonDH) March 26, 2024 これはブロックチェーンエクスプローラー大手のMempool.spaceの機能でブロックの中身のトランザクションを可視化(手数料で色分けしてブロック内の順番に沿って配置)したときに上記の画像になる、という遊び心たっぷりの宣伝活動ということでした。

ネタばらしをすると、このブロックの中身は大量の「Runes」と呼ばれるトークンプロトコルに関連する小さなトランザクションと、Motoswapと呼ばれるAMM(自動マーケットメイカー)を利用するInscriptionがいくつか記録されています。

今日はこれらの技術について触れ、いずれMainnet上で利用されるようになり物議を醸すことになる際に議論の内容を理解できるように予習しましょう。

・RunesはBRC20を効率化したようなトークンプロトコル

・AMM(自動マーケットメイカー)は手数料の高騰を引き起こしやすい

・半減期後、オンチェーン手数料が一層高騰する時代になるかもしれない

RunesはBRC20を効率化したようなトークンプロトコル

BRC20については発行や移転に複数のトランザクションを必要とするその圧倒的に非効率的な設計が手数料高騰を招く1つの理由になっていると去年の記事で解説しました。また、大量の少額UTXOが生まれてノード運用の負担になることも問題視されています。

ビットコインを襲うBRC20の猛威は如何に生まれるのか
今週、ビットコインのトランザクション手数料は600sats/vbyte以上という歴史的水準に達し、ブロックの手数料が新規発行分の6.25BTCを超えるなど2017年末を彷彿とさせるバブリーな状況がありました。本日は日本時間に40sats/vbyte程度まで落ち着きましたが、北米が目を覚ましてからは再び次のブロックにトランザクションが入る水準は200sats/vbyteを超える状態で推移しています。 今年に入ってからOrdinal Inscriptionsの誕生などでトランザクション手数料の相場がここ数年に比べて高い状態が続いていますが、今回の桁違いの高騰もOrdinal Inscriptionsに関連しています。Inscriptionsを多用するBRC20というカラードコインプロトコルのようなものの配布が原因だからです。今日はビットコインの手数料高騰を招くBRC20の仕組みと、それに対するビットコインコミュニティの反応、そして私の予想する今後の流れを書いて行きます。 BRC20は非常に非効率なプロトコル 現時点でリファレンス実装や厳密な仕様は存在しませんが、公式?とされるドキュ

論理的に考えてトークンプロトコルは効率的であればあるほど多くの人が使えて盛り上がるものですが、BRC20はその成り立ちがOrdinals Inscriptionsという「あえて非効率的である」ミーム的な技術に根ざしていることから、それを引き継いであえて非効率的に設計されたという思想が背景にあります。

しかし、やはり非効率性はスケーラビリティ面で市場参加者数に上限を設けてしまうなど理想的とは言えません。そこでOrdinal Theoryの考案者であるCasey Rodarmor氏がRunesというトークンプロトコルを発案しました。

トランザクションのWitness領域にデータを埋め込むInscriptionsやBRC20とは異なり、RunesではOP_Returnに実行したいトークントランザクションのデータ(Runestone)を書き込みます。OP_Returnで書き込んだデータによって、同じトランザクションの他の出力にトークンの情報が紐づけられます。(あくまでClient Side Validationというパラダイムを使ってオフチェーンで行われることで、ビットコインノードの視点では無意味なデータと少額のsatsでしかありません。)

Image
FOOというRuneトークンを送金するBitcoinトランザクションの図解。Twitter @0xCygaarより引用

トランザクションサイズやデータの書き込み方の他にも、Runesでは1つのUTXOに複数種類のトークンを保管できるなど効率面でBRC20に対する優位性があります。このプロトコルをMainnetで使えるようになるのは半減期後(ブロック高840,000以降)、つまり今週の土曜日からになるので、今週末はブロックチェーンが混むかもしれません。

もちろんこの制限も自主的なもので、特に技術的な理由があるわけではありません。マイナーからすれば手数料収入の重要性が増すなかで歓迎される動きでしょう。

AMM(自動マーケットメイカー)は手数料の高騰を引き起こしやすい

Runes以外でメンションされていたMotoswapですが、これはCBRC20というBRC20を拡張したプロトコルを使って実装されたAMM(自動マーケットメイカー)です。CBRC20ではBRC20の上にさらに「メタプロトコル」と呼ばれる外部プロトコルを構築できることを使っているようです。詳しくはこちら

AMMは2020年のいわゆる「Defi Summer」にUniswap、Sushiswapなどが人気となってスマートコントラクトチェーンで一気に普及した、スマートコントラクトに入金されているトークンAとトークンBの比率でA/Bの価格が決まるという性質の取引プロトコルです。入金するユーザーは「流動性供給者(LP)」となり取引手数料やAMMの独自トークンがもらえ、取引したいユーザーはLPを相手に取引することになります。

MotoswapはOrdinals InscriptionsによってAMMを使った取引や流動性供給ができるというわけです。具体的には「@moto:swap::cbrc-20:swap?ab=PIZZA-WAGMI&a=1&b=0.00000143」のような文字列をInscribeすることで取引したことになります。これはやはりすべてClient Side Validationを使ってブロックチェーン外で解釈されるデータになります。(ビットコイン自体の技術には関係ありません)

さて、AMMにはアービトラージ(裁定取引)の機会によってトランザクションを生みやすいという特徴があります。CBRC20トークンが取引所に上場してリアルタイムで価格が激しく変動したり、あるいは複数の通貨ペアのうちどれか1つが変動すると波及効果で他のものも変動すべき場合にその裁定取引を行うユーザーが現れます。これが送金手数料の高騰を招きます。Defi Summer当時のイーサリアムも阿鼻叫喚の手数料水準で、これがSolanaなど安さと速さが売りのチェーンの後押しをした側面もありました。

BRC20のMintで送金手数料が実質的に購入価格となり、理論的には時価と同じくらいまでの金額を手数料に使えてしまうから送金手数料が高騰したのと同じく、AMMの裁定取引で儲かる金額までなら送金手数料を使えてしまうのです。

CBRC20は自分の理解ではまだ盛り上がっていませんが、ビットコイン上のトークンが継続的なトレンドであるならばMotoswapのようなものもメインネットで使われるようになるかもしれません。

半減期後、オンチェーン手数料が一層高騰する時代になるかもしれない

このように、半減期後にメインネットに着弾するRunesプロトコルや、いずれ登場すると考えられるAMMのように継続的にビットコイントランザクション需要を生む技術がまだまだあります。

今回の半減期でブロックの採掘報酬に占める新規発行分は6.25 BTCから3.125 BTCへと半減しますが、それはつまり送金手数料が占める割合が2倍になるということでもあります。直近の手数料水準である60 sats/vbyteであれば約10%→約20%、150 sats/vbyteなら約25%→約50%ということになります(!)

マイナーの視点では非常に好ましいことですし、半減期と有限発行の仕組み自体が将来的に送金手数料でチェーンを維持するという想定のもと成り立つものとなっていますが、草コインの相場などの影響でビットコイン自体の価値交換機能が使いにくくなるのは複雑な気持ちです。複数の用途があると最も金払いの良い用途以外がプライスアウトされてしまう問題は「お金である」ことが第一の存在意義であるビットコインにとって脅威ではないでしょうか。

ビットコインの送金を扱いやすくするライトニングや新参のレイヤー2、eCashなどの技術の重要性もビットコイン上の草コインの普及と同時に高まっていくこととなるでしょう。

おまけ

最近ツイッターで「送金手数料だけになったら二重支払いのコストが安くなりすぎてビットコインのセキュリティ足りないのでは」という意見を見かけました。例えば1ブロックの総報酬が2万ドルであれば、2万ドル以上の送金は51%攻撃によって取り消すインセンティブがある、というものです。

実はこれに対する回答はまさに同じロジックで、「取り消すことが経済的に非合理的になるくらいの承認数を待って決済と見なす」です。例えば10万ドル相当の送金があった際に6ブロック待てば巻き戻す費用は12万ドルとなり、やる意味がなくなります。実際、取引所などに高額の入金をすると今でもけっこう長めに待たされることになると思います。

もちろん送金者が巻き戻したい送金は自分宛てのものだけとは限らないので実際に待つ承認数はギリギリに設定すべきではありませんが、「ビットコインは1承認で決済」「6承認で決済」のような固定観念は捨てて、PoWの仕組みに合わせることが本質的な使い方です。