This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
オフチェーン拡張ソリューションの全解析:状態チャネル、ライトニングネットワーク及びその発展の歴史
オフチェーン拡張デプス解析
著者:エレイン・シュー、ヘッティ・ジャン、ジュン・ワン、ワロン・リン、イリウ・リン
1. スケーラビリティの必要性
ブロックチェーンの未来のビジョンは、分散化、安全性、そしてスケーラビリティです。しかし、通常、ブロックチェーンはそのうちの2つしか実現できず、これをブロックチェーンの不可能三角問題と呼びます。長年にわたり、人々は分散化と安全性を保証しながら、ブロックチェーンのスループットと取引速度を向上させる方法、すなわちスケーリング問題を解決する方法を模索してきました。これは、現在のブロックチェーンの発展過程におけるホットなトピックの一つです。
まず、ブロックチェーンの非中央集権、安全性、スケーラビリティを定義しましょう:
非中央集権: 誰でもノードとなりブロックチェーンシステムに参加でき、ノードの数が多いほど非中央集権の程度が高まり、ネットワークが少数の参加者に支配されないことを保証します。
セキュリティ: ブロックチェーンシステムのコントロールを取得するコストが高いほど、セキュリティが高まり、チェーンはより多くの参加者の攻撃に耐えることができます。
スケーラビリティ: ブロックチェーンが大量の取引を処理する能力。
ビットコインネットワークの最初の重大なハードフォークは、スケーラビリティの問題に起因しています。ビットコインのユーザー数と取引量が増えるにつれて、1MBのブロック上限のネットワークは混雑に直面し始めました。2015年から、ビットコインコミュニティはスケーラビリティの問題で意見が分かれており、一方はブロックを拡大することを支持し、もう一方はSegwitを使ってメインチェーンの構造を最適化することを支持しています。2017年8月1日、ビッグブロックを支持する側が独自に8MBのクライアントシステムを開発し運用を開始し、ビットコインは最初の重大なハードフォークを迎え、新たなコインBCHが誕生しました。
同様に、イーサリアムネットワークもネットワークのセキュリティと分散化を確保するために、一部のスケーラビリティを犠牲にし、単一のブロックに収容できる燃料費に上限を設定することで取引量を制限しています。目的は、信頼のない合意を実現し、ノードが広く分散されることを保証することです。
2017年のCryptoKitties、DeFiサマーから、その後のGameFiやNFTなどのオンチェーンアプリケーションの台頭に至るまで、市場のスループットに対する需要は増加し続けていますが、イーサリアムは毎秒15〜45件のトランザクションしか処理できません。これにより取引コストが増加し、決済時間が長くなり、大部分のDAppsは運用コストを賄うことが困難になり、全体のネットワークはユーザーにとって遅くて高価になっています。ブロックチェーンのスケーリング問題は早急に解決される必要があります。理想的なスケーリングソリューションは、分散化とセキュリティを犠牲にすることなく、可能な限りブロックチェーンネットワークの取引速度とスループットを向上させることです。
2. スケーリングソリューションの種類
私たちは「主ネットを一層変更するかどうか」を基準として、スケーリングプランをオンチェーン拡張とオフチェーン拡張の二つの大きなカテゴリに分けています。
2.1 オンチェーンスケーリング
コアコンセプト:主ネットプロトコルの一層を変更することでスケーラビリティ効果を達成するソリューション、現在の主要なソリューションはシャーディングです。
オンチェーンのスケーリングにはさまざまなソリューションがありますが、この記事では詳しくは説明せず、2つの例を簡単に挙げます:
方案一はブロックスペースを拡大し、各ブロックにパッケージされるトランザクションの数を増やすことですが、これにより高性能ノードデバイスに対する要件が高まり、ノードの参加のハードルが上がり、「分散化」の程度が低下します。
方案二は分割で、ブロックチェーンの帳簿をいくつかの部分に分け、異なる分割が異なる記録を担当し、並行計算により複数の取引を同時に処理できます。これにより、ノードの計算負荷と参加のハードルを下げ、取引処理速度と分散化の程度を向上させますが、全体的なネットワークの"安全性"は低下します。
メインネットプロトコルの変更は、予測不可能な悪影響を引き起こす可能性があります。なぜなら、基盤となるわずかなセキュリティの脆弱性が、ネットワーク全体の安全性を深刻に脅かすからです。例えば、2018年のZcashのインフレ脆弱性事件: Zcashのコードはビットコイン0.11.2バージョンを基に修正されたもので、2018年にその基盤コードに高リスクの脆弱性が存在し、無限にトークンを発行できることが発見されました。チームは8ヶ月間秘密裏に修正作業を行い、修正後にこの事件を公表しました。
2.2 オフチェーン拡張
コアコンセプト:既存のレイヤー1メインネットプロトコルを変更せずにスケーリングソリューション。
オフチェーン拡張ソリューションはLayer2とその他のソリューションに細分化できます:
! 10,000語の詳細な調査レポート:オフチェーン拡張の包括的な分析
3. オフチェーン拡張の方案
3.1 ステートチャネル
3.1.1 まとめ
ステートチャネルは、チャネルが開いている、閉じている、または紛争が解決される場合にのみ、ユーザーがメインネットと相互作用する必要があることを規定しており、ユーザー間の相互作用をオフチェーンで行うことで、ユーザーの取引の時間とコストを削減し、取引回数の制限をなくすことを実現しています。
ステートチャンネルは、シンプルなP2Pプロトコルであり、「ターンベースのアプリケーション」に適しています。例えば、2人のチェスゲームです。各チャンネルは、マルチシグスマートコントラクトによって管理されており、このコントラクトはチャンネルに預けられた資産を制御し、状態の更新を検証し、参加者間の争いを仲裁します(。参加者は、ブロックチェーンネットワークにコントラクトをデプロイした後、資金を預けてロックし、双方が署名確認した後にチャンネルが正式に開通します。チャンネルは、参加者間で無制限のオフチェーン無料取引を可能にします)。これは、彼らの送金純資産が預けられたトークンの総額を超えない限りです(。参加者は交互に状態の更新を相手に送信し、相手の署名確認を待ちます。一旦相手が署名確認をすれば、この状態の更新は完了と見なされます。通常、双方が合意した状態の更新はメインネットにアップロードされず、争いが発生した場合やチャンネルを閉じる際にのみメインネットの確認を依存します。チャンネルを閉じる必要がある場合、いずれかの参加者がメインネットにトランザクションリクエストを提出できます。もし退出リクエストが全員一致の署名承認を得た場合、チェーン上で即座に実行されます。つまり、スマートコントラクトはチャンネルの最終状態に基づいて各参加者の残高を分配し、ロックされた残りの資金を配布します。もし他の参加者が署名承認をしなかった場合、全員は「チャレンジ期間」が終了するまで残りの資金を受け取ることができません。
以上のように、ステートチャネル方案はメインネットの計算量を大幅に削減し、取引速度を向上させ、取引コストを低下させることができます。
)# 3.1.2 タイムライン
2015/02、ジョセフ・プーンとセイディアス・ドライジャがライトニングネットワークのホワイトペーパー草案を発表しました。
2015/11、ジェフ・コールマンが初めてステートチャンネルの概念を体系的にまとめ、ビットコインのペイメントチャンネルはステートチャンネルの概念の一つのサブケースであると提案した。
2016/01、ジョセフ・プーンとサディウス・ドライジャが正式にホワイトペーパー『The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments』を発表し、ビットコインのライトニングネットワークのスケーラビリティソリューションであるPayment Channel###支払いチャネル(を提案しました。このソリューションはビットコインネットワーク上の送金支払いを処理するためのものです。
2017/11、Payment Channelフレームワークに基づくState Channelの最初のSpritesデザイン仕様が提案されました。
2018/06年、Counterfactualは、Generalized State Channelsの非常に詳細なデザインを発表しました。これは、State Channelsに完全に関連する最初のものです。
2018年10月、Generalised State Channel Networksの記事では、State Channel NetworksとVirtual Channelsの概念が提案されました。
2019/02、ステートチャネルの概念がN-Party Channelsに拡張され、Nitroはこのアイデアに基づいて構築された最初のプロトコルです。
2019/10、Pisaはすべての参加者が常にオンラインである必要がある問題を解決するために、Watchtowersの概念を拡張しました。
2020/03,Hydraはファストアイソモーフィックチャネルを提案しました。
)# 3.1.3 技術原則
図1は、従来のオンチェーンのワークフローを示しています:アリスとボブがメインネットにデプロイされたスマートコントラクトと相互作用し、ユーザーがチェーン上にトランザクションを送信することでスマートコントラクトの状態を変更します。欠点は、上記で議論した時間とコストの問題を引き起こすことです。
! [10,000語の詳細な調査レポート:オフチェーン拡張の包括的な分析]###https://img-cdn.gateio.im/webp-social/moments-087d35594a04d33375b8199b93eb355e.webp(
図2は、ほとんどの状態チャネルプロトコルが従う一般的なワークフローを示しています: 楽観的な状況では、アリスとボブは以前と同じ操作を実行する必要がありますが、今回は状態チャネルを使用し、オンチェーン契約との相互作用を行いません。
最初のステップとして、アリスとボブは個人EOAから資金をオフチェーン契約アドレス)に入金し、1,2(を相互にやり取りします。これらの資金は契約内にロックされ、チャンネルが閉じられるまでユーザーに残高が返されることはありません。二人が署名を確認した後、二人の間のステートチャンネルが正式に開通します。
第二歩、アリスとボブはこのチャンネルを通じて理論的にはオフチェーンで無制限の取引を行うことができます)青い破線(、参加者は暗号化された署名メッセージを通じて互いに通信し)、ブロックチェーンネットワークとは通信しません(。両方のユーザーは各取引に署名する必要があり、二重支払いの悪用を防ぎます。これらのメッセージを通じて、彼らは自分のアカウントの状態更新を提案し、相手が提案した状態更新を受け入れます。
第三ステップ、もしアリスがボブとの取引を終了するためにチャンネルを閉じたい場合、アリスは契約に自分のアカウントの最終状態)インタラクション3(を提出する必要があります。もしボブが署名を承認すれば、契約は最終状態に基づいてロックされた資金を対応するユーザー)インタラクション4、5(に返還します。もしボブが署名に応答しない場合、契約はチャレンジ期間終了後にロックされた資金を対応するユーザーに返還します。
! [10,000語の詳細な調査レポート:オフチェーンスケーリングの包括的な分析])https://img-cdn.gateio.im/webp-social/moments-ead28de03be9fc22dcfe3f679ee36bc5.webp(
図3は、悲観的な状況下でのステートチャネルの作業フローを示しています: 最初に、2人の参加者が資金)を預け入れ、インタラクション1, 2(を行い、その後、ステート更新)を交換し始めます。ある時点で、ボブが彼のターンでアリスから送られたステート更新の署名(に応答しないと仮定します。この時、アリスは契約に対して自分の最後の有効なステートを提出することで挑戦を開始できます)インタラクション4(。この有効なステートには、ボブの以前の署名も含まれており、最後の取引はボブの承認を受けたことを証明します。最終的なステートもボブの確認を受けたことになります。その後、契約はボブが次のステートを契約に提出することで応答することを一定期間許可します; もしボブが応答すれば、2人はステートチャネル内で取引を続けることができます; もしボブがその期間内に応答しなければ、契約は自動的にステートチャネルを閉じ、資金をアリスに返還します)インタラクション5(。
! [10,000語の詳細な調査レポート:オフチェーンスケーリングの包括的な分析])https://img-cdn.gateio.im/webp-social/moments-ad088ac016d75b1ae0b0eda699e74709.webp(
)#3.1.4長所と短所
価値:
短所:
(# 3.1.5 アプリケーション
)## ビットコイン・ライトニングネットワーク
概要:
ライトニングネットワークはビットコインネットワークの小額決済チャネルであり、その技術の進化は次の通りです: 2/2マルチシグによって一方向決済チャネルを構築し、RSMC###(Revocable Sequence Maturity Contract###)を追加することで双方向決済チャネルを構築し、さらにHTLC###(Hash Time Lock Contract()を追加することで決済チャネルを拡張して複数人での決済が可能になり、最終的に決済ネットワークであるライトニングネットワークを構築します。 オフチェーンの小額決済チャネルを通じて、中間者を介して取引ネットワークを構成することで、ビットコインネットワークのスケーラビリティの問題を解決することができます。 ライトニングネットワークの全体的な使用は、"預金)チャネルを構築(→ライトニングネットワーク取引)チャネル状態を更新(→返金/決済)チャネルを終了("という流れに従います; 理論的には、ライトニングネットワークは毎秒100万件の取引を処理できます。
タイムライン: