
スケーラビリティ問題¶
BitcoinやEthereumは、ブロックの生成間隔とブロックあたりの容量が小さく制限されている。
| チェーン | 処理性能の目安 |
|---|---|
| Bitcoin | 約7 TPS |
| Ethereum(L1) | 十数〜数十 TPS |
| Visa(参考) | 平均で数千 TPS |
需要に対して処理できるトランザクションが少ないため、混雑時には手数料が高騰する。2021年のNFTブームの時期には、Ethereumで1回のスワップに数十ドル以上かかることも珍しくなかった。
スケーラビリティのトリレンマ¶
ブロックの容量を増やしたり生成間隔を短くしたりすれば処理性能は上がるが、そう単純にはいかない。Vitalik Buterinは、ブロックチェーンは次の3つを同時に満たすのが難しいと指摘している(スケーラビリティのトリレンマ)。
ブロックを大きくすると、ノードに必要な帯域・ストレージ・計算能力が増え、一般の人がフルノードを運用できなくなる(分散性の低下)
ブロック間隔を短くすると、伝播が間に合わず分岐が増え、セキュリティが下がる
バリデータ数を減らせば合意は速くなるが、分散性とセキュリティが下がる
スケーリングのアプローチ¶
| アプローチ | 内容 | 例 |
|---|---|---|
| L1の性能向上 | ブロックサイズの拡大、高性能なノードを前提にする、並列実行 | Solana, Bitcoin Cash |
| シャーディング | ネットワークを複数のグループ(シャード)に分け、並列に処理する | NEAR, (Ethereumの当初の構想) |
| Layer 2 | 処理をL1の外で行い、結果や証拠だけをL1に記録する | Lightning Network, Rollup |
| マルチチェーン | 用途ごとに別のチェーンを立て、相互に接続する | Cosmos, Polkadot |
ロールアップ中心のロードマップ¶
Ethereumは当初、L1自体をシャーディングして処理能力を上げる計画だったが、2020年頃から ロールアップ中心のロードマップ(rollup-centric roadmap) に方針を転換した。
トランザクションの実行はL2(ロールアップ)に任せる
L1は合意形成と、L2のデータを安全に保管する役割(データ可用性)に特化し、そのための容量を拡張する(EIP-4844、PeerDAS、Danksharding)
モジュラー型ブロックチェーン¶
ブロックチェーンの機能を次の4つに分解し、それぞれを別のレイヤーが担うという考え方を モジュラー型(modular) と呼ぶ。1つのチェーンがすべてを担う従来の設計は モノリシック型(monolithic) と呼ばれる。
| 機能 | 内容 | ロールアップの場合の担い手 |
|---|---|---|
| 実行(Execution) | トランザクションを実行して状態を更新する | L2 |
| 決済(Settlement) | 実行結果の正しさを検証し、紛争を解決する | Ethereum L1 |
| 合意(Consensus) | トランザクションの順序に合意する | Ethereum L1 |
| データ可用性(Data Availability) | 状態を再構築するためのデータを誰でも入手できるようにする | Ethereum L1(blob)、Celestia、EigenDAなど |
相互運用性¶
チェーンやL2が増えると、資産や流動性、ユーザーが分散する。異なるチェーンの間で資産やメッセージをやりとりする 相互運用性(interoperability) が重要になる(→インターオペラビリティ)。