暗号資産(仮想通貨)におけるシャーディング(シャードチェーン) 技術とは?

シャーディング
シャードチェーン
2022-10-26 更新

イーサリアム(ETH)の抱えているスケーラビリティ問題の解決策として期待されているシャーディングとは、どのような技術なのでしょうか。

シャーディングによって、イーサリアムを始めとするブロックチェーンは大きく飛躍し、イーサリアムの価値そのものも大きく変わってくるともいわれています。

この記事ではブロックチェーン技術におけるシャーディングについて詳しく解説します。

シャーディングとは?

「シャーディング」は、データベースを水平に分割して負荷を分散するプロセスを意味するコンピューターサイエンスの一般的な概念や手法です。

シャーディングにより、データベースは同じテーブルに保存するレコードを、複数の物理的なコンピューター(データベースサーバー)に分割して記録することができ、全体のスループット(処理能力)を上げることが可能になります。

ブロックチェーン技術におけるシャーディングもまた負荷分散の手法を指しますが、データベースのそれとは目的も方法も異なります。イーサリアムのシャーディングは、イーサリアムのスケーラビリティ問題を解決するための方法のひとつとして提案されました。

イーサリアムのシャーディングとは

イーサリアムが提案するシャーディングは、トランザクションの検証作業を行うバリデーター(承認者)をグループ分けして、グループが受け持つトランザクションのみ承認していく、並列処理による検証作業を行う負荷分散の仕組みです。それによって、分散型ネットワークのスループットを向上させ、ブロックチェーンプロトコルのスケーリング能力を高速化させていきます。

イーサリアムは、プログラムによってあらかじめ決められた処理を自動執行できるスマートコントラクトを実装したことで、ブロックチェーン上にDApps(分散型アプリケーション)と呼ばれるアプリケーションを構築することができます。それによってイーサリアムは、ブロックチェーン上にDeFi(分散型金融)やブロックチェーンゲームなど様々なサービスが開発されるようになりました。

しかし、イーサリアムは仕様上、1秒あたりに処理できるトランザクション数に限りがあります(15~25トランザクション程度)。そのためイーサリアムは取引量が増えれば増えるほど、また一時的に取引が集中することによって即時処理ができない状況に陥るというスケーラビリティ問題を抱えています。

様々なDAppsが開発されるようになったイーサリアムは、年々その人気が高まり取引量も増え続けたことから、かなりの頻度でイーサリアム全体のトランザクション処理に遅延が発生するようになりました。度々発生するようになったイーサリアムの遅延は、DAppsサービスの継続が危うくなるなど、もはや無視できないほど大きな問題になってしまいました。

DAppsプラットフォームとしてイーサリアムがさらに普及していくには、こうしたスケーラビリティ問題の解決は必要不可欠です。そこで問題を解決するために期待されているのがシャーディングです。

シャーディングの仕組み

イーサリアムのシャーディングは、サイドチェーンとして「シャード」と呼ばれる分割された新しいチェーン(シャードチェーン)を作成し、トランザクションやアカウントデータの処理を複数のシャードチェーンに分散させ並列処理することで負荷を軽減させます。それによって、1秒あたりのトランザクション処理数を増加させます。

各シャードは、独立したブロックチェーンとして機能し、それぞれにバリデーターがランダムに割り当てられます。これが前述のバリデーターのグループ分けにあたります。バリデーターは、各シャードでトランザクションの検証と承認を行いブロックを追加していきます。ブロックチェーン全体ではなく、割り当てられたシャードのトランザクションのみ検証すればよいことになります。

シャーディングは、初期段階の実装時には64個のシャードチェーンを並列実装しますが、将来的にはその数を増やしていく計画があります。

イーサリアムは、スケーラビリティ問題の解決策としてシャーディングのほかにも、オフチェーンのスケーリング・ソリューションとして「ロールアップ」という技術を実装しています。ロールアップは、イーサリアムのメインチェーンのセキュリティを活用しながら、トランザクションの一部をブロックチェーンの外(オフチェーン)で処理することで、ネットワークの渋滞解消を図るレイヤー2(セカンドレイヤー)の仕組みです。ロールアップはオフチェーンで処理された複数のトランザクションデータをひとまとめにしてメインチェーンに戻します。

シャードチェーンは、こうしたロールアップやDAppsがデータを格納するための安価なストレージレイヤーとして機能します。

ちなみに、シャードチェーンのトランザクションの承認はバリデーターが行うために、コンセンサスアルゴリズムにプルーフ・オブ・ステーク(Proof of Stake:PoS)を採用することが前提です。

仮に承認にマイニング(採掘)作業が必要なプルーフ・オブ・ワーク(Proof of Work:PoW)のままでシャーディングを実装してしまうと、ブロックチェーンをより小さい単位で分割しまうことから、計算処理能力の高いマイナー(マイニング業者やマイニングプール)によって51%攻撃によるシャードチェーンの乗っ取りが容易に実行できてしまう可能性があります。

PoSでは、より多くのステーキングを行う暗号資産(仮想通貨)保有者からバリデーターをランダムに選出するため、その危険性は少なくなります。シャーディングは、PoSだからこそ実装できる仕組みといっても過言ではないでしょう。

アップデート後のイーサリアムとシャーディングの関係

初期のイーサリアムは、コンセンサスアルゴリズムにPoWを採用していました。しかし、スケーラビリティの問題や手数料高騰の問題、膨大な計算処理による大量の電力消費などを改善するために、イーサリアムはPoWからPoSに移行しました。

イーサリアムは、いきなりPoSに移行するのではなく無理のないように段階的にアップデートを行いながら、その準備を進めてきました。2020年12月より始まったPoSへの移行準備は、PoWで動作する従来のメインネットである実行レイヤーの部分と、PoSやシャーディング等の実装に必要な機能を搭載するコンセンサスレイヤーの部分に分けてアップデートを進めてきました。

PoSの基盤となるコンセンサスレイヤーの初期フェーズのチェーンは、ビーコンチェーンとも呼ばれてきましたが、これらは従来のイーサリアムの機能を損ねることなくメインネットと並行して実行されてきました。

ビーコンチェーンには、シャードのセキュリティとシャード間の同期状態を保つロジックがすべて含まれています。シャーディングに必要不可欠なバリデーターのグルーピング機能などもビーコンチェーンがネットワーク内のステーカーを調整し、作業が必要なシャードを割りあてます。また、他のシャードからアクセス可能なシャードトランザクションデータを受信したり保存したりすることによりシャード間の通信を容易にします。これにより、シャードがイーサリアムのスナップショットを持ち、すべてを最新の状態に保つことができるというわけです。

イーサリアムへのシャーディングの実装は、このビーコンチェーンがメインネットと統合されて、イーサリアムが完全にPoSに移行した段階で、初めて実装できるようになります。

PoWで運用をしていたイーサリアムのメインネットは、最終的にビーコンチェーンのPoSと「マージ(統合)」されることで、実行レイヤーとコンセンサスレイヤーは統合され、完全にPoSに移行されます。イーサリアムのシャーディングは、統合後の進捗状況により、2023年のいずれかのタイミングでリリースされる予定です。

シャーディングを実装するブロックチェーン

イーサリアム以外にもシャーディング技術に注目し、シャードの導入を検討していたり、すでに実際に実装をしていたりするブロックチェーンも存在します。ここでは、シャーディングを採用する代表的なブロックチェーンをいくつか紹介します。

IOST

IOST(アイオーエスティー)は、様々なサービスにブロックチェーン技術を活用できるプラットフォームを目指して開発された、ブロックチェーンプロジェクトです。ネイティブトークンである暗号資産(仮想通貨)もまたプロジェクト名と同様IOSTと呼ばれています。

プロジェクト名のIOSTは、「Internet Of Service Token」の頭文字を取った名称です。

IOSTは、独自のコンセンサスアルゴリズムのプルーフ・オブ・ビリーバビリティー(PoB)を採用しています。PoBは、膨大な計算処理を必要とせず、ブロックチェーンネットワーク参加者が保有するIOSTの量やネットワークへの貢献度(SERVI)の高さなどから選出された承認者によって取引が承認されるため、ネットワーク自体の情報処理速度を上げることができます。

IOSTに実装されたシャーディング技術は、「EDS(Efficient Distributed Sharding)」と呼ばれています。EDSは、グループ単位にノードを分割し、トランザクションを並列処理します。EDSは、DRP(Distributed Randomness Protocol)という独自のプロトコルで公正かつセキュアにノードのグループ化を実現します。

IOSTでは、スマートコントラクトの開発に際して、広く使用されているJavaScriptが利用可能のため、多くのエンジニアがDAppsの開発に参加することができるのも大きな特徴です。

ニアプロトコル(NEAR)

ニアプロトコル(NEAR)は、DApps開発プラットフォームを目指すブロックチェーンプロジェクトです。ネイティブトークンに暗号資産NEARを持ちます。

ニアプロトコルは、コンセンサスアルゴリズムにPoSをベースとするスレッショルド・プルーフ・オブ・ステーク(TPoS)を採用しています。TPoSは、バリデーターのNEARトークン保有量ではなく、オークションに似た方法でバリデーターはステークする量を表明し、一定時間内にて最低しきい値を決定し、それ以上にステークすると表明したバリデーターがステーク数に比例した量に応じて選出される確率が上がるという方法で承認者を決定します。

また、計画中である独自のシャーディング技術「Nightshade(ナイトシャード)」を用いてスケーラビリティ問題の解決を目指しています。

ナイトシャードは、完全なシャーディングに向けて段階的にシャーディング技術を開発しています。しかし、2020年初頭のニアプロトコルのローンチ準備中に、シャーディングは非常に複雑な技術であり、完全にシャード化されたネットワークを最初からローンチする必要はないことに気付き、まずはブロックチェーンプロジェクトをローンチしました。

そして、その後に第1弾として2021年11月にSimple Nightshadeを実装しました。

初期段階のSimple Nightshadeでは、ブロックチェーンを4つのシャードに分割しますが、シャード処理は行っていません。この段階では、全シャードのトランザクションを同一のブロックに含めるようにして、1つのブロックチェーンのように稼働させています。ブロックチェーンはネットワークのすべてのバリデーターによって引き続き検証されています。ちなみに計画では実際に4つのシャードに分割され、ネットワークのスループットを大幅に向上させる予定です。

2022年後半には、バリデーター以外の役割として、1つのシャードのみを検証する「チャンク・オンリー・プロデューサー」という新しい役割を導入する計画を表明しています。

チャンク・オンリー・プロデューサーは、ある特定のシャードのためのチャンク(シャードブロック)を、ネットワークのセキュリティを犠牲にすることなく、生成することができます。チャンクのみのプロデューサーの導入は、バリデーターの総数を増やし、ニアプロトコル全体の分散化を改善するのにも役立ちます。

完全なるナイトシャードは、2023年に提供される予定です。

ジリカ(ZIL)

ジリカ(ZIL)は、シンガポール国立大学の研究者によって開発されたDApps開発プラットフォームです。

ネイティブトークンに暗号資産ZILを持つジリカは、コンセンサスアルゴリズムにはPoWとPBFT(Practical Byzantine Fault Tolerance)という仕組みを組み合わせたメカニズムを採用しています。

ジリカでは、PoWはネットワークに参加するためのエントリーチケットとして機能します。有効なチケットを保持しているノードのみが参加できるため、オンラインシステム上の脅威となる、攻撃者が複数のアカウント、ノード、コンピューターを作ってネットワークを支配しようとするシビル攻撃を防ぐためにのみ使用されます。

コンセンサスにはPBFTを利用します。PBFTは、トランザクション処理を承認する中央管理者的な役割のコアノードを設定する方式ですが、コアノードを定期的に変更することで不正を防止しています。またPBFTでは、ブロック報酬をより均等にマイナーに分配できるといいます。

ジリカの採用するシャーディングは、ユーザーと承認作業者をグループ分けしますが、特定のユーザー同士が集まって不正を働かないようにするため、ランダムグルーピングという仕組みでランダムにグループを形成して、グループがシャードごとにトランザクション処理を行います。ジリカのシャーディングは、1秒あたり2500超のトランザクションを処理することが可能です。

また、グループを構成するユーザー数を600から1000と多めに設定しているため、ブロックチェーンの改ざんや乗っ取りを防ぐことができ、セキュリティ面でも強化されています。

まとめ

ブロックチェーン技術におけるシャーディングは、かなり早い段階で論文が発表されたり、イーサリアムのように実装の提案が行われたりしてきました。しかしながら、その実体は複雑でかつ実装にはイーサリアムも含めて、かなり難航してきた印象です。発表後、数年経っても実装までに至らないプロジェクトは少なくありません。

ここにきてようやくイーサリアムが、2022年9月に実行レイヤーとコンセンサスレイヤーが統合される「マージ(統合)」を実施したことにより、ブロックチェーンもいよいよシャーディングの時代に突入する目処が立ったといえるのではないでしょうか。それにより、イーサリアムが抱えていたスケーラビリティ問題等、数々の課題が解消される時期が見えてきました。同時に、他のブロックチェーンもまたイーサリアムとの相互運用性を高めるなど、機は熟した感があり、また、シャーディングのみならずブロックチェーン技術の進化は様々な課題を解決する方向に進み、ブロックチェーン技術がより様々な分野へと応用される期待も一気に高まってきました。

今後はますますブロックチェーン技術の進化は、見逃せなくなるのではないでしょうか。

※掲載されている内容は更新日時点の情報です。現在の情報とは異なる場合がございます。予めご了承ください。

関連記事

今、仮想通貨を始めるなら
DMMビットコイン