Based RollupとTaikoの理解を深める 後編

サムネイルの引用元:taiko

はじめに

rollupは、Ethereumのブロックチェーンをスケールさせるための強力なソリューションとして注目を集めています。従来、Optimistic rollupやZK-rollupといった方式がメインストリームでしたが、最近はEthereumのバリデータが直接トランザクション順序を決定するbased rollupという新たなアイデアも注目されています。この手法では、追加のコンセンサスレイヤーを持たずに済むことから、分散性と安全性を高いレベルで維持できる点が魅力です。

本記事では、実際にZK-rollupベースでありながらbased rollupとしても機能するプロジェクトTaikoを中心に解説します。rollupの基本構造から、Taikoの特徴、MEVとの関係まで、幅広くカバーしますので、rollupの現状と今後のトレンドを掴むことを目指します。

Taikoとは?

前編では、主にbased sequencingの概要や基本的な仕組みについて理解を深めてきました。ここからは具体的なプロジェクトであるTaikoについて解説します。 Taikoは、ZK-rollupアーキテクチャを目指すプロジェクトとして2022年頃から開発が進められています。もともとEthereumに非常に近い形でZK-rollupを実装することを目標に掲げていましたが、2023年初頭からbased rollupという概念を積極的に取り入れ、Ethereumと強く経済的にアラインされたZK-rollup(=based rollup)として位置づけるようになりました。

Taikoが目指すもの

Taikoが目指すものとしてまず挙げられるのが、Ethereumとの強固な経済的アラインメントです。L1ブロック提案者にMEVが還元される仕組みにより、Ethereumのセキュリティやトークン価値を高めようとするものです。次に完全分散化と検閲耐性です。L1のブロック提案者を使うことで、中央集権的なSequencerの単一障害点を排除し、Ethereumの検閲耐性を継承します。シンプルかつ強固なプロトコル設計で、独自のPoSコンセンサスやシーケンサー署名検証を省き、L1と同じブロック構築プロセスを活用することで設計を簡素化します。

Taikoにおけるbased rollupアーキテクチャ


引用元:taiko

先に触れた4つのレイヤーに即して、Taikoがどのようにbased rollupを実現しているのかを見ていきましょう。

1. TaikoとSettlement Layer

TaikoはZK-rollupとしての性質を備え、Ethereum L1のスマートコントラクトへZK証明を投稿することで最終確定させます。つまり、L2(Taiko上)でトランザクションを実行して得られたState RootをL1へ送信し、L1上でZK証明を検証します。最後に検証をパスすればTaiko上の状態が正しいとL1上で確定という流れをとります。このSettlement LayerはEthereumが担うため、TaikoのL2の状態を他のエンティティをより信頼せずに確定できる点が大きな強みです。

2. TaikoとData Availability Layer

Taikoはトランザクションの実行データをEthereumに投稿することで、誰でも状態を再構築できるようにしています。EIP-4844(Proto-danksharding)によって将来的には、blobと呼ばれる安価なデータ領域を活用し、rollupのデータをより効率的に投稿できるようになると期待されています。このため、Taikoは従来のZK-rollupと同様に、EthereumのData Availabilityをそのまま享受し、高い安全性を保ちます。

3. TaikoとConsensus Layer

ここがbased rollupたる所以で、Taikoには独自の合意形成メカニズムを置かず、Ethereumのブロック提案者が次のTaikoブロックをL1ブロックに含める形を採用します。つまり、独自のSequencerノードがトランザクションの順序を一元管理するのではなく、Ethereumのバリデータ/プロポーザが許可なくTaikoブロックを作成し、L1に書き込めるという仕組みです。
ここで誤解されがちなのはL1バリデータがL2のブロックを全て手作業で作らないといけないのか?という点です。しかし、実際にはTaiko上のブロックをビルドするのはL2ビルダーであり、L1バリデータはその完成済みブロックをL1ブロックに含めるだけです。つまり、L1に余計な負荷を掛けることなく、permissionlessにブロックが提案されうるという構造になっています。

4. TaikoとExecution Layer

TaikoのExecution Layerは、従来のZK-rollupと同様にオフチェーンでトランザクションを実行し、ZK回路を用いて証明を生成します。ユーザはTaiko上で通常のEVM互換コントラクトを実行できますし、その結果得られた状態更新はZK証明によってEthereumL1で最終的に検証されます。

TaikoにおけるMEVと経済的なインパクト

MEVとは?


引用元:ethresear.ch
MEVとは、ブロックを組み立てる立場にある者(マイナーやバリデータ、またはSequencer)がトランザクションの順序を操作することで得られる潜在的収益を指します。たとえば、有名な例として、フロントランニングやサンドイッチアタックなどがあり、トレーダーが大きな注文を入れる際に先回りして注文を出したり、取引の前後に自分の取引を挟み込むことで利益を稼ぐことが可能になります。

Based rollupにおけるMEVの扱い

Taikoのようなbased rollupでは、rollup上で発生するMEVの多くがL1バリデータ(提案者)やL1のブロックビルダーに還元されると考えられています。なぜなら、最終的なトランザクション順序を決めるのはL1のブロック提案プロセスだからです。
この仕組みによって、rollupで発生するMEVがEthereumのネイティブトークンであるETHのバリデータ報酬に還元されやすくなるため、結果としてL1の経済的セキュリティが高まると期待できます。MEVの一部はバーンされる可能性もあり、その場合はETHの希少性がさらに高まります。

利用者にとってのコストとベネフィット

多くのユーザーとっての最大の関心事は、取引手数料は安くなるのかということにあると思います。
based rollupだからといって魔法のようにガス代がゼロになるわけではありませんが、独自のSequencer署名検証レイヤーを省くなど、中間のステップが減ることによるコスト削減が期待できます。

さらに、Block proposerが許可なく競争的にrollupブロックを提出できるので、市場原理が働き、ユーザにとっての手数料が抑制される可能性があります。たとえば、既存の集中型Sequencerが必要とする証明書作成コストやSequencer運用報酬が不要になる面もあるでしょう。続いてTaikoはL1ブロックタイムに制約されるかという問題です。デフォルトの設計では、Taiko上のトランザクションが最終的に確定されるタイミングは、基本的にEthereumのブロックタイム(現在は平均12秒程度)に依存します。よって、Taikoの確定速度=L1ブロックが確定する速度になるわけです。

ただし、Justin Drakeが提案しているように、ある程度先のスロットで提案者になるバリデータが「Taikoブロックを投稿する」と事前コミットし、さらに再ステーキング(re-staking)で保証を行うような仕組みを導入すれば、ユーザ視点で「ほぼ即時に確定通知を得る」ことも理論上は可能とされています。

関連記事