を読みました。
メモと翻訳です。
EVMがL2で普遍的な基準になるだろうという予測と信念
まずはイーサリアムのスケーラビリティ問題解決の時系列を紐解いていく。
スケーラビリティ解決には参加者の拡張と分散性の進展の二軸で考えることができる。
ステートチャネル: 決められた参加者だけで構築されたトランザクションでお互いが検閲している
プラズマ: 誰でも参加可能で特定の検閲者が存在する
ロールアップ: 誰でも参加可能で検閲・検証がL1で行われる
RollUpにEVM互換性が必要となった
世界初のL2 AMMでUnipigが実装されたが, 当時ロールアップのコントラクトを実装するために, EVM-Solidity互換性のない独自コードを使っていた。
このようなEVM-Solidity互換性のない独自コードを使った実装では, Uniswapのような単純なL1-Solidityコントラクトを作成するにも, 独自コードで書き直さなければならないVMは使用感が悪いという問題がある。
特に昨今のEthereum L1エコシステムの成長に対して、わざわざコントラクトやコードを書き直して実装する必要のあるようなL2 VMでは追い付けない見込みがついていた。
ロールアッププロジェクトはスケーラブルなインフラ構築とEVM-in-EVM実装をしなければならなくなった。
EVM-in-EVM自体はプラズマの検証手段として2017年に提唱されている
この課題解決にはいくつかの妥協が必要。
"L2"(DINO)の台頭
2020年にセキュリティや価値に対して"妥協"して「より手数料の安い」L1チェーンが台頭してきた。
そこでOptimism PBCはOVMをリリースしました。
2015年のFrontierから6年、EVMに何千もの開発ツール、10億ドル規模の企業の誕生、Ethereumネットの高速化がありました。
このEthereumとクリプトの躍進に対して「低手数料」「高速トランザクション作成」のような利用者中心のインフラが追い付いていない(セキュリティや分散性を犠牲にしなければならない)問題があった。
EVM互換のマシンであれば「低手数料」「高速トランザクション作成」を達成しているものはいくらでもある。しかしEVM互換性は「互換性」に過ぎず, そこにローンチされるコードはEVM互換マシンの実行環境に基づいて修正や再実装が余儀なくされる。
Optimistic EthereumはEVM互換性ではなく等価性としてL1のネットワーク効果と実行環境を引き継がなければならないと考えた。
EVM互換(左側)
・EVMを再構築する必要がある
・Ethereum L1のアップデートにEVMを対応させなければならない
EVM等価性とはEthereumイエローペーパーに完全に準拠しているということで、Ethereum L1上のあらゆるインフラ(セキュリティ・開発・環境)と統合できる。
OVM v1では、GethのEVM上にコンテナ化システムを導入し、L1でEVM全体を再実装するような工程を避けることができた。
しかし元のEVMはコンテナ化をサポートしていないのでOVM v1は自由にアプリケーションを実装できる環境ではなかった。またGethの更新に伴ってOVM v1を更新する必要があった。
EVM等価性は魅力的な概念であったが、開発力やそれによるリターン、接続アプリ数などを考えるとこれまでは開発力が追い付けばいつかといった感じであった。
しかし昨今のアプリケーション乱立と接続数の増加、そして何よりOptimistic Ethereumチームの開発力が増していき、EVM等価性を開発して実装する価値が増していった。
Solidity, Vyper, HardhatといったプロジェクトもOVM開発ツールに取り込んでくれていたものの、それらの本来の開発リソースを奪う形になる。わざわざOVM v1を開発してデバッグするような労力が不経済。
今, L1はPoWでブロック生成が行われている。
L2ではトランザクションがバッチ処理されL1に送信されて適用されるが、L2独自のPoWブロック生成は行われない。
ブロックチェーンのモジュール化はコンセンサスと実行を分離することにある。つまり次のブロックを決定するコンセンサスプロセスと、実行するプロセスを別にすることだ。
L2ではこのパターンを使い、L1ブロックを受け取り、ロールアップ処理を行い、L1と同じフォーマットでL2を出力することでL2とL1は実行が等価性を持つ。
L1とL2は根本的にEthereumと同等にできない。
L2ブロックジェネレーター(L1バッチをEthereumと同等のL2ブロックに変換する)を通じて正確なEVM等価性で実行される。
ETH2マージAPI
L1のコンセンサス/実行の状態は標準化されようとしている。
ビーコンチェーンはL1がロールアップの親チェーンと同じ役割を果たす。
これによってL1のクライアントで簡単にL2に参加可能になる。
L2ブロックジェネレーターはETH2 マージ APIを通じてGeth, Erigon, EthereumJS,Besuとやり取りできる
規格の実施
ここまではなぜ等価性が強力なモジュール式の抽象化の扉を開き、極めてシンプルなクライアントの実装を可能にするかを説明してきた。
モジュール化の利点は柔軟性にある。
不正の証明を改善したり、EVMと同等のゼロ知識証明が可能になった場合でも既存のオフチェーンスタックに組み込むことができる。
モジュール化の単純な実施にはEVMと同等の実装をSolidityで行うことがある。しかしEVMは多くのVM命令で構成されていて複雑で、アップデートされるたびにSolidityで再構成しなければならなくなる。
代わりによりシンプルな命令セットを持つEVMを実装し、不正証明をそのEVMで実行する。Gethのような既存のEVMインタプリンタをシンプルなEVMで動作するようにコンパイルするだけでよい。
GethはEVMに相当するので環境もEVMに相当する。そのためEVMの再実装を回避でき、将来のEVMのアップグレードにも対応できる。
OptimisticPBCはコンパイラ専門家のGeorge Hotzと協力してEVM相当の照明システムを構築している。
このシステムではロンドンHF以降のL1ブロックを実行することができる。
モジュール化したGethを中心とした設計は不正防止インフラのコモディティ化に進んでいる。つまりL2の専門家でなくてもL2を導入できるようになっていく。
ロールアップを安全に設計して起動するには, L2紛争ゲームに対する知識とノードソフトウェアがどのように連携するかを知る必要がある。
(Web開発者がIP-システム管理-マイクロチップ製造のエキスパートにならなければならないようなレベル)
コモディティ化していくにあたって競争も発生する
・パフォーマンス、安定性、アップタイム
・ネットワーク効果、エコシステムの専門性、コミュニティ
・MEV防止とシークエンスツール
これらコモディティ化と競争化によってOp.PBCがL2 Geth = EVM等価性の構築に集中していくことになる
EVM等価性の力はマルチチェーンにおける標準化にある
EVM互換チェーンであるということはそのチェーンにEVM専門のコード開発チームが必要と言うことだ。
RollUpによるEVM等価なチェーンはL1のEIPをL2にスライドでき、セキュリティとエコシステムを共用できる。
そのためズッコケたとしてもL1のEIPをテストする環境として絶好の環境になる。
1000万ドルの資金提供について