Ethereumの暗黒森林とMEVそしてFlashbots

Podcast
Cryptocurrency
 | 2021-07-28
Mountain forest
Photo by Lingchor / Unsplash

「暗黒森林」は、スペースオペラ超大作SF「三体」の2作目のタイトルにして作品が提唱する"宇宙社会学的哲学的真理"でもある。それは、

「宇宙には、膨大な空間と時間に隔てられている多数の文明があり、全体として資源には限りがあるにも関わらず、個々の文明は常に拡大している。  
結果として文明間の競争は熾烈で、文明はその存在を明らかにしただけでより高度な他の文明の攻撃を受けて壊滅する。 」

というもの。 そしてEthereumのコンセンサスシステムも同様な熾烈な競争にさらされている。

以下、テクニカルですが問題の背景と現在取られつつある対策について説明します。

ガスとは

イーサリアムの送金を承認してもらうには、「マイナー」がその送金をブロックチェーンに加える必要がある。

そのために支払う手数料は「ガス」と呼ばれる(ガス = 英語でのガソリンの略称)。

取引を行う人はガス代を自分で設定することができ、他の人よりも高くガスを設定することで自分の取引を他の取引に先駆けて承認してもらうことができる。

Mempoolとは

Mempoolは、Memory Poolの略。

ノードが持つインメモリデータで、リクエストされた取引のうちまだ承認されていないものが全て含まれている。

上記のガスの設定もMempoolに入っている。取引者とマイナーの間のコミュニケーションチャネル。

MEVとは

元々はMiner Extractable Valueの略だったが、その後Maximal Extractable Valueに変更された(正確には「されつつある」のが現状です)。

  • 取引の順番を変更する
  • 新しい取引を挿入する
  • 特定の取引を次のブロックに回す

といった操作をすることで、パーミッションレスに得られる利益のこと。

(取引承認権限を持つマイナーがMEVを得やすい立場にいるが、バリデータやロールアッププロバイダといったプレーヤーもMEVを得られるので「マイナー」から「マキシマル」に最初の単語が変わった。)

MEVは、大規模な売買を行うことで一旦値段が変わってしまうスリッページ、スマートコントラクトのバグといった利益機会をMempoolを巡回するボットが発見、それを横取りする取引を即座にリクエスト、その際高いガスを設定して優先的に取引を行うことで得られる。

アービトラージによるMEV例

今年の2月8日に実際に行われた取引で、139ETHを5.76 WBTC(ラップされたBTC。通常BTCと同じ価値で流通)に交換、そのWBTCを2,269,314ドル分のUSDT(USドルのステーブルコイン)に交換、そしてそのUSDTを1352ETHに交換している。

(出典:Etherscan

見てわかるように、139ETHが一巡するだけで約10倍の1352ETHになるというアービトラージ取引となった。

2月8日時点での相場はBTCが$43,000 〜 $46,000だが、WBTC→USDTの取引でWBTCが約$400,000と一桁大きく、ここになんらかのエラー=アービトラージの機会が生じていた模様。

こうした利益機会(またはなんらかの間違い)を誰かが見つけて回収しようと、するとその取引注文はMempoolに入る。

するとそれを巡回しているボットが見つけて、全く同じ取引をより高いガスでリクエストし横取りしていく。

ここまでの大きな利益がなくても、スリッページが生じるような大規模売り注文「A」を見つけて、「A」の直前に売り注文を入れ値段を下げた状態にし、「A」の直後にさらに下がった金額で買い注文を入れるという「サンドイッチアタック」など、様々な「利益搾取」の方法がある。

かようにMempoolに利益機会の存在を示しただけで、一瞬にしてその機会を掠め取られていく様子が、存在を明らかにしただけで他の文明に叩き潰されるという「暗黒森林」に似ていることからこの比喩がよく使われている。

(同名のEthereumベースでzkSNARKsを使ったゲームもある。)

以上はPoWでの事例だが、EthereumがPoSに移行するとMEVによる利益機会はより大きくなると予想されている。

また、大規模プレーヤーがより多くのMEVを得ることをサポートする技術・サービスも出てきている(例:bloXrouteArcher)。

一方でMEVはコンセンサスシステムそのものの基盤を揺るがすものになり得ると危惧されており、特に市場価値が大きくスマートコントラクトで様々な操作が行えるEthereumで、MEVを最適化する方法が研究されている。

(Bitcoinはできることが限られているためMEV問題がEthereumほどには大きくならない。)

MEV適正化を図るFlashbots

2020年のDeFiの爆発的市場拡大と共に大きな問題となってきたMEV問題を解決しようとする研究・開発組織が複数登場している。

その一つ、Flashbotsは2020年8月に5人の主要メンバーで始められた研究開発組織で、学術レベルの研究とそれに基づく開発を行っている。

ミッションは、情報の非対称性をなくし、誰でもが公平にMEV利益を得られるようにすること。

スマートコントラクト・レイヤー、コンセンサスレイヤー、ノードレベルといった異なる領域を研究している。

Flashbots Alphaは2021年1月6日にオープンソースでリリースされたコードで、MEV-Gethクライアントをフォークしたもの。

取引者とマイナーの間にオフチェーンでのコミュニケーションチャネルを設け、誰でも簡単にMEVを得られるようにすることで、一部の大規模プレーヤーだけがMEVを独占することを防ぐ。

具体的にはMEV機会を探す「サーチャー」はFlashbots取引を複数まとめた「Flashbotsバンドル」と、外から金額がわからない「チップ」をマイナーに送り、そのバンドルを承認したマイナーはチップを受け取る。

こうしたやりとりは、全てEthereumのメインネット「外」で行われるので、承認されない取引でガスがかからない。

Flashbots Alphaは3月時点でEthereumネットワークのハッシュレートの58%となるマイニングプールで導入された。

(取引者・マイナーともにFlashbotsを導入することで安定的にMEV利益が得られるようになるためと推測される。多くのプレーヤーがFlashbotsを導入する結果一部の巨大プレーヤーだけに利益が集中しなくなる。)

この結果、Ethereumのガス代は半分以下になったとされている。

考察

上述のMEVによる利益実現は現実社会の株式・先物取引でも行われており、Game Stop事件の際には取引アプリのRobinhoodがユーザの取引情報をクリアリングハウスに売っていたことも問題視された。

とはいえ、全てが自動で数秒の間に起こってしまうブロックチェーン上では不適切なMEVはより大きな問題につながる可能性が高く、今後のさらなる改善が望まれる。

一方、まだこんなところで根本的な問題をどう解決すべきかが試行錯誤されている。

これは、ブロックチェーン・暗号通貨業界が、インターネットの歴史でいえばワールドワイドウェブがやっとできたくらいの1990年ごろにあることの現れではないか、と個人的には思うのでした。

Flashbotsについて話した暗号通貨勉強会の録音です

参考:

Chika Watanabe

Born in Japan, lives in Silicon Valley. Japanese Blog: chikawatanabe.com English Blog: eng.chikawatanabe.com

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.