暗号資産におけるState Channelとは?
State Channelは、2人以上の参加者が共有するブロックチェーン状態を、プライベートかつ迅速にオフチェーンで更新し、最終結果をオンチェーンで決済できるオフチェーンのスケーリングシステムです。暗号資産においてState Channelは通常、ベースブロックチェーン上のスマートコントラクトまたはマルチシグ構造に資産またはアプリケーション状態をロックすることで開設されます。チャネル開設後、参加者はすべてのアクションをブロックチェーンに送信する代わりに、署名済みメッセージをオフチェーンで交換します。署名済みメッセージはそれぞれ、より新しいバージョンのチャネル状態を表します。参加者は完了後、チャネルを閉じて、最新の合意済み状態を決済のためにブロックチェーンへ送信できます。公式のEthereum state channelsドキュメントでは、State Channelにより参加者がオフチェーンで取引し、Ethereum Mainnetで最終決済できると説明されています。
このためState Channelは、決済、ゲーム、取引インタラクション、マイクロペイメント、ストリーミング決済、既知の当事者間で繰り返されるトランザクションに役立ちます。通常、ブロックチェーントランザクションが必要なのはチャネルの開設と閉鎖のみであるため、オンチェーンの混雑を減らせます。また、多数のオフチェーン更新では各更新ごとにガス代を支払う必要がないため、手数料も削減できます。簡単に言えば、State Channelは、ユーザーが残高またはアプリケーション状態を何度も更新し、最終結果だけをブロックチェーンに戻すプライベートなオフチェーン空間です。State Channelが重要な理由
State Channelが重要なのは、パブリックブロックチェーンのブロックスペースに限りがあるためです。すべての少額決済、ゲーム内の操作、アプリ更新をオンチェーンで送信する必要がある場合、ネットワーク混雑時にはユーザーが高い手数料や遅い承認時間に直面する可能性があります。State Channelは、最終決済および紛争解決レイヤーとしてブロックチェーンを使用しながら、繰り返されるインタラクションをオフチェーンへ移します。参加者は各更新後にブロック承認を待つ必要がないため、暗号資産アプリケーションをより高速に感じられる場合があります。また、各送金でオンチェーン手数料を支払う必要がないため、少額決済をより実用的にできます。公式のEthereumスケーリングドキュメントでは、State Channelはマルチシグコントラクトを使用して参加者が迅速かつ自由にオフチェーン取引を行い、最終決済をオンチェーンで行うスケーリング手法と説明されています。
この設計は、オンチェーンの負荷を軽減しながら、ブロックチェーンのセキュリティの一部を維持するため重要です。参加者は、残高を正確に更新するために中央集権的な運営者を信頼する必要がありません。署名済みメッセージと、古い状態または無効な状態にオンチェーンで異議を申し立てられる機能に依存します。したがってState Channelは、暗号資産における初期かつ重要なLayer 2スケーリングの考え方の一つです。State Channelの仕組み
State Channelには通常、開設、更新、閉鎖という3つの段階があります。開設段階では、参加者がコントラクトまたはマルチシグ出力に資産をロックする、あるいはアプリケーション状態を初期化するオンチェーントランザクションを作成します。この開設トランザクションがチャネルのルールを定義します。参加者、残高、異議申立期間、署名要件、タイムアウトルール、退出条件を定義する場合があります。更新段階では、参加者は署名済みのオフチェーンメッセージを交換します。各メッセージは、新しい残高配分やゲームの局面など、新しい状態を表します。参加者は紛争発生時に使用する必要がある可能性があるため、最新の署名済み状態を保持します。閉鎖段階では、参加者がチャネルをオンチェーンで決済します。全員が協力する場合、最新の合意済み状態を送信して速やかに閉鎖できます。一方の参加者が不正を試みる、または連絡不能になる場合、他方の参加者は紛争プロセスでより新しい有効な状態を送信できます。State ChannelとPayment Channelの違い
Payment Channelは、決済のみに焦点を当てたState Channelの一種です。State Channelは、残高だけでなく、サポート対象の任意のアプリケーション状態を更新できるため、より広い概念です。例えばPayment Channelでは、AliceとBobが最終残高を決済する前に、何度も価値を相互に送ることができます。State Channelは、チェス、ターン制ゲーム、マーケットプレイスでの操作、サブスクリプション、繰り返し行うサービス契約もサポートできます。Lightning Networkドキュメントでは、マイクロペイメントチャネル、Payment Channel、またはTransaction Channelとも呼ばれる決済チャネルのネットワークを通じてトランザクションを送信する分散型システムが説明されています。
Payment Channelは、通常その状態が誰がどれだけの価値を所有するかだけであるため、理解しやすいものです。一般的なState Channelは、状態にアプリケーションロジックを含められるため、より柔軟です。この柔軟性により、安全な設計はより難しくなります。各参加者は、各オフチェーン更新を検証し、必要に応じて正しい最終状態を強制できなければなりません。違いを覚える最も簡単な方法は、すべてのPayment ChannelはState Channelですが、すべてのState ChannelがPayment Channelに限られるわけではないということです。State Channelとロールアップの違い
State ChannelとロールアップはどちらもLayer 2スケーリング手法ですが、仕組みは大きく異なります。State Channelは通常、既知の参加者間で繰り返されるインタラクションに最適です。ロールアップは通常、多くのユーザーが互いに直接チャネルを開かずに参加できるオープンなアプリケーションに適しています。State Channelでは、ほとんどの更新は参加者間で非公開に行われ、チャネルが閉鎖または異議申立てされない限りベースチェーンに投稿されません。ロールアップでは、多数のトランザクションがベースレイヤー外で実行されますが、ロールアップの設計に従ってトランザクションデータまたは証明がベースレイヤーへ投稿されます。公式のEthereum zero-knowledge rollupsドキュメントでは、zk-rollupは状態遷移が正しいことを検証するために有効性証明を送信すると説明されています。
State Channelは一般に参加者間で非常に高速なインタラクションを提供しますが、絶えず変化する多数のユーザーを含む広範なパブリックアプリケーションには不便です。ロールアップはより一般的なスマートコントラクト活動をサポートできますが、シーケンサー、ブリッジ遅延、データコスト、証明システムが関わる場合があります。State Channelは、既知のユーザー間のプライベートレーンのようなものです。ロールアップは、多数のユーザーをまとめて処理する別個の実行環境のようなものです。State Channelとサイドチェーンの違い
サイドチェーンは、別のブロックチェーンに並行して稼働する独立したブロックチェーンです。State Channelは独立したブロックチェーンではありません。ベースチェーンによって強制可能な、参加者間のオフチェーン合意です。サイドチェーンには通常、独自のバリデーター、コンセンサスルール、ブロック、セキュリティ前提があります。State Channelは、最終決済と紛争解決についてより直接的にベースチェーンに依存します。この違いは、サイドチェーンのユーザーが通常、サイドチェーンのバリデーターセットまたはブリッジ設計を信頼するため重要です。State Channelのユーザーは、暗号学的署名、ロックされた資金、無効な状態に異議を申し立てる能力に依存します。サイドチェーンは、多数のユーザーとアプリケーションをよりオープンにサポートできます。State Channelは通常、特定の参加者および特定のアプリケーションロジックにより限定されます。最適なスケーリング手段は、ユースケース、信頼モデル、ユーザー体験、セキュリティ要件によって異なります。State Channelの開設
State Channelの開設にはオンチェーントランザクションが必要です。このトランザクションでは通常、資金をロックするか、コントラクトに初期状態をコミットします。参加者は、初期残高、ルール、チャネルパラメーターに合意する必要があります。アカウントベースのスマートコントラクトチェーンでは、チャネルをスマートコントラクトで管理できます。UTXOベースのチェーンでは、Payment Channelをマルチシグ出力にアンカーできます。開設トランザクションは、チャネルのセキュリティ基盤を作ります。開設状態が誤っている場合、その後のオフチェーン更新も誤る可能性があります。ユーザーはチャネルを開く前に、ロック額、相手方、タイムアウトルール、閉鎖条件を確認してください。チャネル開設にはオンチェーン手数料がかかる場合がありますが、このコストはその後の多数のオフチェーン更新に分散できます。このためState Channelは、参加者が何度もやり取りすると予想される場合に最も有用です。State Channelの更新
State Channelの更新はオフチェーンで行われます。参加者は最新の合意済み状態を表すメッセージに署名します。決済の更新では、参加者間の残高配分が変更される場合があります。ゲームの更新では、プレイヤーの位置、スコア、ターン順が変更される場合があります。サービスの更新では、どれだけの作業が提供され、支払われたかを記録する場合があります。各新しい更新では、古い更新が送信に使えない、または異議を申し立てやすい状態にすべきです。通常はシーケンス番号、ノンス、タイムスタンプ、ペナルティ、異議申立てルールで処理します。参加者は最新の署名済み更新を安全に保存してください。相手方が後で古い状態を送信した場合、正直な参加者はそれに異議を申し立てるために新しい状態を必要とします。チャネル更新は、決済または異議申立てまでブロック承認を必要としないため高速です。State Channelの閉鎖
State Channelを閉鎖すると、最終結果がオンチェーンに戻されます。協調閉鎖は、必要な参加者全員が最終状態に合意し、共同で送信する場合に発生します。協調閉鎖は通常、異議申立てを伴う閉鎖より高速で低コストです。一方的閉鎖は、1人の参加者が他者の完全な協力なしにチャネルを閉鎖する場合に発生します。これにより異議申立期間が開始する場合があります。異議申立期間中に、閉鎖する参加者が古い状態を送信していた場合、他の参加者はより新しい有効な状態を送信できます。タイムアウト前に有効な異議申立てがなければ、送信された状態を確定できます。閉鎖ロジックはState Channelのセキュリティにおいて最も重要な部分の一つです。異議申立てプロセスが短すぎると、正直なユーザーが応答する十分な時間を持てない可能性があります。長すぎると、ユーザーが望むより長く資金がロックされる場合があります。異議申立期間
異議申立期間とは、参加者が提案されたチャネル閉鎖に異議を申し立てられる期間です。異議申立期間は、古い状態または不正な状態を決済しようとする相手方からユーザーを守ります。例えば、相手方は自分がより多くの資金を保有していた以前の残高でチャネルを閉鎖しようとするかもしれません。正直なユーザーがより新しい署名済み状態を持っていれば、異議申立期間中にそれを送信できます。設計に応じて、コントラクトはより新しい状態を認識し、古い状態を拒否またはペナルティの対象にできます。異議申立期間にはトレードオフがあります。期間が長いほど、正直なユーザーは応答により多くの時間を使えます。期間が長いほど、資金の最終的な引き出しも遅れます。期間が短いと速度は向上しますが、ユーザーまたはwatchtowerはチャネルをより厳密に監視する必要があります。適切な異議申立期間は、チェーン、アプリケーション、ユーザー行動、脅威モデルにより異なります。Watchtower
watchtowerは、ユーザーに代わって不正なチャネル閉鎖をブロックチェーン上で監視するサービスまたはシステムです。watchtowerは、ユーザーがオフラインになる可能性がある場合に特に重要です。ユーザーが異議申立期間中にオフラインの場合、古い状態に異議を申し立てる機会を逃す可能性があります。watchtowerはチャネル閉鎖の試行を監視し、必要に応じて正しいデータで応答できます。Lightning payment channelsドキュメントでは、Payment Channelはピア間のマルチシグコントラクトであり、ブロックチェーン上で決済できると説明されています。
決済には古い状態のリスクが伴う可能性があるため、監視はチャネルの安全性において重要です。watchtowerはユーザーの安全性を高められますが、プライバシーと信頼に関する考慮事項ももたらします。ユーザーは、過度のチャネル情報をwatchtowerに開示したくない場合があります。優れたwatchtower設計では、有用な監視を提供しながら信頼を最小化すべきです。ユーザーは、利用するウォレットに監視機能が含まれるか、別のサービスが必要かを理解してください。マルチシグコントラクト
多くのState Channelでは、資金または状態をロックするためにマルチシグ構造が使用されます。マルチシグの設定では、通常の条件下で資金を移動するために複数の署名が必要です。これにより、チャネルが通常どおり動作している間に一方の参加者が単独で資金を盗むことを防ぎます。2者間Payment Channelでは、両参加者が共有の取り決めを通じて、当初はロック済み出力またはコントラクト状態を管理する場合があります。オフチェーンの署名済み更新は、チャネルが閉鎖された場合の資金配分を定義します。マルチシグは、チャネル資産の共有保管庫を作るため有用です。その後、チャネルコントラクトまたはスクリプトが、その保管庫をどのように決済できるかを定義します。マルチシグだけですべての問題を解決できるわけではありません。チャネルには、更新ルール、異議申立てルール、タイムアウトルール、安全なウォレット動作が依然として必要です。マルチシグはロック機構であり、チャネルプロトコルは完全なオフチェーン決済システムです。Payment ChannelとLightning Network
Lightning Networkは、暗号資産において最もよく知られたPayment Channelネットワークです。公式のLightning Network概要では、BitcoinブロックチェーンにアンカーされたPayment Channelを使用し、ほぼ即時かつ低コストの決済を実現するピアツーピア決済ネットワークと説明されています。
Lightningは、個別のPayment Channelをより広いネットワークに接続する方法を示しています。決済ルーティングによって接続済みチャネルをまたぐパスを見つけられれば、ユーザーはすべての送金先候補と直接チャネルを持つ必要がありません。決済は、仲介者を信頼する必要性を減らす暗号学的条件を使用して、複数のチャネルを経由できます。このネットワークモデルは、孤立した2者間チャネルより柔軟です。ただし、ルーティングには流動性、信頼性、プライバシー、運用上の課題が伴います。決済を成功させるには、チャネルに正しい方向の十分な流動性が必要です。ノードはオンライン状態を維持するか、補助インフラを使用する必要がある場合があります。LightningはPayment Channelの例であり、より広いState Channelの概念は決済以外にも適用できます。Virtual Channel
Virtual Channelとは、最終参加者間で新しい直接的なオンチェーンチャネルを開設せずに、1つ以上の仲介チャネルを通じて作成されるチャネルです。ユーザーがすべての相手方とオンチェーンチャネルを開く必要がなくなる場合があるため、Virtual Channelは使いやすさを高められます。State Channelsプロジェクトサイトでは、State Channelを即時のピアツーピアインタラクションを可能にするEthereumのスケーラビリティ技術として説明し、State Channelネットワークを作る方法としてVirtual Channelを紹介しています。
Virtual Channelは、多数のオフチェーン関係を支えるために必要なオンチェーントランザクション数を削減できます。また、既存のチャネルパスを通じてユーザーが接続できるため、ネットワーク効果を高められます。ただし、Virtual Channelは複雑性を増します。ルーティング、担保管理、参加者の調整、複数の関係にまたがる正しい決済ロジックが必要です。設計が不十分な場合、Virtual Channelは流動性のロックや紛争の複雑化をもたらす可能性があります。孤立したチャネルは大規模利用には制限が大きすぎる可能性があるため、Virtual Channelは重要な研究・開発の方向性です。目的は、すべてのユーザーの組み合わせに直接チャネルを開くことを強いずに、オフチェーンのインタラクションを接続されたものとして感じられるようにすることです。State Channelネットワーク
State Channelネットワークは、多数の個別チャネルを接続し、参加者が他のすべての参加者と直接チャネルを開かずにやり取りできるようにします。Payment Channelネットワークは、接続された流動性パスを通じて価値をルーティングできるため、最も単純な例です。一般的なState Channelネットワークは、状態が決済残高より複雑なアプリケーションロジックを表す可能性があるため、より困難です。ネットワークには、ルーティング、流動性、担保、タイムアウト、紛争の調整が必要です。また、ウォレットとアプリケーションがチャネル更新を安全に理解できるよう、標準も必要です。チャネルネットワークは、ベースチェーンを決済レイヤーとして維持しながら、多数のオフチェーンインタラクションを可能にするため、スケーラビリティを向上させられます。また、ユーザーがすべてのインタラクションで新しいオンチェーンコントラクトを作成する必要がなくなるため、ユーザー体験を改善できます。主な課題は、チャネルにはオンラインでの調整とロックされた資本が必要なことです。流動性が乏しいネットワークでは、決済またはインタラクションを確実にルーティングできない可能性があります。監視が不十分なネットワークでは、ユーザーが古い状態を使った攻撃にさらされる可能性があります。State Channelとスマートコントラクト
スマートコントラクトはState Channelをより柔軟にします。スマートコントラクトは、チャネルの開設、更新の検証、紛争プロセス、決済ルールを定義できます。また、紛争がチェーンに持ち込まれた場合、アプリケーション固有のルールを強制できます。例えば、ゲームチャネルのコントラクトは署名済みの操作を検証し、参加者間で意見が一致しない場合に勝者を決定できます。Payment Channelコントラクトは署名済みの残高更新を検証し、それに応じて資金を分配できます。取引チャネルのコントラクトは、多数のオフチェーン取引後に最終残高を決済できます。スマートコントラクトチャネルは、単純な決済を超える複雑な状態をサポートできるため強力です。一方で、コントラクトのバグにより資金がロックされる、不適切な退出が可能になる、紛争が失敗するリスクがあります。開発者はチャネルコントラクトを慎重に設計し、あらゆるエッジケースをテストする必要があります。オンチェーンコントラクトは、協力が失敗した場合にオフチェーン合意を強制する裁定者です。State Channelとガス代
State Channelは、繰り返し行う更新をオフチェーンに移すことでガスコストを削減できます。チャネルの開設にはガス代がかかります。チャネルの閉鎖にはガス代がかかります。チャネルへの異議申立てにもガス代がかかります。ただし、開設から閉鎖までの間に数千件のオフチェーン更新を行っても、各更新にガス代を支払う必要はありません。このためState Channelは、ユーザーが繰り返しやり取りする場合に最も効率的です。1回限りの決済では、チャネル開設コストに見合わない場合があります。長期間にわたる決済ストリームでは、チャネル経済の恩恵を大きく受ける可能性があります。ガス代の節約は、チャネルの使用頻度、オンチェーントランザクションのコスト、紛争コストによって異なります。ユーザーはState Channelを選ぶ前に、チャネル設定コストと予想される活動を比較してください。State Channelとレイテンシー
レイテンシーとは、アクションが完了したとユーザーが感じるまでの待ち時間を指します。State Channelではオフチェーン更新をほぼ即時に交換できるため、レイテンシーを減らせます。参加者は各更新後にブロックへの包含を待つ必要がありません。これにより、ゲーム、マイクロペイメント、リアルタイムサービス、高頻度のインタラクションを改善できる可能性があります。ただし、最終決済は依然としてベースチェーンに依存します。チャネルをオンチェーンで閉鎖する必要がある場合、ユーザーはトランザクション承認と、場合によっては異議申立期間を待つことになります。つまり、State Channelは高速なオフチェーン応答性を提供しますが、常に即時の最終出金を提供するわけではありません。ユーザー体験は、参加者が協力するかどうかに依存します。協調的なチャネルは非常に高速に感じられる場合があります。紛争のあるチャネルは、ブロックチェーンの決済プロセスに戻るため、より遅く感じられる場合があります。State Channelとプライバシー
State Channelは、オフチェーン更新がブロックチェーンに公開されないため、プライバシーを改善できる可能性があります。観察者はチャネルの開設・閉鎖トランザクションを確認できる場合がありますが、すべての中間更新を確認できるとは限りません。これは、完全に公開したくない決済、ゲーム、取引戦略、ビジネス上のインタラクションに有用です。ただし、State Channelは完全なプライバシーを保証しません。開設トランザクションで参加者とロック額が明らかになる可能性があります。閉鎖トランザクションでは最終状態が明らかになる可能性があります。チャネルネットワークのルーティングでは、仲介者に情報が明らかになる場合があります。watchtowerまたはサービスプロバイダーは、実装に応じてメタデータを知る場合があります。プライバシーは、ウォレットの動作、ネットワークルーティング、アドレス再利用、タイミングパターンにも依存します。State Channelはオンチェーンのデータ露出を減らせますが、デフォルトで完全な匿名化システムになるわけではありません。State Channelと資本効率
資本効率はState Channelにおける最大の課題の一つです。参加者は多くの場合、利用前に資金をチャネルにロックする必要があります。ロックされた資金は、チャネルが閉鎖またはリバランスされるまで他の用途に使えません。流動性が誤った側にあるPayment Channelでは、チャネルに総容量があっても決済の送信に失敗する可能性があります。このため、チャネル流動性の管理が重要です。ユーザーはチャネルのリバランス、新しいチャネルの開設、またはルーティング流動性への依存が必要になる場合があります。大きな担保預託を必要とするアプリケーションは、ユーザーが頻繁に利用しない場合、魅力が低くなる可能性があります。State Channelは繰り返し活動には極めて効率的になり得ますが、まれなインタラクションには非効率な場合があります。チャネルの経済的価値は、ロック資本に対してどれほどの活動を支えるかに依存します。資本のロックは、多くの汎用スマートコントラクトアプリケーションでロールアップがより普及した理由の一つです。State Channelと相手方の可用性
State Channelでは通常、オフチェーン更新のために参加者が利用可能である必要があります。相手方がオフラインの場合、チャネルは通常どおり進行できない可能性があります。これは、受取人がオンラインでなくても送信者がネットワークにブロードキャストできる通常のオンチェーントランザクションとは異なります。一部のチャネル設計では、相手方がいなくなった場合に限定的な進行または一方的な退出を認めています。ただし、最高のユーザー体験には通常、双方の協力が必要です。可用性は紛争時にも重要です。誰かが古い状態を送信した場合、ユーザーは異議申立期間内に応答できなければなりません。watchtowerはこの問題を支援できますが、すべての運用リスクをなくすわけではありません。ユーザーはウォレットが監視を自動的に処理するか理解してください。State Channelが高速なのはオフチェーンの調整に依存するためであり、その調整には参加者の可用性が必要です。State Channelとセキュリティ
State Channelのセキュリティは、署名、最新状態の追跡、異議申立てルール、タイムアウトルール、コントラクトの正確性、監視に依存します。すべてのオフチェーン更新には、必要な参加者の署名が必要です。参加者は無効な更新に署名する前に、それを拒否しなければなりません。最新の有効な状態のコピーを保持する必要があります。紛争が発生した場合、その状態を送信できなければなりません。オンチェーンコントラクトは、どの状態が最新かつ有効かを正しく特定しなければなりません。タイムアウトは、正直なユーザーが反応するのに十分な時間を与える必要があります。盗まれた秘密鍵は有害な更新に署名できるため、秘密鍵を保護する必要があります。状態データの損失はユーザーの紛争上の立場を弱める可能性があるため、ソフトウェアは信頼できる必要があります。State Channelは、暗号技術、コントラクトロジック、ウォレットストレージ、監視がすべて連携して初めて安全になります。State Channelとデータ損失
データ損失はState Channelにおける重大なリスクです。ユーザーが最新の署名済み状態を失うと、紛争時に正しい最終残高を証明できなくなる可能性があります。これは、最新状態がブロックチェーン上で確認できる多くのオンチェーンシステムとは異なります。State Channelでは、中間更新は通常、パブリックチェーンではなく参加者によって保存されます。ユーザーには、信頼できるバックアップ、ウォレットストレージ、復旧手順が必要です。チャネルウォレットは、署名済み状態を秘密鍵と同じくらい慎重に保護すべきです。一部のシステムでは、データ損失リスクを減らすためにwatchtower、クラウドバックアップ、暗号化ストレージ、冗長デバイスを使用する場合があります。ただし、各バックアップ方法にはプライバシーまたはセキュリティ上のトレードオフが伴う可能性があります。開発者は、安全な状態バックアップを自動化するチャネルクライアントを設計すべきです。ユーザーは、オフチェーン状態が決済されるまでブロックチェーンから復元できると想定すべきではありません。State Channelとゲーム
State Channelは一部のブロックチェーンゲームに適しています。ゲームでは、少数のプレイヤー間で多数の高速な操作が必要になる場合があります。すべての操作をオンチェーンで送信すると、遅く高コストになります。State Channelにより、プレイヤーは操作にオフチェーンで署名し、最終結果または紛争となった結果だけをオンチェーンで決済できます。これはターン制ゲーム、賭け、戦略ゲーム、繰り返される対戦インタラクションをサポートできます。プレイヤー間で意見が一致しない場合、コントラクトが審判として機能できます。ただし、ゲームチャネルには慎重な設計が必要です。コントラクトは合法的な操作を検証するか、正しい結果を決定できる紛争プロセスを持たなければなりません。ランダム性、隠された情報、タイムアウト、プレイヤーの非活動は設計を複雑にする場合があります。State Channelは、状態遷移ルールが明確で紛争解決が効率的なゲームに最適です。State Channelとマイクロペイメント
マイクロペイメントはState Channelの最も強力なユースケースの一つです。トランザクション手数料が決済額に比べて大きい場合、少額決済はオンチェーンでは経済的に成り立たない可能性があります。Payment Channelにより、ユーザーは多数の少額決済をオフチェーンで送り、後から純額を決済できます。これはストリーミング決済、従量課金API、コンテンツ決済、帯域幅市場、ゲーム報酬、マシン間決済をサポートできます。Lightning Networkは、Payment Channelを使用して小規模かつ高速なBitcoin決済を支える主要な例です。State Channelは、この考え方をより一般的なアプリケーション状態へ拡張できます。マイクロペイメントチャネルは、決済が頻繁で相手方と継続的な関係がある場合に最も有用です。すべての決済が新しい受取人との1回限りのインタラクションである場合は、あまり有用ではありません。ルーティングネットワークとVirtual Channelは、この制限の軽減に役立ちます。基本的な考え方は、決済ごとに1件のオンチェーントランザクションを必要としないことで、非常に少額の決済を実用的にすることです。State ChannelとDeFi
State Channelは一部のDeFiインタラクションをサポートできますが、すべてのDeFiユースケースに理想的とは限りません。既知の当事者間で繰り返す取引、オフチェーンでの注文交渉、プライベートな二者間合意に役立つ場合があります。また、参加者が既知で状態変化が限定的なアプリケーションでは、高速な更新をサポートできます。ただし、多くのDeFiプロトコルはオープンな参加と共有流動性に依存します。レンディング市場、自動マーケットメイカー、強制決済システムでは、多くのユーザーが1つのパブリック状態とやり取りする必要がある場合があります。この種のコンポーザビリティは、孤立したチャネル内よりもオンチェーンまたはロールアップ内の方が容易なことが多くあります。各チャネルが資金を別々にロックする場合、State Channelは流動性を分断する可能性があります。また、第三者がパブリック状態を観察して行動することを難しくする場合があります。DeFiにおいてState Channelは、広範なパブリック流動性システムよりも、限定的で繰り返し行うインタラクションの設計で最も有用です。開発者は、アプリケーションがチャネルモデルに適合する場合にのみチャネルを選択すべきです。State ChannelとNFT
State Channelは、所有権またはゲーム状態が参加者間で頻繁に変化するNFTユースケースを支援できます。例えばゲームでは、アイテム転送や対戦中の操作をオフチェーンで保持し、最終結果を後から決済できます。NFTのレンタルまたはアクセス契約では、繰り返し更新のためにチャネルに似た構造を使用できる場合があります。ただし、NFTのState Channelは単純なPayment Channelより複雑です。NFTは一意であるため、紛争ではどのトークンまたは権利が移転されるかを正確に特定する必要があります。メタデータ、承認、ロイヤリティ、マーケットプレイスのインタラクションは、二者間チャネルに容易に適合しない場合があります。NFTが広範なパブリック市場とやり取りする必要がある場合、チャネルにロックしたままにすると流動性が低下する可能性があります。したがってState Channelは特定のNFTワークフローには有用ですが、普遍的なNFTスケーリングソリューションではありません。最適なNFTチャネルのユースケースは通常、既知の当事者間で繰り返されるインタラクションまたはゲーム固有のロジックを伴います。オープンなマーケットプレイス活動では、他のスケーリング手法の方が実用的な場合があります。State Channelとアプリケーション設計
State Channelでは、アプリケーション設計が極めて重要です。優れたチャネルアプリは、参加者が明確で、インタラクションが頻繁で、紛争ロジックが単純で、予測可能な決済ルールを持つべきです。紛争中にオンチェーンで解決しなければならないロジック量を最小限にすべきです。ユーザーが最新状態を簡単にバックアップできるようにすべきです。ロック資金、タイムアウト、閉鎖手順を明確に説明すべきです。オフラインの参加者を安全に扱うべきです。一方の参加者が他方の時間を浪費したり、不必要に資金をロックしたりするgriefingの機会を減らすべきです。State Channelは単なるバックエンドのスケーリング技術ではありません。ユーザーが開設、更新、監視、閉鎖を理解する必要があるため、製品フロー全体に影響します。最適なState Channelアプリケーションは、ユーザーのコントロールを維持しつつ技術的複雑性を隠します。State Channelのメリット
State Channelの第1のメリットは、高速なオフチェーンインタラクションです。参加者は、各アクション後に新しいブロックを待たずに状態を更新できます。第2のメリットは、オンチェーン手数料の使用量が少ないことです。多くの更新を1回の最終決済に圧縮できます。第3のメリットは、ブロックチェーン混雑の軽減です。通常、オンチェーンスペースが必要なのはチャネルの開設、閉鎖、異議申立てのトランザクションだけです。第4のメリットは、中間更新のプライバシー改善です。大半のオフチェーンメッセージはパブリックなブロックチェーンデータになりません。第5のメリットは、紛争ロジックが正しい場合の強力な決済セキュリティです。参加者はベースチェーンを利用して最新の有効な状態を強制できます。第6のメリットは、リアルタイムアプリケーションへの適性です。ゲーム、ストリーミング決済、繰り返し利用するサービスは即時更新の恩恵を受けられます。State Channelのリスクと制限
第1の制限は、資本のロックです。チャネルを利用する前に、資金または状態をロックする必要がある場合が多くあります。第2の制限は、参加者の可用性です。チャネルは、参加者がオンラインで応答できるときに最も適切に機能する場合が多くあります。第3の制限は、紛争の監視です。相手方が古い状態を送信した場合、ユーザーは応答する必要があります。第4の制限は、データバックアップのリスクです。最新の署名済み状態を失うと、ユーザーの異議申立能力が弱まる可能性があります。第5の制限は、オープンで多数のユーザーが参加するアプリケーションには適合しにくいことです。チャネルは、参加者が既知で繰り返しやり取りする場合に最も強力です。第6の制限は、流動性の分断です。1つのチャネルにロックされた資金は、他の場所で簡単に利用できない場合があります。第7の制限は、コントラクトの複雑性です。チャネルコントラクトまたはウォレットソフトウェアのバグは、重大な損失を引き起こす可能性があります。State Channelに関するよくある誤解
よくある誤解の一つは、State Channelがロールアップと同じものだということです。State Channelは参加者固有のオフチェーン合意であり、ロールアップは多数のユーザーをバッチ処理するより広範な実行システムです。もう一つの誤解は、State Channelは決済専用だということです。Payment ChannelはState Channelの一種ですが、State Channelはゲームやその他のアプリケーション状態もサポートできます。3つ目の誤解は、State Channelがユーザーの行動なしに完全にトラストレスだということです。ユーザーは依然として、署名、バックアップ、監視、異議申立てへの対応を安全に管理する必要があります。4つ目の誤解は、すべてのアプリケーションがState Channelの恩恵を受けるということです。未知のユーザーが多く共有流動性を必要とするアプリケーションは、ロールアップまたはオンチェーン実行の方が適している場合があります。5つ目の誤解は、オフチェーンは安全でないということです。オフチェーン更新は、署名によって裏付けられ、オンチェーンの異議申立てルールで強制可能であれば安全になり得ます。State Channelシステムの評価方法
まず、どの資産またはアプリケーション状態がチャネルにロックされるかを確認します。次に、参加者が誰であり、どのように更新へ署名するかを確認します。システムがどのように最新の有効な状態を決定するかを確認します。異議申立期間と、ユーザーが現実的に期限内に応答できるかを確認します。watchtowerまたは監視サポートが利用可能かを確認します。ウォレットが署名済み状態をどのように保存・バックアップするかを確認します。アプリケーションで参加者がオンライン状態を維持する必要があるかを確認します。チャネル流動性をリバランスまたはルーティングできるかを確認します。オンチェーンコントラクトが監査または正式なレビューを受けているかを確認します。ユースケースが本当に、チャネル開設を正当化する繰り返しインタラクションを伴うかを問いましょう。ユーザー向けベストプラクティス
State Channelは、主に同じ相手方またはネットワークとの繰り返しインタラクションを見込む場合に使用してください。チャネルウォレットソフトウェアを最新の状態に保ってください。チャネル状態を含むかどうかを理解しないまま、ウォレットデータを削除しないでください。利用可能かつ適切な場合は、監視またはwatchtowerサービスを使用してください。重要な資金をロックする前に、異議申立期間を理解してください。新しいチャネルアプリケーションを試す際は少額から始めてください。ロック資金が不要になったら、未使用のチャネルを閉鎖してください。容量があっても必要な方向へ送金できない場合があるため、流動性の方向に注意してください。理解できないチャネル更新には署名しないでください。高速なオフチェーン更新は、依然として正しいオンチェーン決済ルールに依存することを覚えておいてください。開発者向けベストプラクティス
すべての状態更新が明示的で、署名され、順序付けられるようにチャネルプロトコルを設計してください。最新の有効な状態を識別するために、シーケンス番号またはその他の仕組みを使用してください。異議申立てロジックはオンチェーンで検証できる程度に単純にしてください。古い状態に異議を申し立てるための十分な時間をユーザーに与えてください。ユーザーがオフラインになる可能性がある場合は、watchtower互換の監視をサポートしてください。チャネル状態を安全に保存し、安全なバックアップツールを提供してください。ユーザーが価値を得る前にロックしなければならない資本を最小限にしてください。協調閉鎖、一方的閉鎖、タイムアウト経路、古い状態を使った攻撃、データ損失のシナリオをテストしてください。ロック残高、保留中の決済、異議申立期間をユーザーインターフェースで明確に説明してください。実装パターンを評価する際は、公式ドキュメントおよびNitro State Channel Frameworkドキュメントなどの実証済みチャネルフレームワークを使用してください。
FAQ
暗号資産におけるState Channelとは何ですか?
State Channelとは、参加者が署名済みメッセージを通じて共有状態を更新し、最終結果をオンチェーンで決済するオフチェーン合意です。State ChannelとPayment Channelの違いは何ですか?
Payment Channelは決済に使用されるのに対し、State Channelはゲーム、残高、取引、サービス契約など、より広範なアプリケーション状態をサポートできます。State ChannelはLayer 2ですか?
はい。State Channelは通常、ベースチェーンを決済と紛争に使用しながら活動をベースチェーン外へ移すため、Layer 2スケーリング手法と見なされます。State Channelには信頼が必要ですか?
State Channelは署名とオンチェーンの異議申立てルールにより信頼を減らしますが、ユーザーは依然として鍵、バックアップ、監視、相手方の可用性を管理する必要があります。State Channelが高速な理由は何ですか?
State Channelが高速なのは、ほとんどの更新が署名されオフチェーンで交換されるため、各更新がブロックに含まれるのを待つ必要がないからです。誰かが古いチャネル状態を送信した場合はどうなりますか?
通常、正直な参加者は異議申立期間中により新しい有効な状態を送信して、古い状態に異議を申し立てることができます。watchtowerとは何ですか?
watchtowerとは、不正なチャネル閉鎖を監視し、異議申立期間中にユーザーが応答するのを支援できる監視サービスです。State Channelは何に最適ですか?
State Channelは、マイクロペイメント、ゲーム、ストリーミング決済、二者間の取引ワークフローなど、既知の参加者間で繰り返されるインタラクションに最適です。State Channelが苦手なことは何ですか?
State Channelは、共有流動性、パブリックなコンポーザビリティ、常に変化する参加者の容易なアクセスを必要とする、オープンで多数のユーザー向けアプリケーションにはあまり適していません。State Channelは現在も重要ですか?
はい。多くのスマートコントラクトエコシステムではロールアップが主要な汎用スケーリング手段となっていますが、State Channelは特定の高頻度かつ繰り返しインタラクションのユースケースで引き続き重要です。結論
State Channelは、参加者が共有状態をオフチェーンで更新し、最終結果をオンチェーンで決済できる暗号資産のスケーリング手法です。ロックされた資産またはアプリケーション状態、署名済みのオフチェーン更新、最新状態の追跡、紛争解決を基盤としています。Payment Channelは最もよく知られたState Channelの種類であり、Lightning Networkは最もよく知られたPayment Channelネットワークです。一般的なState Channelは、決済だけでなく、ゲーム、サービス契約、繰り返し取引、その他のアプリケーション固有のワークフローもサポートできます。State Channelの主な利点は、速度、オンチェーン手数料の使用量削減、混雑軽減、中間更新におけるプライバシー改善です。主な制限は、資本のロック、相手方の可用性、紛争の監視、データバックアップのリスク、オープンで多数のユーザー向けアプリケーションへの適合性の低さです。State Channelは通常、参加者固有の合意であり、広範なパブリック実行環境ではないため、ロールアップとは異なります。また、独自のバリデーターセットを持つ独立したブロックチェーンを作らないため、サイドチェーンとも異なります。ユーザーにとってState Channelは、繰り返しインタラクションによってチャネルの開設・維持が正当化される場合に最も有用です。開発者にとってState Channelは、アプリケーションルールが明確で、紛争ロジックが単純であり、ユーザーをオフラインおよびデータ損失のリスクから保護できる場合に強力です。暗号資産用語集においてState Channelsは、参加者が署名済みの状態更新を交換し、ベースブロックチェーンを開設、閉鎖、紛争の決済にのみ利用するオフチェーンチャネルを意味します。重要なポイントは、State Channelが適切なユースケースにおいて暗号資産のインタラクションをほぼ即時かつ低コストにできる一方、流動性、監視、バックアップ、紛争時の安全性について慎重な設計が必要であることです。関連コンテンツ
WhatsMiner M30S++
Web3ドメイン
Web3プロジェクト
ホット
現在、市場で大きな注目を集めているトレンドの暗号資産
トップ取引高
取引高が最も多い暗号資産

