![見出し画像](https://assets.st-note.com/production/uploads/images/57827551/rectangle_large_type_2_320de2f8a21f2776562165c292410e89.png?width=800)
Polygon Research:イーサリアムスケーリングフレームワーク(和訳)
著:Polygon
概要
2015年7月にイーサリアムが登場して以来、ネットワーク効果を発揮するようになってからは、イーサリアムのコミュニティや世界中のコア開発者の関心はスケーリングに移りました。
しかし、スケーリングとは?
イーサリアムのトランザクションである、世界的なスーパーコンピューターが目立つようになって、ユーザーは優先的にトランザクションを通すために高いガス代を払って送信するようになりました。そのため限られたブロックスペースはすぐに埋まってしまい、このグローバルなコンピュータ上での取引を、ハイプライスかつ、時間のかかるものにしてしまった”ガス戦争”が勃発しています。
これまでのスケーリングとは?
研究者たちは、この問題を軽減するために興味深い方法をいくつも考えだしており、2017年にはPlasamのようなアプローチが注目を集めていました。今日では、 zk Rollups, Optimistic Rollups, サイドチェーン、Polygonのようなコミットチェーンは、Dappsに莫大なスケールをもたらし、数年前には不可能だった体験を可能にします。
何がベストなのか?
スケーリングに対して、何がベストなソリューションなのか評価する際には、あなたがどのような立場にいるのかという点も考慮しなければいけません。要するに、あなたはユーザーですか?それとも開発者ですか?この記事では、開発者が自分の要件に合った最適なスケーリングソリューションを選択する方法を見てみましょう。
The Ethereum Scaling Framework
開発者目線から、スケーリングの問題を見ていきます。スケーリングソリューションを選ぶ際に、どのような要素を考慮すべきでしょうか?開発者やDappの視点では、スケーリングを4つの異なる視点から見ることができます。「開発のしやすさ」「セキュリティレベル」「ユーザーエクスペリエンス」「長期的な実現性」です。
1:開発のしやすさ
開発者がソリューションを選択する際の大きなポイントは、どれだけ簡単に構築できるかという点にあります。これには、プログラミング環境や、既存のツールやインフラとの互換性などの要素が含まれます。
例えば、Polygonのようなコミットチェーンでは、100%EVM互換性を実現しており、Ethereumで使用されているコードと同じものをPolygonでも変更することなく使用することができます。つまり、イーサリアム上の既存のツールやインフラがそのままPolygonでも使えるというにも繋がります。
一方で、 ZK Rollupsを開発するには、コードの変更が必要であり、一通り揃っているツールのインフラがないため、参入障壁が非常に高くなります。
2:セキュリティレベル
プロジェクトの目的に応じて、オンチェーン機能に必要なセキュリティは異なります。例えば、DeFiプロトコルでは、数十億ドルの契約がロックされている場合があります。このような場合、zkやOptimistic Rollupsを使えば、より高い安全性が得られます。
3:ユーザーエクスペリエンス
Dappを利用するエンドユーザーの体験も、開発者が考慮すべき重要なポイントです。 どのような操作が元々サポートされているか、トランザクションに関連する確認時間などの要素が、Dappsを使用する際のエンドユーザーの体験を決定します。NFTやゲーミングアプリでは、オンチェーンコントラクトのステークが低くなる可能性があるため、サイドチェーン/コミットチェーンのようなソリューションの方が、セキュリティは、高いというほどではないですがですが、出金が早くなることでUXが向上します。
4:長期的な実現性
もう一つの基準は、ソリューションの長期的な実現可能性です。大量のユーザーに採用されたとき、そのソリューションで対処できるのかという点です。
ZKRベースのDappで膨大なトランザクション量を処理する場合、必要な証明をどのように生成するのでしょうか?並列性や再帰的な証明があったとしても、本当の意味でのスケールアップのためには、並列スレッドの通信方法やジョブの分割方法など、開発者が具体的なモデルを持っている必要があります。 計算機によるスケーリングソリューションは、ストレージの処理方法についても考える必要があります。トランザクションの量が多いと、膨大な量のデータが発生しますが、最終的にはEthereumや同様のデータ利用可能な層に保存する必要があります。
最終的には、開発者が常にエンドユーザーを念頭に置いてこの選択をすることが重要です。ユーザーが求めるのは、セキュリティなのか、使いやすさなのか、それともその両方のバランスなのか。
近い将来、Polygon SDKのような開発やツールキットによって、Dappsが要件に応じて複数のスケーリング・オプション間をスムーズに移行することが期待されます。また、Ethereum上のデータストレージに関する問題も、AvailやCelestiaのような分散型データアベイラビリティレイヤーによって緩和されるでしょう。
この記事が気に入ったらサポートをしてみませんか?