
Bitcoin、Ethereum、Solana のような第一世代のブロックチェーンは、コンセンサス、セトルメント、実行、データ可用性というタスクをすべて同じレイヤーで担っているため、モノリシックブロックチェーンと呼ばれています。その設計上、モノリシックブロックチェーンはこれらのタスクすべてを効率よくこなすことができず、これがブロックチェーンのトリレンマを生む原因になっています。 ブロックチェーンの特性には、分散性、スケーラビリティ、セキュリティがあります。モノリシックブロックチェーンの場合、この 3 つすべてではなく、せいぜい 2 つしか満たせないため、どこかで妥協せざるを得ません。例えば Bitcoin は、分散性とセキュリティのためにスケーラビリティを犠牲にしており、Ethereum も同じです。 モジュラーブロックチェーンの登場によって、ブロックチェーンのトリレンマは解決できるようになります。モジュラーブロックチェーンとは、ブロックチェーンの主要なタスクのうち 1 つ以上を外部に任せるブロックチェーンのことです。ブロックチェーンの中核となるタスクを複数のレイヤーに分けることで、個々のレイヤーを大きく改善でき、その結果ブロックチェーン全体をよりスケーラブルで効率的にできる、という考え方です。分業のようなものだと考えるとわかりやすいでしょう。
ブロックチェーンのトリレンマとは、ブロックチェーンはセキュリティ、スケーラビリティ、分散性を同時に満たすことはできない、という考え方です。独自のブロックチェーンを構築する開発者は、3 つの性質のうち 2 つを選ばなければならないという悩ましい問題に、常に向き合うことになります。

ブロックチェーンの最大の魅力は、その分散性です。人々が法定通貨ではなく暗号資産を選ぶ理由もそこにあります。ブロックチェーンが分散化されるためには、ハードウェア要件が参加の妨げになってはならず、ネットワークの検証に必要なリソースも少なくなければなりません。
これは、検証に必要なリソースを増やすことなく、処理するトランザクション量の増加に対応できるブロックチェーンの能力のことです。 スケーラビリティの問題は、ブロックチェーンや暗号資産のマスアダプションを阻んできた問題の 1 つです。競争力を持つためには、ブロックチェーンは数百件のトランザクションをすばやく処理できる段階まで進化する必要があります。ブロックチェーンはブロックサイズを大きくすることでスケールできますが、そうするとハードウェア要件が上がってしまいます。これは分散性に影響します。
これは、敵対的な乗っ取りに抵抗する能力のことです。優れたブロックチェーンは堅牢なセキュリティを備えていて、悪意のある第三者がネットワークの脆弱性につけ込めないようになっています。 セキュリティを維持するには大量の処理能力が必要で、それが分散性やスケーラビリティに影響する可能性があります。 この問題を解決するために、サイドチェーン、ロールアップ、ステートチャネルといったソリューションが作られてきましたが、この記事ではモジュラーブロックチェーンが取るアプローチを見ていきます
コンセンサス - コンセンサスとは、特定のブロックチェーンネットワークのノードが、どのトランザクションが有効でどれが無効かを判断するために使う手続きです。コンセンサスメカニズムは、参加者がコンセンサスを行うための方法で、代表的な例として Proof-of-Work や Proof-of-Stake などがあります。コンセンサスは、トランザクションの順序付けとファイナリティも提供します。
実行 - 実行とは、ネットワークに送られたトランザクションをノードが処理する方法のことで、これによってブロックチェーンのステートが変化します。
データ可用性 - ブロックチェーンは、ブロックチェーンのステート変化が有効かどうかを検証するためのデータを保存するのに使われます。ブロック生成者は、ネットワーク上のピアがダウンロードして保存できるよう各ブロックのデータを公開しなければならず、そのデータは要求に応じて取得できる状態になっていなければなりません。モノリシックブロックチェーンはこれらの機能をすべて 1 つのレイヤーで処理しますが、モジュラーブロックチェーンは 1 つか 2 つの機能だけに特化し、残りを外部に任せます。
前述のとおり、3 つの中核機能を単独でこなそうとするブロックチェーンは、その処理能力とスループットが制限されてしまいます。一方でモジュラーチェーンは、システムをいくつかの部分に分け、それぞれを独立して動かします。 モジュラーブロックチェーンのアーキテクチャでは、実行レイヤーをコンセンサスレイヤーやデータ可用性レイヤーから独立させることができます。そのため、ノードは有効性を確認するためにすべてのトランザクションを実行するのではなく、トランザクションの処理だけに個別に集中できます。
モジュラーブロックチェーンのアーキテクチャ設計では、3 つのレイヤーが互いに独立して動作し、それらが組み合わさってモジュラースタックを形成します。

モジュラーブロックチェーンは、次のレイヤーのうち 1 つか 2 つに特化するように設計できます:
コンセンサスレイヤー - モジュラーブロックチェーンはコンセンサスだけに特化するように構成でき、その場合はトランザクションのブロックを検証・確認するためのルールとガイドラインを提供します。これにより、ネットワークのノードや参加者が確実に合意に達し、スタックにセキュリティと分散性がもたらされます。
実行レイヤー - トランザクションの処理だけを担うモジュラーブロックチェーンの典型例がロールアップです。実行レイヤーでは、ブロックチェーンはトランザクションの処理だけに集中し、セトルメントとファイナリティは別のチェーンに頼ります。
データ可用性レイヤー - データ可用性レイヤーは、トランザクションデータを保存して要求に応じて提供し、それを誰でも見られるよう公開することに特化しています。例としては Polygon Avail があります。
モジュール性の原則、つまりモジュラー設計とは、システムをモジュールと呼ばれる小さな部品に分割することです。各モジュールは独立して作成、変更、置き換えができ、ほかのモジュールや別のシステムと交換することさえできます。モジュール性は専門化に基づいています。つまり、各モジュールはごく限られた特定のタスクしか実行できない代わりに、それをうまくこなさなければなりません。これが、モジュラーブロックチェーンの土台となっている原則です。

スケーラビリティ - スケーラビリティの問題は、ブロックチェーンがすべての処理を 1 つのレイヤーで行おうとするときに生じます。ブロックチェーンのトリレンマによれば、ブロックチェーンは持ちうる 3 つの性質のうち 2 つしか持てません。しかし、タスクを複数のモジュラーブロックチェーンに分ければ、スケーラビリティを改善できるようになります。
新規 - ブロックチェーンの構築:開発者がブロックチェーンに特定のタスクを 1 つだけ実行させることに集中すれば、何でもこなすように設計されたモノリシックブロックチェーンと比べて、そのブロックチェーンを比較的早くローンチできます。開発者は実行のような特定の機能に集中できるので、セキュリティやデータ可用性を担うほかのモジュラーブロックチェーンをかんたんに組み込めます。
柔軟性 - モジュラーブロックチェーンは、ほかのチェーンの強みを活用できるため、モノリシックブロックチェーンより柔軟です。例えば、実行レイヤーは親チェーンのセキュリティの恩恵を受けられ、親チェーンは実行レイヤーのスケーラビリティを享受できます。これがロールアップと Ethereum の関係です。
セキュリティ - モノリシックブロックチェーンでは、ノードがトランザクションを記録し、トランザクションを検証するためにノード同士で合意に達する必要があるため、独自のセキュリティを確保できます。
ユーティリティ - モノリシックブロックチェーンはほかの役割に加えて実行も担うため、そのネイティブコインやトークンの価値が長期的に上がる可能性があります。
** セキュリティ** - モノリシックブロックチェーンとは違い、モジュラーブロックチェーンはセキュリティをほかのレイヤーに頼っているため、そのチェーンの効率に左右されます。セキュリティレイヤー、つまりコンセンサスとデータ可用性を担うチェーンが侵害されると、モジュラースタック全体が機能しなくなるおそれがあります。
** トークンユーティリティ** - ユースケースが限られているため、モジュラーブロックチェーンの中には、ネイティブトークンの価値を押し上げられないものもあります。データ可用性を担うレイヤーがその一例です。
** 複雑さ** - モジュラーブロックチェーンはかなり複雑な設計になっており、専門知識を持つ開発者が関わる必要があります。
硬直性 - モジュラーブロックチェーンと比べると、モノリシックブロックチェーンはそれほど柔軟ではありません。ネットワークがダウンしているときでさえ、機能を外部に任せることができないからです。
スケーラビリティ - スケーラブルでないモノリシックブロックチェーンは、ブロックサイズを大きくしたりブロックタイムを延ばしたりすることもできますが、そうするとネットワークのノードに求められるハードウェア要件が上がり、中央集権化につながります。
非効率な実行 - トランザクションの有効性を確認するために、ノードはトランザクションを再実行するので、遅延が生じます。
ロールアップ - ロールアップは、実行に特化したモジュラーブロックチェーンとして機能するように設計されています。オプティミスティックロールアップやゼロ知識ロールアップといったロールアップが実行レイヤーとなり、スマートコントラクトやトランザクションを実行します。Ethereum はセトルメントのレイヤーとして機能し、トランザクションデータはそこで公開・保存されます。
Validium - Validium もゼロ知識ロールアップと同じように、トランザクションを自身で実行してから、有効性証明と一緒に親チェーンに提出します。ただし、データを親チェーンに保存するのではなく、データ可用性委員会や Polygon Avail のようなデータ可用性ネットワークを使います。
Polygon Avail - ロールアップと Validium が実行レイヤーとして機能するのに対し、Polygon Avail はデータ可用性レイヤーとコンセンサスレイヤーとして機能するモジュラーブロックチェーンです。ここでのノードは、トランザクションデータを順序付け、保存し、要求に応じて公開するというタスクを担います。

Ethereum は当初、実行、コンセンサス、データ可用性をすべて自前で担うモノリシックブロックチェーンとして機能していました。その後ロールアップが登場し、Ethereum はコンセンサスとデータ可用性を担いながら、実行タスクの一部を L2 ソリューションに任せられるようになりました。 Ethereum は今もトランザクションを実行していますが、シャーディングを実装することで、モジュラーチェーンへの移行を進めています。 シャーディングとは、システムを分割して部分ごとに処理させる手法です。作業負荷をコンポーネント間で分けることで、効率と出力を高められます。Ethereum の場合は 64 のシャードチェーン(サブチェーン)に分割され、それらが並行して動作し、各チェーンがネットワークの活動のうち異なる割り当て分を処理します。
どちらにもメリットとデメリットがある以上、モノリシックブロックチェーンとモジュラーブロックチェーンのどちらをいつ選ぶべきか、迷うかもしれません。どちらを選ぶかは、プロジェクトのニーズを正しく理解したうえで決める必要があります。 何よりもセキュリティが重要なら、モノリシックブロックチェーンを選ぶのがよさそうです。一方で、スピードが最も重要なら、モジュラーブロックチェーンの方が良い選択肢になるでしょう。
最新の記事をメールでお届けします。