イーサリアム2.0(Eth2)とは?概要やGoQuorumへの影響を解説

イーサリアム2.0(Eth2)とは?概要やGoQuorumへの影響を解説

本記事の目的と対象者

本記事ではパブリックチェーン「イーサリアム(Ethereum)」にて現在進行系で行われている大型アップグレード、いわゆる「イーサリアム2.0(Eth2)」について紹介します。

イーサリアム2.0の話題は広範にわたるため、本記事ではブロックチェーン全般の情報収集をしている方、特に自社事業でブロックチェーンを活用しようとしている方に向けて、イーサリアム 2.0の概要とロードマップを紹介していきます。各論については、別途補足となる記事をアップする予定です。

イーサリアム2.0(Eth2)とは?

イーサリアム2.0とは、非中央集権性の維持と電力消費量の削減を実現しながら、セキュリティとスケーラビリティの両方を向上させるために、数年にわたって行われるイーサリアムのアップグレード群です。現在のイーサリアムがローンチした当初は”Serenity”という呼称で知られていました。

現在のイーサリアム(以下、イーサリアム1.0またはEth1.0と表記)とイーサリアム2.0の大きな違い以下の点です。以下を実現するためのアップグレードの総称がイーサリアム2.0だと言えます。

  • 既存チェーンのハードフォークではなく新しいチェーンが稼働
  • コンセンサスに至るためのルールがProof of Work(PoW)からProof of Stake(PoS)へと変更
  • シャーディングの導入

他にも変更点はありますが、ひとまず上記がイーサリアム1.0との大きな違いだという理解で良いでしょう。PoSとシャーディングについては後述します。

また、イーサリアム2.0の全体像をイメージするには以下の図が有用です。見ると分かる通り、イーサリアム2.0は従来のEth1.0チェーンとは別のブロックチェーンになっています(将来的にEth2と接続される予定)。

https://docs.google.com/presentation/d/1G5UZdEL71XAkU5B2v-TC3lmGaRIu2P6QSeF8m3wg6MU/edit#slide=id.g3c326bb661_0_58 を基に一部変更

イーサリアム2.0ではGoQuorumはどうなるのか?

2021年現在、企業がブロックチェーンを活用する際の選択肢としては「Corda」や「Hyperledger Fabric」「GoQuorum(旧称:Quorum)」のようなパーミッション型(許可型)のブロックチェーン基盤が最初の候補に挙がります。

企業としてブロックチェーンの活用を検討している方の関心事のひとつとしては、イーサリアムをフォークした基盤であるGoQuorumが、イーサリアム2.0にどう対応するのかということではないでしょうか?

結論から記すと、GoQuorumには大きな影響は無さそうです。そもそもGoQuorumでは電力消費の大きいコンセンサスアルゴリズムのPoWが導入されていないからです。ただ、開発言語やツール、EVM(Ethereum Virtual Maschine)といった点では、イーサリアム2.0との互換性が維持されていくと思われます。

参考:Will there be compatibility issues with Quorum and Ethereum 2.0 ? #820

イーサリアム1.0の課題

さて、大きなアップグレードが実装される背景にはイーサリアム1.0の抱える課題があります。簡単に整理していきましょう。イーサリアム1.0の主な課題は以下の通りです。

  • スケーラビリティ問題(トランザクションが増えると処理速度が落ちる/手数料が高くなる)
  • ネットワークの成長に従ってノードを立てるハードルが高くなる(同期すべきデータサイズが大きくなり、要求されるディスクスペースが増える)
  • 電力消費が膨大で持続可能性に乏しい(Proof of Workを支えるには多くの電力が必要)

イーサリアム2.0では上記課題を非中央集権性(分権性)を維持しながら解決していこうとしています。非中央集権性は上記課題を克服しながら、検閲耐性やオープンネス、データプライバシー、高いセキュリティを確保できるため、重要だと言われています。

ただし、非中央集権性(decentralization)、セキュリティ、スケーラビリティをすべて充足させるハードルは高いと考えられており、イーサリアム2.0にとっては大きな挑戦だと言われています。

Proof of Stake(PoS)について

Proof of WorkからProof of Stakeへの移行は、イーサリアム2.0にとって重要なマイルストーンです。Proof of Workのように、多くの電力を要するコンピュータを稼働させるのではなく、32ETHをステークしたノードがバリデータとなり、ブロックの提案および承認を行う仕組みとなっています。電力消費を大きく削減できるため、持続可能性を担保できるのです。

Proof of Stakeとは?:一定数以上のトークンを保有するノードに対してランダムに新規ブロックの提案権が与えられる仕組み。電力消費の大きいProof of Workの代替案として提案された。

ステーク(Stake)とは?:トークンをコントラクトに預け入れて、ネットワークに貢献する行為のこと。預けたトークンの量に応じて、ステーキング報酬が分配される。

Proof of Stake導入による主なメリットは以下の3点だと考えられています。

  • ノードを立てるハードルが下がる(ハードウェアスペックへの依存度が大きく下がり、電力消費も少なくなる)
  • 非中央集権の度合いが高くなる
  • Proof of Stakeに移行することで、セキュリティを維持しながらシャーディングが可能になる

シャーディングについては次のセクションで説明しますが、一般的にProof of Workブロックチェーンでシャーディングを行うと、ハッシュパワーが分散してしまいセキュリティの低下に繋がると言われています。

シャーディングについて

シャーディングはデータベースを水平方向に分割することで、負荷を分散させるプロセスのことです(シャーディングはEth2.0に限った概念ではありません)。イーサリアム2.0では、複数のブロックチェーンに分割し、各シャードチェーンで処理を行うアプローチが採用される予定です。

https://docs.google.com/presentation/d/1G5UZdEL71XAkU5B2v-TC3lmGaRIu2P6QSeF8m3wg6MU/edit#slide=id.g3c326bb661_0_58 を基に一部変更

前提として各シャードチェーンは異なるブロックチェーンであり、それぞれに異なるバリデータが割り当てられます。シャーディングが実装されると、新しく64のシャードチェーンが稼働する予定です。並列処理によってトランザクションの処理速度が大きく向上します。

また、どのバリデータがどのシャードチェーンを監視するかは「Beacon Chain」という全体的な調整役を担うチェーンが管理しています。Beacon Chainはバリデータがステークを行う際の入り口として機能しており、シャードチェーン間のトランザクションもBeacon Chainが担う予定です。

なお、シャードチェーンへのバリデータの割り当てはランダムに決定され、一定期間ごとにシャッフルされます。これは個別のシャードチェーンに悪意あるバリデータが固まらないようにするための措置です。

イーサリアム2.0のブロック提案・承認プロセス

ここでイーサリアム2.0のブロック提案・承認プロセスを紹介しておきましょう。

1. Attestation

イーサリアム2.0では、大勢のバリデータ(32ETHをステークしたノードのこと)の中から、各シャードのブロック提案者がランダムに選択されます。選ばれなかったバリデータ群(委員会と呼ばれ、128以上のバリデータで構成される)は、割り当てられたシャードで提案されたブロックの正しさを証明しなければなりません。そして、証明された記録(Attestation)はBeacon Chainに書き込まれます。

イーサリアム2.0では時間枠が設けられており、1スロットという単位では1ブロックのみが作成され、1エポック(32スロット)ごとに委員会は解散、再度ランダムに選ばれたバリデータ群が各シャードに再割当てされる仕組みになっています。

2. Crosslinks

各シャードからのAttestationが集まったら、Beacon ChainでCrosslinkが作成されます。このCrosslinkは異なるシャードチェーンの状態を読み込めるようにする役割を担います。なお、のCrosslinkがあることで、ブロック提案者は報酬を受け取ることができます。

3. Finality

イーサリアム2.0ではブロックを確定させるために、特定のチェックポイントを設けて、バリデータ対してブロックの状態について同意を求める仕組みになっています。バリデータの3分の2が同意すればブロックが確定します。

以上のように、イーサリアム2.0では大きく分けて3つのステップを通じてブロックが確定します。

数段階に分かれるEth2アップグレード

イーサリアム2.0は向こう数年にわたって段階的にアップグレードされる予定です。最後にそのプロセスを整理しておきます。

フェーズ0 (2020年12月)

Beacon Chainが稼働し、Proof of Stakeを導入するアップグレードです。2020年12月にローンチされました。現状ではスマートコントラクトは実行できません。また、バリデータとして参加するためにステークしたETHは当分の間動かせない状況です。

Beacon Chainの様子は以下のサービスで確認できます。

参考:https://beaconscan.com/

フェーズ1 (2021年予定)

2021年の実装を予定しているフェーズ1では、シャードチェーンが導入されます。64のシャードチェーンが立ち上がる予定であり、トランザクションの処理速度が飛躍的に向上刷る見込みです。ただし、フェ―ズ1の時点ではスマートコントラクトの実装はできません。

フェーズ1.5 (2021~22年以降の予定)

2021〜22年以降に予定されているフェーズ1.5では、イーサリアム1.0のPoWチェーンとイーサリアム2.0のPoSチェーンが接続され、統合される予定です。現状のEth1チェーンは、一定期間を経た後、メンテナンスモードに移行されます。

まとめ

イーサリアム2.0のアップグレードはフェーズ2以降も続く予定です。ただし、その詳細は不明確な点も多く、将来的な変更も予想されます。

また、フェーズ2ではシャードチェーン上でもスマートコントラクトが実装可能になる予定ですが、難易度が高く時期は未定となっています。そこで「Rollup」というイーサリアムのセカンドレイヤー技術を中心とした開発ロードマップ(Rollup-centric ethereum roadmap)が、イーサリアム創設者のVitalik Buterin氏より提案されており、処理能力を向上させながらスマートコントラクトを利用できる状況がフェーズ2の実装よりも早期に実現する可能性が出てきています。

本記事ではイーサリアム2.0の概要理解を目的として主要なトピックであるPoSやシャーディングについて紹介しました。現時点ではエンタープライズ向けブロックチェーンには大きな影響はありませんが、企業がパブリックチェーンを利用する取り組みも進められているため、当メディアでもイーサリアム2.0関連のトピックは継続的に紹介していく予定です。

ブロックチェーンカテゴリの最新記事