ビットコイン自体の供給量が需要に応じて増減しない(弾力性がない)ことは広く認知されていますが、ビットコインのブロックスペース、すなわちトランザクション処理能力もまた需要の変化に対応することができません。これは以前の記事「ブロックスペースを資源として考えてみると…」でも考察したトピックです。

ブロックスペースを資源として考えてみると…
最近、こんなツイートを見かけて、とてもいい整理の仕方かもしれないという気づきがありました。https://twitter.com/Mario_Gibney/status/1526361206885388288 「ビットコインの将来的なセキュリティを考える上で、ビットコインネットワークが生産するコモディティは2種類あるということを認識する必要がある。半減期を重ねて2100万枚まで発行されるBTCというアセットと、約10分毎に4MWU (1M vbyte)生産されるブロックスペースだ。※」 BTCの価値にばかり目が行きがちですが、手数料の話にはブロックスペースの価値が密接に関係してきます。トランザクション手数料はブロックスペースの対価として支払うものだからです。したがって、長期的なビットコインの持続可能性を論ずる際はその両方の価値が別々であることを念頭に置く必要があります。 ※…ビットコインのブロックサイズは1MBブロックなどと言われますが、2017年のSegwit導入時にトランザクションサイズの計算方法が複雑化し“4MWU” (WU = weight units)ブロックとなりまし

その記事内で私は「ブロックスペース(手数料)先物」が存在すればビットコイン送金手数料のボラティリティ問題を長期的に解決することができるかもしれない、と想像し、例えばあらかじめライトニングチャネルを開設しておくが「誰と開設したのか」を後出しで必要になってから決定するようなメカニズムがあればいいな、としました。

それとは全然仕組みが異なるものではありますが、先日、送金手数料率先物というアイデアがまさに発明されたようです。

ビットコイン開発についてディスカッションが行われるプラットフォームの1つであるDelving Bitcoinに、Smart Contracts Unchainedなど数々の発明でおなじみの匿名開発者・ZmnSCPxj氏が投稿したこのアイデアについて今日は解説します。

An Onchain Implementation Of Mining Feerate Futures
Subject: An Onchain Implementation Of Mining Feerate Futures Introduction Future onchain fees to be paid to miners cannot, in general, be predicted, as unpredictable novel uses of the blockchain may increase use of block space, and unpredictable novel innovations on block space use reduction may decrease use of block space. This uncertainty makes onchain use unpalatable, and even non-custodial offchain uses like the Lightning Network incur risk of onchain enforcement, and the uncertain onchain…

・ブロックスペース/送金手数料に関する金融商品の存在意義とは

・マイナーからみた送金手数料率先物の使い方

・ZmnSCPxj氏が提案する送金手数料率先物の仕組み

ブロックスペース/送金手数料に関する金融商品の存在意義とは

あまり金融商品に馴染みがないと先物の存在意義を感じない方もいらっしゃるかもしれませんが、先物とは消費者・生産者が将来的に価格がわからないものについてあらかじめ取引価格を確定させることで価格リスクをヘッジするための手段です。ブロックスペースにおける消費者・生産者とは誰のことでしょうか。

それはシンプルにビットコインのユーザーとマイナーです。ユーザーはトランザクションを送る際に送金手数料という形でブロックスペースを買っていますし、マイナーはブロックを採掘するたびに1MvB (4MWU)をユーザーに切り売りしています。

私達のような一般ユーザーにとって、トランザクションとは必要なときに行うもので「将来のこの時点でトランザクションを実行したいから手数料率が暴騰しているリスクを抑えたい」という発想にはなかなかなりません。しかし、取引所のように常にある程度のトランザクション需要があったり、定期的にUTXOをコンソリデーションしているような主体にとって特定時点での送金手数料を予め確定させておけることは便利です。

逆に生産者であるマイナーは将来的に生産するブロックについて収益の予測が立ちやすくなります。特に半減期を重ねるごとにブロック報酬に占める送金手数料の割合が大きくなるにつれ、「採掘したが大した手数料ではなかった」と「採掘したら予想以上の手数料が得られた」の振れ幅も大きくなります。ブロックスペース先物があれば予め売上の見通しを立てられることによって経営面でのリスクを大幅に削減できるでしょう。

マイナーからみた送金手数料率先物の使い方

実はマイニング関連の先物商品、具体的にはハッシュレート先物は5年ほど前から存在しています。

まずOP_CTVの提唱者でもあるJeremy Rubin氏が発明したPOWSWAPというコンセプトがありました。技術的な詳細は不明のままプロジェクトが放棄されてしまったようですが、

POWSWAP | Trustless Bitcoin Mining Derivatives Exchange
POWSWAP Bitcoin Mining Derivatives
ハッシュレートのオプション取引を提供予定のPOWSWAP
今週の記事はビットコインコア開発者であるJeremy Rubinが11月9日に発表した、トラストレスにビットコインのハッシュレートに関するデリバティブを取引できるPOWSWAPというプロジェクトと、その将来的な可能性について書きます。POWSWAP自体は生まれたてのプロジェクトで、開発段階(pre-Alpha)ですが、ウェブサイトへのリンクを貼っておきます。 https://powswap.com/ ちなみに、Jeremy RubinといえばScaling Bitcoinでも発表があったOP_SECURETHEBAGの提案者です。(最後に小ネタを追記します) POWSWAPについて まだ詳しい情報がない公式発表の受け売りになりますが、POWSWAPはスマートコントラクトを活用してノンカストディでトラストレスなハッシュレートデリバティブの取引プラットフォームで、マイナーにはハッシュレートの低下に対するヘッジ、HODLerには金利収入、マーケットメイカーには流動性供給の対価としての利益が得られるものだそうです。既にビットコイン上で動くPOWSWAPは自動的にハッシュレートの変動を検知

また2020年5月には今はなきFTXにビットコインのハッシュレート先物が上場しました。おそらく半減期を意識したタイミングでの上場でしたが、あまり広く取引されていた印象はありません。しかし、マイナーにとって大きな不確定要素である「将来的なネットワークハッシュレートの増加による収益性低下リスク」をヘッジする1つの手段として有用な金融商品だったと思います。

さて、マイナーが送金手数料率先物を使って1ブロックの送金手数料を固定できるとしたらどのように行うでしょうか。マイナーの1ブロックに対する収入は大雑把に以下の式で表せます:

収入(新規発行BTC+総手数料)-支出(主に固定費)

送金手数料率=総手数料/1MvBなので、ブロック高を指定すれば既知である新規発行BTCと合わせて収入サイドを固定できることがわかります。これと合わせて、実際にそのタイミングで採掘できるブロックの大まかな数量(すなわち、ネットワークハッシュレートに占める自社ハッシュレートの割合)を求めるか、先物商品によって固定することができれば将来的な収益をガチガチに固めることができるかもしれません。

もちろん、現実には電力需給に応じてシャットダウンする契約によって追加収入を得ていたり、収益性が低下するとマシンを止めたりといったことがあるので現実はもう少し複雑です。このようなマイニング戦略についても過去に記事で触れていますのでぜひご覧ください。

複雑化するマイニング戦略と、電力会社との協力関係の模索
マイニング業の成熟について今週読んで大変気に入った記事(英語)がありました。内容は自然エネルギー発電の増加による電力網への影響と、電力先物を利用したマイニング業のヘッジについてです。これまでに研究所内で話した電力の特徴やハッシュレート先物などとともに、これからのマイニング業界を理解するために重要になってくる要素がてんこ盛りだったので抄訳するとともに、一般的な話を含めて解説します。 記事の著者も言う通り、今はまだとてもシンプルなモデルで営業しているマイニング業者が多いと考えられていますが、市場環境がよりシビアになる中でリスクを制限するヘッジ方法などが取り入れられていくと、それを理解していることがトレードなどに役立つようになるかもしれません。 用語の定義: 電気料金 = すべてコミコミの消費者向けの料金 電力価格 = 業者間で電力そのものが取引される価格 記事の内容:抄訳 ・電力は貯蔵が難しく、常に発電量≒消費量になる必要がある ・自然エネルギー発電は気まぐれなので、火力発電で発電量を調整する ・自然エネルギーが豊富で火力発電が発電していないときも、待機のためのコストを払っている(

ZmnSCPxj氏が提案する送金手数料率先物の仕組み

さて、今回発明された送金手数料率先物はどのように実現されているのでしょうか。実はそこにはちょっとおもしろい発想の転換がありました。

「ブロック高TからT+Nの間に、手数料率F以下であればマイナーが、F以上であればユーザーが相手の賭けた金額を没収できるオプション契約」を考えます。

ユーザー、マイナーの双方が賭ける金額を以下のスクリプトでロックされたTaprootアドレスに入金します:

① Keyspend:MuSig(User, Miner) 協調的解決

② 手数料率がF以下のとき、マイナーがUserの拠出金を回収するスクリプト(出力はOP_Returnのみなので両者の入金額が全てトランザクション手数料として回収できる、他のマイナーには渡さないトランザクション)

③ T+Nブロックの経過でユーザーがMinerの拠出金を回収できるスクリプト(単純なタイムロック)

発想の転換は②のトランザクションを「無駄に大きくする」ことで手数料率が高いときに経済的合理性に基づいて行動するマイナーはこれを採掘しないという点です。なぜなら、Userの掛け金/トランザクションサイズが基準値となる手数料率Fであるためです。

仮にブロック高TからT+Nの間で当該マイナーが採掘できたブロックの手数料率がFより低いまま推移していた場合、マイナーはランダムなトランザクションを含めるより②のスクリプト(または協調的解決)によってUserの資金を回収したほうが儲かります。

逆に、ブロック高TからT+Nの間で手数料率がFより高いまま推移した場合、当該マイナーは②のスクリプトを実行するよりもランダムなトランザクションを採掘したほうが儲かるため、タイムロックが切れユーザーがマイナーの拠出金を得られるというわけです。得られた拠出金の合計をそのまま別のトランザクションの入力に使えば、事実上「拠出金でトランザクション手数料を予約した」ことになります。

まとめ

・ZmnSCPxj氏が送金手数料率デリバティブをオンチェーンで実現する方法を提案

・手数料率が低かった場合「あえてブロックスペースを無駄遣いする」という発想により、経済合理性に基づく手数料率判定メカニズムを実現

・マイナーにとっては収益の安定、ユーザーにとっては将来的に確定しているトランザクションの手数料を確定できるというメリットがある

かなりエレガントな提案ではないでしょうか。「手数料を払ってもらえるならあえてブロックスペースを無駄遣いする」というOrdinal Inscriptionsに影響されたような発想が時代っぽくていいなと思いました。(従来なら「どうやって無駄なく実現するか」という発想で苦戦していただろうため)

逆に言えば(ブロックスペース需要が弱いときに)無駄遣いする分、長期的に言えば利用可能なブロックスペースの総供給は減って手数料率の上昇に寄与するような気がするあたりも興味深いです。