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

プロトコル:概要

これはDIG Protocolの規範的な仕様であり、ボトムアップの7つの層として定義されています。各層は、規範的な参照として自身の正規のクレート/ファイルを示します。

これは権威あるプロトコルリファレンスです

このセクションは、ネットワークが実際に何を行うかについての信頼できる情報源です。プロトコルが実際にどう動作するかを、正規の実装へのfile:line引用とともに文書化しています。

基本単位:capsule

すべての層を貫く一つの概念があります。capsule = (store_id, root_hash)、正規表記ではstoreId:rootHashです。storeは(古い順から新しい順への)capsuleの順序付き並びであり、コミットごとに1つ。そのアイデンティティであるstore_idは、Chia上のCHIP-0035 DataLayerシングルトンのランチャーIDそのものです。アイデンティティ、コンパイル、価格設定、取得、キャッシュ、来歴はすべてcapsuleごとに定義されます。

テーゼ:盲目なホスト、クライアント側検証、チェーンに固定されたroot

  • 盲目なホスト。 ホストはハッシュでキー付けされた不透明な暗号文しか保持しません。URNも鍵も保持せず、capsule自身の出力をそのまま中継するだけで、ヒットとミスを見分けることもできません。ワイヤー上にdecoyフィールドは存在せず、CDNも存在しません — コンテンツはdig RPC経由でのみ配信されます。
  • クライアント側検証。 すべてのバイト列は、読み手のデバイス上で、リソースごとのmerkle包含証明とともにオンチェーンのrootに照らして検証され、その後認証付き復号が行われます。信頼が配信元に依存することは決してありません。
  • チェーンに固定されたroot。 信頼されるrootは唯一、Chia上のCHIP-0035シングルトン(coinset.org経由で解決)から得られ、配信された「latest」から得られることは決してありません。

7つの層

#定義する内容正規の参照
0アイデンティティと命名store、capsule、generation;store_id = ランチャーIDdigstore-core::capsule::urn
0URNとアドレス指定urn:dig:chia:…の文法;rootを持たないretrieval_keydigstore-core::urnlib.rs
1暗号技術HKDF KDF;AES-256-GCM-SIVシールdigstore-core::crypto
1Merkle包含証明D5リソースごとの葉;NODE_TAGによる折りたたみdigstore-core::merkle
1BLS署名とDSTChia AugScheme;5つの役割別DSTdigstore-crypto::bls
2CapsuleフォーマットDIGSデータセクション(BINDING D1)digstore-core::datasection
2自己防衛型モジュール固定サイズの難読化;配信用ゲストdigstore-compilerdigstore-guest
4オンチェーンアンカリングstore = シングルトン;capsule = rootの進行chip35_dl_coindigstore-chain
4DIG CAT決済と価格設定capsuleごと、動的、USD連動chip35_dl_coin::dig
6dig RPCマシンインターフェース(JSON-RPC 2.0)hub retrievaldig-node
5§21トランスポートとプッシュdig://ロケーター、REST、pushバージョン1digstore-remote
7DIG NodeピアネットワークmTLSピアアイデンティティ、NATトラバーサル、STUN、イントロデューサー、リレーワイヤー、ピアRPCdig-gossipdig-relaydig-natdig-node
6検証と来歴4つの順序付き完全性ゲートdigstore-core::merkledig-node
6盲目ホストモデルプロバイダーの非公開性;リゾルバー;/v1制御プレーンhub retrieval/resolver/api
準拠性とパリティ実装間のパリティ規律凍結されたゴールデン、OpenRPC差分

(層3と§21トランスポートは読み取りパスと相互に絡み合っており、この表では読み手が出会う位置にまとめています。完全な層番号は各ページに記載されています。)

capsuleが層をどう流れるか

公開者は(L1で)コンテンツをチャンク化+暗号化し、(L2で)capsuleフォーマットにし、それが(L3で)自己配信し、(L4で)オンチェーンに固定され、(L5で)§21トランスポート経由でプッシュされます。どのクライアントも、それをdig RPC経由で読み取り、(L6で)完全にクライアント側でチェーンに固定されたrootに照らして検証します。すべての暗号定数には、生成者・ホスト・検証者の間で共有される唯一の定義があります — C8パリティ不変条件です。

用語

  • chia:// — ネットワークのコンテンツアドレス(ブラウザが開くもの)。
  • dig:// — §21のトランスポートロケーター(CLI/ピア層)かつDIG Browserの内部ページスキーム — 2つの異なる用途であり、決してコンテンツアドレスではありません。
  • urn:dig: — 両者が派生元とするURN名前空間。
  • store / capsule — アイデンティティとその不変のgeneration。
  • $DIG — capsuleごとに支払われるCAT;DigStore — storeフォーマット。