Protokol: Genel Bakış
Bu, DIG Protokolünün normatif şartnamesidir, alttan üste yedi katman olarak tanımlanmıştır. Her katman, normatif referans olarak kendi kanonik crate/dosyasını adlandırır.
Bu bölüm, ağın ne yaptığının kaynağıdır. Protokolü, kanonik uygulamaya dosya:satır alıntılarıyla fiilen çalıştığı şekliyle belgeler.
Temel birim: capsule
Her katmanda geçen bir kavram var: capsule = (store_id, root_hash), kanonik olarak storeId:rootHash. Bir store, capsule'lerin sıralı bir dizisidir (eskiden yeniye), her commit için bir tane; kimliği store_id, Chia üzerinde bir CHIP-0035 DataLayer singleton başlatıcı (launcher) id'sinin ta kendisidir. Kimlik, derleme, fiyatlandırma, alma, önbellekleme ve köken kanıtının hepsi capsule başına tanımlanır.
Tez: kör host, istemci tarafında doğrulama, zincire sabitlenmiş kök
- Kör host. Bir host yalnızca karmalarla anahtarlanmış opak şifreli metin tutar. Ne URN ne de anahtar tutar, capsule'ün kendi çıktısını olduğu gibi aktarır ve bir isabeti bir kaçırmadan ayırt edemez. Tel üzerinde bir
decoyalanı ve bir CDN yoktur — içerik yalnızca dig RPC üzerinden sunulur. - İstemci tarafında doğrulama. Her bayt, okuyucunun cihazında, kaynak-başına bir merkle dahil etme kanıtıyla zincir üzeri bir köke karşı kontrol edilir, ardından kimlik doğrulamalı olarak şifresi çözülür. Güven asla sunum kaynağına dayanmaz.
- Zincire sabitlenmiş kök. Güvenilen kök yalnızca Chia üzerindeki CHIP-0035 singleton'ından gelir (coinset.org üzerinden çözülür), asla sunulan "en son"dan değil.
Yedi katman
| # | Katman | Tanımladığı şey | Kanonik referans |
|---|---|---|---|
| 0 | Kimlik & adlandırma | store, capsule, generation; store_id = başlatıcı id | digstore-core::capsule, ::urn |
| 0 | URN & adresleme | urn:dig:chia:… grameri; köksüz retrieval_key | digstore-core::urn, lib.rs |
| 1 | Kriptografi | HKDF KDF; AES-256-GCM-SIV mühürleme | digstore-core::crypto |
| 1 | Merkle dahil etme kanıtları | D5 kaynak-başına yaprak; NODE_TAG katlama | digstore-core::merkle |
| 1 | BLS imzaları & DST'ler | Chia AugScheme; beş rol DST'si | digstore-crypto::bls |
| 2 | capsule formatı | DIGS veri bölümü (BINDING D1) | digstore-core::datasection |
| 2 | Kendini savunan modül | sabit boyutlu gizleme; sunum guest'i | digstore-compiler, digstore-guest |
| 4 | Zincir üzeri sabitleme | store = singleton; capsule = kök-ilerletme | chip35_dl_coin, digstore-chain |
| 4 | DIG CAT ödemesi & fiyatlandırma | capsule başına, dinamik, USD-endeksli | chip35_dl_coin::dig |
| 6 | dig RPC | makine arayüzü (JSON-RPC 2.0) | hub retrieval, dig-node |
| 5 | §21 aktarım & push | dig:// konumlandırıcı, REST, push v1 | digstore-remote |
| 7 | DIG Node eş ağı | mTLS eş kimliği, NAT geçişi, STUN, tanıtıcı (introducer), relay teli, eş RPC'si | dig-gossip, dig-relay, dig-nat, dig-node |
| 6 | Doğrulama & köken kanıtı | dört sıralı bütünlük geçidi | digstore-core::merkle, dig-node |
| 6 | Kör host modeli | sağlayıcı-körlüğü; çözücü; /v1 kontrol düzlemi | hub retrieval/resolver/api |
| — | Uygunluk & eşitlik | çapraz-uygulama eşitlik disiplini | dondurulmuş goldenlar, OpenRPC diff'i |
(3. katman ve §21 aktarımı okuma yoluyla iç içe geçer; tablo bunları bir okuyucunun onlarla karşılaştığı yerde gruplar. Tam katman numaralandırması her sayfada verilmiştir.)
Bir capsule katmanlardan nasıl akar
Bir yayıncı içeriği parçalar + şifreler (K1) bir capsule formatına (K2) dönüştürür, bu da kendini sunar (K3), zincir üzerinde sabitlenir (K4) ve §21 aktarımı üzerinden push edilir (K5). Herhangi bir istemci, onu dig RPC üzerinden okur ve tamamen istemci tarafında zincire sabitlenmiş köke karşı doğrular (K6). Her kriptografik sabit, üretici, host ve doğrulayıcı arasında paylaşılan tek bir tanıma sahiptir — C8 eşitlik değişmezi.
Terminoloji
chia://— ağın içerik adresi (bir tarayıcının açtığı şey).dig://— §21 aktarım konumlandırıcısı (CLI/eş düzlemi) ve DIG Browser'ın dahili sayfa şeması — iki ayrı kullanım, asla içerik adresi değil.urn:dig:— her ikisinin de türediği URN ad alanı.- store / capsule — kimlik ve onun değişmez generation'ı.
- $DIG — capsule başına ödenen CAT; DigStore — store formatı.
İlgili
- Kavramlar & sözlük — bir kez tanımlanan her varlık
- Kimlik & adlandırma — şartnamenin başladığı Katman 0
- dig RPC — protokolün makine arayüzü
- DIG Node eş ağı — düğümlerin birbirini nasıl bulup ulaştığı (mTLS, NAT geçişi, relay)
- Uygunluk & eşitlik — çapraz-uygulama eşitlik disiplini