Pular para o conteúdo principal

Protocol: Overview

Esta é a especificação normativa do Protocolo DIG, definida como sete camadas, de baixo para cima. Cada camada nomeia seu crate/arquivo canônico como referência normativa.

Esta é a referência autoritativa do protocolo

Esta seção é a fonte de verdade para o que a rede faz. Ela documenta o protocolo como ele realmente roda, com citações file:line para a implementação canônica.

A unidade fundamental: o capsule

Um conceito percorre todas as camadas: o capsule = (store_id, root_hash), canonicamente storeId:rootHash. Um store é uma sequência ordenada de capsules (do mais antigo ao mais novo), um por commit; sua identidade store_id é um launcher id de singleton DataLayer CHIP-0035 na Chia. Identidade, compilação, precificação, recuperação, cache e proveniência são todos definidos por capsule.

A tese: host cego, verificação no cliente, raiz ancorada na chain

  • Host cego. Um host guarda apenas ciphertext opaco indexado por hashes. Ele não guarda URN nem chave, retransmite a saída do próprio capsule literalmente, e não consegue distinguir um acerto de uma falha. Não há campo decoy no wire e não há CDN — o conteúdo é servido apenas através do dig RPC.
  • Verificação no cliente. Todo byte é checado no dispositivo do leitor contra uma raiz on-chain com uma prova de inclusão merkle por recurso, depois autenticado-descriptografado. A confiança nunca repousa na origem que serve.
  • Raiz ancorada na chain. A raiz confiável vem apenas do singleton CHIP-0035 na Chia (resolvido via coinset.org), nunca do "latest" servido.

As sete camadas

#CamadaO que defineReferência canônica
0Identidade e nomenclaturastore, capsule, generation; store_id = launcher iddigstore-core::capsule, ::urn
0URN e endereçamentogramática urn:dig:chia:…; retrieval_key sem rootdigstore-core::urn, lib.rs
1CriptografiaKDF HKDF; selo AES-256-GCM-SIVdigstore-core::crypto
1Provas de inclusão Merklefolha por recurso D5; dobra NODE_TAGdigstore-core::merkle
1Assinaturas BLS e DSTsAugScheme da Chia; cinco DSTs de papeldigstore-crypto::bls
2Formato do capsulea seção de dados DIGS (BINDING D1)digstore-core::datasection
2O módulo autodefensivoofuscação de tamanho fixo; o guest de serviçodigstore-compiler, digstore-guest
4Ancoragem on-chainstore = singleton; capsule = avanço de raizchip35_dl_coin, digstore-chain
4Pagamento e precificação do CAT DIGpor capsule, dinâmico, atrelado a USDchip35_dl_coin::dig
6O dig RPCa interface de máquina (JSON-RPC 2.0)hub retrieval, dig-node
5Transporte e push §21localizador dig://, REST, push v1digstore-remote
7Rede de peers do DIG Nodeidentidade de peer mTLS, NAT traversal, STUN, introducer, wire de relay, RPC de peerdig-gossip, dig-relay, dig-nat, dig-node
6Verificação e proveniênciaos quatro gates de integridade ordenadosdigstore-core::merkle, dig-node
6O modelo de host cegocegueira do provedor; resolver; plano de controle /v1hub retrieval/resolver/api
Conformidade e paridadea disciplina de paridade entre implementaçõesgoldens congelados, diff do OpenRPC

(As camadas 3 e o transporte §21 se interpõem com o caminho de leitura; a tabela as agrupa onde um leitor as encontra. A numeração completa das camadas é dada em cada página.)

Como um capsule flui pelas camadas

Um publicador fragmenta + criptografa (L1) o conteúdo em um formato de capsule (L2) que se autosserve (L3), ancora ele on-chain (L4), e o envia via transporte §21 (L5). Qualquer cliente o através do dig RPC e o verifica contra a raiz ancorada na chain inteiramente no lado do cliente (L6). Toda constante criptográfica tem uma única definição compartilhada entre produtor, host e verificador — o invariante de paridade C8.

Terminologia

  • chia:// — o endereço de conteúdo da rede (o que um navegador abre).
  • dig:// — o localizador de transporte §21 (plano de CLI/peer) e o esquema interno de páginas do DIG Browser — dois usos distintos, nunca o endereço de conteúdo.
  • urn:dig: — o namespace de URN do qual ambos derivam.
  • store / capsule — a identidade e sua generation imutável.
  • $DIG — o CAT pago por capsule; DigStore — o formato do store.