Pular para o conteúdo principal

What is DigStore?

A DigStore é um projeto criptografado e endereçável por conteúdo, no estilo Git, que compila para um único módulo WebAssembly autodefensivo.

Você tem comandos no estilo Git — init, add, commit, log, clone, push, pull — para um projeto que é criptografado em repouso e compila em um único arquivo .wasm. Esse arquivo único é tanto seus dados quanto o servidor que controla o acesso a eles. Um host que o armazena ou retransmite vê apenas ciphertext endereçado por hashes; ele não consegue ler o que carrega.

Você endereça o conteúdo com uma URN, e a URN é a chave: ela ao mesmo tempo localiza e descriptografa. Entregue uma URN a alguém e essa pessoa poderá ler aquele recurso; sem ela, não pode — não há senha separada ou lista de acesso para gerenciar.

Ao contrário do Git, a DigStore é construída para saída de build, não código-fonte de repositório. Você aponta um projeto para um diretório como dist/ e ele captura o que está lá.

Por que ela existe

ProblemaA resposta da DigStore
Hosts podem ler / escanear o que você publicaO conteúdo é criptografado em repouso; o host guarda apenas ciphertext indexado por hashes
Controle de acesso significa senhas e ACLsA URN é a capability — compartilhe-a para conceder leitura, retenha-a para negar
Você precisa confiar no servidor para servir bytes genuínosclone/pull verificam o store id do módulo, a raiz assinada pelo publicador, e a raiz do singleton on-chain antes de instalar — falha de forma fechada
"Qual é o tamanho desse payload?" vaza pelo tamanho do arquivoTodo projeto é um único .wasm, com padding para um tamanho uniforme que não revela nada sobre seu conteúdo
A lógica de serviço vive separada dos dadosOs dados e o código que controla o acesso a eles compilam no mesmo módulo

Como ler esta documentação

  • O formato DigStore — os conceitos: projetos, deployments, o módulo .wasm, URNs, criptografia e provas. Comece aqui se você quer entender o que é a DigStore.
  • Tutorial da CLI — instale a CLI e use-a em um projeto real: inicialize um projeto, capture um diretório de build, commite deployments, compartilhe via um remote, e transmita conteúdo de volta.

Se você só quer experimentar, vá direto ao Quickstart (o caminho gratuito, web-first) ou ao tutorial da CLI.

nota

A DigStore faz parte da DIG Network. O design técnico completo está na seção Protocolo — o formato de store WASM endereçável por conteúdo.