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

DIG Network

DIG NetworkはChia上のProof-of-Stake Layer 2です — ホストを信頼することなくコンテンツを公開し、アドレス指定し、配信するための分散型ネットワークです。

このドキュメントはネットワークとそのプリミティブ(DIG上に構築する際に開発者が使う、組み合わせ可能な構成要素)を扱います。ネットワークはまだ拡張中であり、今後さらに多くのプリミティブがここに文書化されていきます。

capsule

すべてのプリミティブを貫く一つの概念があります。capsuleとは、1つの不変なstore世代(generation)のことで、(storeId, rootHash)のペアであり、正規表記ではstoreId:rootHashと書かれます。storeはcapsuleの並びであり、コミットごとに1つ(各コミットがオンチェーンのrootを進め、新しいcapsuleを生成します)。

capsuleはネットワークにおける以下の単位です。

  • コンパイル — 各capsuleは1つの固定サイズのWASMモジュールにコンパイルされます(その長さがコンテンツサイズについて何も漏らさないようパディングされます)。
  • 価格設定capsuleごとに均一な価格(mintまたはcommit)を、その時点のレートで$DIGにより支払います。storeの生涯コストは、均一なcapsule価格 × capsuleの数です。
  • 取得 — URNは1つのcapsule(および任意でその中のリソース)を指します。
  • キャッシュ — ホストやブラウザはstoreId:rootHashをキーにcapsuleをキャッシュします。ローカルキャッシュはcapsuleの集合です。
  • 来歴(provenance) — 各capsuleのrootには、公開者のBLS署名とMerkle rootが含まれます。

これはエコシステム全体にわたる定義です。「capsule = (storeId, rootHash)」は、DigStore、dig RPC、DIG Browserのいずれにおいても同じ意味を持ちます。

試してみる

DIGHUbで最初のcapsuleを作成する ↗ — CLI不要で、ブラウザからサイトを公開できます。各capsule(mintまたはcommit)には**$DIGでの均一なcapsule価格**がかかります。

プリミティブ

🗄️ DigStore

最初の、そして最も基礎的なプリミティブです。コンテンツアドレス指定型の、暗号化されたWASMプロジェクトフォーマットです。ビルドディレクトリを指定し、Gitのようにデプロイをコミットすると、単一の自己防衛型.wasmファイルが得られます。このファイルはデータそのものであると同時に、そのアクセスを制御するサーバーでもあります。URNこそが鍵です — 場所を示すと同時に復号も行います。

DigStoreを詳しく見る

DigStoreとは?一言で言えばワンファイルという発想
フォーマットプロジェクト、デプロイ、URN、暗号化、証明
CLIチュートリアルプロジェクトでdigstoreをインストールして使う

🛰️ dig RPC

ネットワーキングのプリミティブです。ホストされたDigStoreデプロイからコンテンツを読み取るための標準インターフェースです。HTTPS POST上のJSON-RPC 2.0であり、すべてのホスティングノードが同一に対応するため、コンテンツはポータブルでクライアントはノードに依存しません。取得キーによる暗号文と包含証明、(store_id, root)によるデプロイ全体、そして公開用の発見マニフェストをチャンク単位でストリーミングし、構造上盲目であり、検証と復号はすべてクライアント側で行われます。

dig RPCを詳しく見る

dig RPCとは?ネットワーク全体の読み取りパスのための単一エンドポイント
メソッドdig.getContentdig.getCapsuledig.getManifestdig.listCapsules、…
ストリーミングチャンクモデル、再構成、証明検証
準拠性とセキュリティ盲目モデル、CORS、ノードが実装すべきこと

🌐 DIG Browser

クライアントのプリミティブです。Chiaウォレット内蔵のブラウザです。すべてのページにwindow.chiaプロバイダーを注入するため、どんなWebアプリでもWalletConnectの設定なしにユーザーのアドレス、署名、支出をリクエストできます — すでにCHIP-0002に対応しているアプリのドロップイン代替となります。また、chia://のコンテンツアドレスを直接解決します。

DIG Browserに対応した開発をする

アプリでwindow.chiaを使う注入されたウォレットを検出し、接続し、CHIP-0002メソッドを呼び出す
試してみる

DIG Browserを入手する ↗ — ブラウザをダウンロードしてchia://のコンテンツを開き、内蔵ウォレットを使いましょう。

決済とノード運用といった追加のプリミティブも、順次それぞれの節が用意されます。

あなたの道を選ぶ

このドキュメントはあなたが何をしたいかを軸に構成されています。各トラックは10秒でわかる「なぜ」から始まり、必要なメンタルモデル、そして重要度の高い手順を示し、さらに深く知りたければプロトコルへのリンクへと続きます。

用語に不慣れですか?概念と用語集にざっと目を通してください。設計の全体像を知りたければ、プロトコル詳解を読んでください。

注記

DIG Networkとそのプリミティブはオープンソースです。DigStoreはGPL-2.0の下でライセンスされています。digstoreリポジトリを参照してください。