スケーラビリティ:Web3の落とし穴をあらためて考えるー『Web3の未解決問題』から学ぶ
ビットコインをはじめ、仮想通貨の勉強、ブロックチェーンの勉強をし始めると「スケーラビリティ問題」というワードに遭遇します。スケーラビリティについて、本書から勉強してみましょう!参考文献にもこの問題についての記事なども追加していますので、ぜひよんでみてください😊
by Project LUCK 飯野
↓↓↓目次↓↓↓
そもそもスケーラビリティ問題とは?
スケーラビリティとは?
スケーラビリティとは、システムが拡張される際に、その性能や効率をどれだけ維持または向上させることができるかを示す概念です。特にブロックチェーンにおいては、トランザクション処理能力やデータの同期速度が重要となります。
ブロックチェーンの基本
ブロックチェーンは、複数のブロックが連なったデジタル台帳です。各ブロックには複数のトランザクションが含まれ、それらが一つのチェーンとして結びつけられます。ビットコインのようなパーミッションレスブロックチェーンでは、誰でもネットワークに参加・離脱が可能です。
パーミッションレスブロックチェーンの特性
パーミッションレスブロックチェーンは、参加者が自由に出入りできるため、中央管理者が存在しないことが特徴です。このため、セキュリティや信頼性が数学的に保証されています。
スケーラビリティ問題の概要
パーミッションレスブロックチェーンでは、処理能力を向上させるためのスケーラビリティ問題が存在します。例えば、ビットコインは1秒あたり約7トランザクションしか処理できません。この制限は、ブロックサイズやトランザクションの同期速度によるものです。
ビットコインのスケーラビリティの制約
ビットコインでは、10分ごとに1MBのブロックが生成されます。1MBのブロックには限られた数のトランザクションしか含められないため、処理能力が制約されます。また、全てのノードがこのブロックを同期する必要があるため、データサイズを単純に増やすことはできません。
スケーラビリティとセキュリティのトレードオフ
スケーラビリティを向上させるためにブロックサイズを大きくすると、データの同期が困難になり、結果としてネットワークのセキュリティが低下する可能性があります。例えば、巨大なブロックサイズでは、一部のノードがデータを同期できず、ネットワーク全体の安全性が損なわれます。
【本題】
パーミッションレスブロックチェーンのスケーラビリティ問題
パーミッションレスブロックチェーンは、誰でも参加・離脱が可能なため、数学的に信頼性を実現する。しかし、その性質が原因でスケーラビリティ(処理性能)の向上が難しい。この問題を解決するために性能を向上させると、セキュリティ問題が発生したり、信頼できる機関が必要になったりするため、パーミッションレスブロックチェーンの良さが失われる。
オンチェーンスケーリング
オンチェーンスケーリングは、ブロックチェーンのプロトコルを変更して性能を向上させる手法である。代表的な方法としては、以下の二つがある。
ブロックサイズの変更: ブロックサイズを増やすことで処理性能を向上させる。しかし、単純にブロックサイズを拡張すると、ブロックの同期範囲が狭まり、分散化のメリットが失われる。
シャーディング: 分散データベースの技術を応用し、ノードを複数のグループに分け、それぞれのグループが異なるトランザクションを処理することで、全体の処理性能を向上させる。シャーディングには攻撃耐性などのセキュリティ問題が指摘されている。
オフチェーンスケーリング
オフチェーンスケーリングは、ブロックチェーン外でトランザクションを処理し、一定の単位でブロックチェーンに書き戻す方法である。代表的な手法として以下の三つがある。
Lightning NetworkとPayment Channel: 特定のユーザー間で一定期間の支払い処理をチェーン外で行い、結果を後でブロックチェーンに書き戻す。これにより、トランザクション処理の性能を向上させる。ただし、常にインターネットに接続している必要があり、通信異常を監視するWatchtowerが必要で、セキュリティモデルには課題がある。
サイドチェーン: メインチェーンから情報を外部の別のチェーンに書き出し、処理を行った後に元のチェーンに書き戻す。Rollupはその一例で、特にEthereumで注目されているが、データの信頼性の問題がある。
Rollup: RollupにはOptimistic Rollupとzk-Rollupがある。Optimistic Rollupは問題があるデータが存在する場合に調停を行い、zk-Rollupはゼロ知識証明でデータの正しさを検証する。どちらもそれぞれのセキュリティ問題がある。
ブロックチェーンのセキュリティ問題
ブロックチェーンはセキュリティとスケーラビリティの両立が難しい。現時点で提案されているスケーラビリティ向上策は、何らかのセキュリティ問題を引き起こすか、信頼できる機関を追加で必要とするため、セキュリティを保ちながら性能向上を実現する方法はまだ見つかっていない。
ちなみに…今回の内容については、「トリレンマ」という概念に関わるものです。簡単にいうと以下のような概要です。
トリレンマ(Trilemma)の概要
トリレンマとは、3つの望ましいゴールがあり、それらをすべて同時に達成することが不可能な状況を指します。特に以下の3つの要素がトリレンマの中心として扱われます。
セキュリティ(Security): ネットワークが外部の攻撃から守られ、データや取引の安全性が確保されること。
分散化(Decentralization): ネットワークが中央集権的な管理者に依存せず、多数の参加者によって運営されること。
スケーラビリティ(Scalability): ネットワークが大規模な取引量やユーザー数を効率的に処理できること。
これら3つのゴールはすべて重要ですが、同時に完全に達成するのは困難とされています。しかし、一方を優先すると他方が犠牲になる可能性があります。例えば、高いセキュリティと分散化を実現すると、スケーラビリティが低下する可能性があります。このような状況が「トリレンマ」として表現されます。
参考文献
ブロックチェーンのスケーラビリティ問題(処理性能の問題)
ブロックチェーンのスケーラビリティ(スケーリング)問題とは? 仮想通貨ごとに解説
On the Security and Performance of Blockchain Sharding
Mass Exit Attacks on the Lightning Network
この記事が気に入ったらサポートをしてみませんか?