現行のイーサリアムが持つ3つの課題
イーサリアム2.0とはイーサリアムの大型アップデートの名称で、イーサリアムがリリースされたときのロードマップでは「セレニティ」と呼ばれていました。イーサリアム2.0は、現行のイーサリアムが抱える以下の3つの課題を改善するアップデートです。
- スケーラビリティ問題
- ノードのストレージ要件
- 環境問題
スケーラビリティ問題
イーサリアムにおけるスケーラビリティ問題とは、トランザクションの増加にネットワークの処理速度が追いつかず、送金に遅延が発生する問題のことです。また同時に、送金にかかる手数料であるガス代の高騰も問題となっています。
これには2つの原因があります。1つは、イーサリアムネットワークの処理能力がそれほど高くないことです。例えば、クレジットカードが1秒間に数万件の取引を処理できるのに対し、イーサリアムが1秒間に処理できる取引の件数は25件です。
2つ目の原因は、2020年に始まったDeFiブームです。 DeFiとは分散型金融のことで、中央管理者の存在なしにユーザーがさまざまな金融サービスを提供、利用できる仕組みのことです。DeFiの多くがイーサリアムのスマートコントラクト機能を利用しているため、DeFi市場が拡大するごとにイーサリアムネットワーク上のトランザクションも増えていくこととなりました。結果として上記のスケーラビリティ問題が発生し、送金の遅延やガス代の高騰を招いたのです。
ちなみに2021年5月8日に発生したトータルトランザクション数は約170万、これは1年前の同時期と比較しておよそ2倍です[1] Etherscan, Ethereum Daily Transactions Chart,2021年5月8日参照。
ストレージの問題
イーサリアムブロックチェーンが肥大化することにより、ノードへ要求されるストレージ要件は年々高まってきています。ノードとはイーサリアムネットワーク全体の全トランザクションの処理を行うコンピューターのことです。
イーサリアムブロックチェーンに新たな機能が加わると、当然ながらデータサイズは大きくなります。ノードのなかでも最もサイズの大きいデータ処理を行うアーカイブノードの場合、保存するデータサイズは2021年5月現在で約7.5TBです[2] Etherscan, Ethereum Full Node Sync (Archive) Chart,2021年5月29日参照。
高速で読み書きできてかつ大容量のSSDストレージを用意する必要があるため、ハードウェアを準備する費用は高額になります。ハードウェアの要件が厳しいため、限られた人しかノード運営に携われなくなってしまうのです。
環境問題
現在のイーサリアムブロックチェーンはマイニングによって管理と更新が行われています。しかし、現在のコンセンサスアルゴリズムであるPoWにもとづいて行われるマイニングは、環境に悪影響だという指摘があるのです。これはPoWが最も早く計算を終えたマイナーのみが報酬を得るというアルゴリズムのため、世界中でマイナーたちが高性能なコンピューターを長時間稼働させ続けることによって、莫大な電力が消費されているという現状があるためです。
イーサリアム2.0とは
上記で挙げた3つの問題を解決するため、イーサリアム2.0ではコンセンサスアルゴリズムの変更とシャーディングの実装が行われます。
コンセンサスアルゴリズムの変更
1つ目の大きな変更点は、コンセンサスアルゴリズムをPoWから「PoS (プルーフ・オブ・ステーク)」へ変更することです。
PoSとは、32ETH以上のイーサリアムをブロックチェーン上に預け入れた (ステークした) 人からブロックを生成できる人が選ばれる、というアルゴリズムです。預けるイーサ (ETH) の量が多ければ多いほど、ブロックを生成して報酬を得られる確率が高くなります。PoWのように大量の計算を高速に行う必要がないため、消費電力の大幅が削減できるとされているのです。
2020年12月1日、PoSを実装した新ブロックチェーン「ビーコンチェーン」がリリースされました。ビーコンチェーンとは、イーサリアム2.0の基盤となるチェーンです。ビーコンチェーンは現行のイーサリアムブロックチェーンとは別に存在しますが、最終的に統合され、その時点でマイニングが終了する予定です。
ステーキングの開始
PoSでブロックチェーン上にイーサリアムを預け入れて報酬を受け取ることを「ステーキング」と呼びます。
2020年11月はじめに、ビーコンチェーン公開に先立ってイーサ (ETH) のステーキングが開始されました。2021年5月末時点で、ステーキングされたイーサ (ETH) の合計は、500万ETHを超えています[3] beaconcha.in, Open Source Ethereum 2.0 Beacon Chain Explorer,2021年5月29日参照 Etherscan, Ether Supply Growth Chart,2021年5月29日参照。現在流通しているイーサ (ETH) は約1億2,000万ETH[4]
なので、これはイーサ (ETH) 全体のおおよそ4.5%にあたる数量になり、時価で計算すると123億ドル (約1.4兆円) です。
なおイーサリアム2.0のアップデートが完了するまでの数年間は、ステークしたイーサ (ETH) を引き出したり送金することはできません。
シャーディングの実装
シャーディングの実装は、イーサリアムのスケーラビリティ問題とノード問題を解決するために行われます。
シャーディングとは、データベースの負荷分散を行うための技術です。具体的には、イーサリアムブロックチェーンを複数のシャードチェーンに分割することが計画されています。複数に分けることでネットワークにかかる負荷が分散され、トランザクションの処理速度が高速になるのです。
またトランザクションの検証を行うノードが実行するのは、イーサリアムブロックチェーン全体ではなく、検証用に割り当てられたシャードチェーンのみです。ハードウェア要件が緩和され、より少ないストレージでノードを実行できるようになります。
シャーディングが実装されると、スケーラビリティ問題やストレージ問題が解決されるだけでなく、最終的には個人が所有するノートパソコンやスマートフォンでもネットワーク検証に参加できるとのことです。だれでもかんたんにイーサリアムネットワークに参加できるようになることで、ネットワークの安全性や透明性がさらに高い水準に保たれます。
イーサリアム2.0のビジョン
イーサリアム2.0のビジョンは、「スケーラブル」と「セキュリティ」、「分散化」の3つを実現することです。ただしこれらは、2つの要素を満たすためには1つの要素を犠牲にせざるを得ないトリレンマとして、実現不可能とされてきました。
- スケーラブル:利用者が増えてトランザクション数が増加しても、手数料は上がらず、データ処理速度も変わらない
- セキュリティ:PoWの問題点であった、何者かがネットワークの大部分を掌握した場合に不正が可能になってしまう問題の克服
- 分散化:多数のネットワーク参加者によってネットワークが運営される
例えば上記のうち、スケーラブルとセキュリティを満たすと分散化が犠牲になります。
イーサリアムネットワークの混雑を解消する手段として、ブロックサイズを増やして1度に処理できるトランザクションの数を増やす方法があります。しかし、ブロックサイズを増やすと、ブロックチェーン全体のサイズも同時に大きくなります。これはノードを立てるコンピューターに求められるハードウェア要件が高くなることを意味し、ノードを立てられる人が少数になってしまうことにつながります。よって分散化の実現は不可能です。
また、スケーラブルと分散化を満たすとセキュリティが犠牲になります。
分散化を満たしつつイーサリアムネットワークをスケーラブルにする方法は、トランザクションの承認にかかる時間を早めることです。
コンセンサスアルゴリズムにPoWを採用している現行のイーサリアムにおいて、トランザクションの承認を早めるには計算の難易度を下げることになります。しかし難易度を下げることは、悪意のある何者かが高性能なコンピューターを利用してネットワークを支配することを容易にします。つまりPoWにおける計算の難易度を下げる方法では、セキュリティが実現できません。
このように何か2つを実現しようとするとそれ以外の1つが犠牲になるトリレンマがイーサリアムにはありました。しかし、イーサリアム2.0で行われるコンセンサスアルゴリズムの変更とシャーディングの実装によってこのトリレンマは解決可能なのです。
最初にスケーラビリティです。シャーディングの実装によりブロックチェーンが分割され、ネットワークの混雑が解消されます。
次は分散化です。現行のイーサリアムにおいてノードは、ネットワーク全体のトランザクションを処理する必要がありますが、イーサリアム2.0になるとより小さいサイズのシャードチェーンのみを実行すればよくなります。高性能のコンピューターは不要になり、ネットワーク参加者が増えるでしょう。これにより分散化が実現します。
最後にセキュリティです。イーサリアム2.0でノードを実行するには、32ETH以上をブロックチェーン上にステークする必要がありますが、悪意のある参加者が不正なブロックを追加しようとした場合、ステークされたイーサ (ETH) が没収されてしまいます。直接的な経済損失があるため、攻撃するメリットがほとんどありません。
さらにシャードチェーンのうち、どのチェーンの検証を行うかはビーコンチェーンによってランダムに割り当てられるので、何者かが共謀して特定のシャードを攻撃することも不可能です。
イーサリアム2.0への移行はどのように行われるのか?
イーサリアム2.0のロードマップ
2020年12月、ヴィタリック・ブテリン氏がイーサリアム2.0への今後のロードマップを公開しました。ロードマップに書かれた開発項目を簡単にまとめると、次の6つに分けられます。
- eth1.xにおけるeth2ライトクライアントとロールアップの実装
- eth1.xにおけるStateless Clientの実装
- マージの実装
- シャーディング
- ライトクライアントの実装
- その他の高度な研究
なお公開されたロードマップでは以前あった「フェーズ」という項目がなくなっており 、上記の項目は順番に行うのではなく、各工程を並行して行うことが示されています。ただしマージとシャーディングの順番だけははっきりしています。最初にマージ、次にシャーディングです。
イーサリアム公式サイトにはイーサリアム2.0と現行のイーサリアムブロックチェーンのマージに関するページがありますが、そこには「当初はマージの前にシャードチェーンへ取り組む予定だったが、優先順位はマージにシフトした」と記載があります[5] Ethereum公式サイト, The merge,2021年5月29日参照。
そしてビーコンチェーン初のハードフォーク案「HF1」が、2021年2月にヴィタリック・ブテリン氏から提出されました。この案の詳細は、ライトクライアントサポートの追加とバグの修正です。HF1が行われる具体的な日程は決まっていません。
イーサリアム2.0への移行のこれまで
イーサリアムの開発フェーズは全部で4段階あり、「イーサリアム2.0」はその4段階目にあたります。イーサリアムの4つの開発フェーズは次のとおりです。
- フロンティア:2015年7月
- ホームステッド:2016年3月
- メトロポリス:2017年9月〜
- イーサリアム2.0 (セレニティ) :2020年12月〜2019年3月
現在 (2021年5月) は、イーサリアム2.0の開発「フェーズ0」に当たる段階です。当初イーサリアム2.0は2020年1月に移行が開始される予定でしたが、実際に始まったのは11ヶ月後でした。
イーサリアム2.0へ移行するとどうなるのか?
当面はイーサリアム1.xと共に稼働
2020年12月に、PoSを備えた「ビーコンチェーン」という名前の新たなブロックチェーンがリリースされ、イーサリアム2.0への移行がスタートしました。ただし2021年5月現在 、ビーコンチェーンで行えるのはイーサリアムのステーキングのみで、イーサ (ETH) の送金やスマートコントラクトの作成は行なえません。
なお新たなブロックチェーンがリリースされたからといって、現行のイーサリアムブロックチェーンがなくなったわけではありません。現行のイーサリアムは今まで通り稼働しており、PoWでマイニングも可能です。
最終的にイーサリアム1.xと2.0はマージされる
現時点で現行のイーサリアムネットワークとビーコンチェーンという2つのブロックチェーンが共存していますが、最終的にこの2つのブロックチェーンはマージ (統合) される予定です。
マージされた段階で、大量の電力を消費していたイーサリアム1.xが省電力のPoSベースのブロックチェーンへ変更されます。スマートコントラクトの利用ができるようになり、これまでのイーサリアムネットワークのに記録されていた取引履歴も引き継がれます。
なお、イーサ (ETH) 保有者やDApps利用者は、特別な対応を行う必要はありません。
PoSへの移行が完了するとマイニングは終了する
マージの実装はPoSへの正式な切り替えを意味しています。チェーンがマージされるとPoWは終了し、マイニングが行えなくなります。ただしマージ前であれば、現行のイーサリアムはPoWのままなのでマイニングが可能です。
イーサリアム2.0以外のスケーラビリティ問題解決のための開発
イーサリアム2.0では、「シャーディング」という技術の実装によりスケーリングが可能になると述べました。ですが分散型でスケーラブル、かつ高いセキュリティを備えるイーサリアム2.0を実現するには、ひとつのスケーリング技術の実装だけでは不十分です。
イーサリアム2.0のビジョンを実現するために、次のようなさまざまなスケーリングソリューションの実装が検討されています。
- ZKロールアップ (レイヤー2スケーリング)
- オプティミスティック・ロールアップ (レイヤー2スケーリング)
- ステート・チャネル
- サイドチェーン
- プラズマ
イーサリアム2.0のまとめ
イーサリアム2.0について簡単にまとめると、次のとおりです。
- イーサリアム2.0とは、現行のイーサリアムが抱える課題を解決する大型アップデート
- コンセンサスアルゴリズムの変更と、シャーディングの実装が行われる
- PoSベースの「ビーコンチェーン」が2020年12月にリリースされた
- 当面現行のイーサリアムが稼働し続ける
- 完全移行までは少なくともあと数年かかる見通し
イーサリアム2.0は仮想通貨業界で注目を集めています。特にイーサ (ETH) を保有している方は、イーサリアム2.0の今後の動向に注目してみてください。