メインコンテンツまでスキップ

データ可用性

データ可用性(DA)とは、ロールアップの状態の背後にあるトランザクションデータが、誰もが読めるどこかに公開されることの保証です。これにより、誰もがロールアップの状態を独立して再構築し、検証できます。RDK は 3 つの DA バックエンドをサポートしています。

バックエンド内容
nativeQoreChain 自体の内部にあるオンチェーンの blob ストレージ
celestia専用のモジュラー DA レイヤーである Celestia への IBC 経由のデータ可用性
both冗長性のための native と Celestia の併用
注意

データ可用性バックエンドは、活発に進化している RDK の一部です。以下の成熟度に関する注記は設計上の意図として扱い、本番でバックエンドに依存する前に qorechain-diana テストネットで検証してください。


ネイティブ DA(オンチェーン blob ストレージ)

ネイティブ DA は、ロールアップのトランザクションデータを blob として QoreChain 上に直接保存します。各 blob はコミットされアドレス指定可能であるため、決済バッチの背後にあるデータをオンチェーンで取得し検証できます。

主な概念:

  • Blob。 ロールアップのトランザクションデータは、それぞれロールアップ ID と blob インデックスに関連付けられたデータ可用性 blob として公開されます。
  • コミットメント。 各 blob はコミットメント(blob データのハッシュ)を保持しているため、保存者を信頼することなく、コミットされた内容に対して blob を検証できます。
  • 名前空間。 blob はロールアップ固有の名前空間を保持でき、共有ストレージ内で各ロールアップのデータを論理的に分離します。
  • 保持とプルーニング。 ネイティブ blob は一定の期間保持された後、オンチェーンストレージを持続可能に保つためにプルーニングされます。プルーニング後は、生の blob データは削除されますがコミットメントのメタデータは保持されるため、バイトがオンチェーンに保存されなくなっても、過去のコミットメントは検証可能なまま残ります。

正確な最大 blob サイズと保持期間は、稼働中のモジュールパラメータによって管理されています。特定の制限を前提に設計する前に、これらをクエリしてください:

qorechaind query rdk config

ネイティブ DA は最もシンプルな選択肢です。すべてを QoreChain 内に保持し、ホストチェーンのセキュリティとポスト量子暗号を継承しますが、その代償としてホストチェーンのストレージを消費します。


Celestia DA(Celestia への IBC)

celestia バックエンドは、専用のモジュラー DA ネットワークである Celestia への IBC を通じてデータ可用性を公開します。これにより、決済を QoreChain 上にアンカーしたまま、blob ストレージを QoreChain から専用の DA レイヤーへオフロードします。

注記

Celestia DA は成熟途上の統合です。現在のリリースでは、まだ本番向けに強化されていないものとして扱ってください。テストネットで動作を検証し、現時点で確定的な保証が必要な場合は native または both を選んでください。


Both(冗長性)

both バックエンドは native と Celestia の両方 に書き込み、オンチェーンストアと外部のモジュラー DA レイヤーにまたがる冗長性を提供します。最も広い可用性範囲を望み、2 か所にデータを保存するコストを許容できる場合に both を選んでください。

Celestia パスはまだ成熟途上であるため、both は、完全に独立した 2 つのコピーが現時点で確定的に決済されることを保証するものではなく、冗長性の実装が進行中のネイティブとして扱ってください。現在の動作はテストネットで確認してください。


バックエンドの選択

望むもの...選択
最もシンプルで完全にオンチェーンの、QoreChain のセキュリティを継承する選択肢native
専用のモジュラーレイヤーに DA をオフロードする(成熟途上)celestia
冗長性を伴う最大の可用性範囲(成熟途上)both

DA がより広い決済の全体像にどのように組み込まれるかについては、ロールアップの概要 を参照してください。より低レベルのモジュールリファレンスについては、ロールアップ開発キット ページを参照してください。