Zum Hauptinhalt springen

36 docs getaggt mit "dig-rpc"

Alle Tags anzeigen

Build a dapp on Chia

Durchgängig: Eine React-App scaffolden, die eingebettete Chia-Wallet (window.chia + WalletConnect-Fallback) mit dem dig-sdk verdrahten, einen Spend über das chip35-Wasm bauen und signieren, dann on-chain deployen und eine eigene Domain hinzufügen — ein durchgängiger Ablauf durch jede DIG-Primitive.

Changelog

What changed across the DIG developer surfaces — the digstore CLI, the dig RPC, and the window.chia provider — including breaking changes and the versioning rules for each.

Concepts & glossary

Eine Seite mit dem Index der zentralen DIG-Network-Entitäten — capsule, store, generation, URN, retrieval key, der dig RPC, das chia://-Protokoll und on-chain-Verankerung — jede einmal definiert und mit ihrer ausführlichen Dokumentation verlinkt.

Configure dig-node

Configure a dig-node: listen ports and listeners, the cache cap, and the upstream the node blind-fetches from — via config and DIGNODE_* environment variables.

Conformance & parity

The cross-implementation parity discipline: frozen canonical()/retrieval_key() goldens, the C8 crypto fixtures, the shared URN conformance vectors, the OpenRPC-vs-server diff test, and what every reimplementation MUST pass.

Conformance & Security

Blind serving model, decoy streams, CORS, caching, rate limiting, and conformance checklist for dig RPC endpoints.

DIG Network

Überblick über die Primitive des DIG Network: DigStore für inhaltsadressierte Veröffentlichung, dig RPC für blindes Hosting und Abruf, und der DIG Browser für den Inhaltszugriff.

Error codes

Every DIG error code in one place: dig RPC JSON-RPC codes, digstore CLI exit codes, and DIGHUb user-facing codes — each with what it means and what to do.

For integration developers

Eine vollständig maschinenlesbare Plattform — OpenAPI/OpenRPC, eine katalogisierte Fehlertaxonomie, Live-Preise, JWKS, Pro-Seite-JSON und ein typisiertes @dignetwork/dig-sdk — sodass Sie ein Wallet + verifizierte Reads in Ihre App einbinden, ohne eine einzige Zeile menschlicher Prosa zu scrapen.

Get help

Where to get help with DIG — the community Discord, GitHub issues, and how to file a report that gets answered fast.

How do I… integrate DIG into my app?

The shortest path for integrating developers: connect a wallet, read verified content, build a spend the right way, and deploy from CI — using the typed @dignetwork/dig-sdk and the dig RPC, no prose-scraping required.

Inclusion vs execution proofs

Two proof types: synchronous Merkle inclusion proofs that pin served bytes to an on-chain root, and asynchronous ZK / risc0 execution receipts that attest faithful serving — gated on the control plane.

Install anywhere — the universal installer

The cross-platform dig-node installer for Windows, macOS, and any Linux: one curl | sh (or a direct download), installs the service and the digstore CLI, and registers dig.local.

Install on Ubuntu/Debian (apt)

Install dig-node and the digstore CLI on Ubuntu/Debian from the apt.dig.net repository, and run dig-node as a managed systemd service.

L1 · BLS signatures & domain separation

Chia AugScheme (G1 48B / G2 96B), the five mutually-distinct role DSTs (PUSH/NODE/TOMB/REQ/ATTEST) with their exact signing-message preimages, rogue-key rejection, and the host↔guest parity fixtures.

L2/L3 · The self-defending module

Fixed-size obfuscation (128 MiB uniform blob, deterministic ChaCha20 filler), WASM injection memory layout (BINDING D2: 2 MiB offset, 384 MiB ceiling), the self-serving guest pipeline, oblivious gather, decoy generation, and the disabled host-attestation gate.

L5 · §21 transport & push

The §21 transport: dig:// locator resolution, the REST surface, the JSON-outer / Chia-codec-inner envelope, 2-leg push v1 (inline | presigned), the authenticated head (PUSH_DST), per-request §21.9 auth with exact signing messages, ETag/delta/pull, tombstone revocation, and decoy indistinguishability.

L6 · The blind host model

The provider-blindness invariant, serve_blind (framing-only decode), the root-pinned immutable response cache, the *.on.dig.net + custom-domain resolver, the /v1 control plane (CHIP-0002 login, JWT sessions, refresh reuse-detection, action re-auth, GitHub-OIDC CI), and the accept-on-signature push trust model.

L6 · The dig RPC (machine interface)

The dig RPC is THE machine interface of the protocol: JSON-RPC 2.0 over HTTP POST, the full method catalogue, the chunk wire object (chunk_lens first-window-only, NO decoy field), range/window math, error codes incl. -32004, and the node profile vs the network profile.

L6 · Verification, provenance & anchoring

The four ordered integrity gates (merkle inclusion → authenticated decryption → anchored-root pinning → risc0 execution), anchored-root pinning against the CHIP-0035 singleton via coinset.org, the authenticated head, tombstones, the MOCK-by-default risc0 caveat, the freshness contract, and provenance UX surfacing.

L7 · DIG Node peer network

The normative node↔node protocol: mTLS peer identity (peer_id = SHA-256(TLS SPKI DER)), the two RPC tiers (mTLS-authenticated PEER/CONTROL vs anonymous PUBLIC-READ so browsers can retrieve content), the ordered NAT-traversal ladder (direct → UPnP → NAT-PMP → PCP → relay-coordinated hole-punch (signalling only) → relayed/TURN transport), the relay's four roles (STUN, introducer, hole-punch signalling, relayed transport), STUN reflexive-address discovery, introducer + gossip peer discovery, PEX peer-exchange (node↔node stream + the RLY-008 relay introducer binding), the Kademlia DHT with provider records that locate which peers hold content (find_node/find_providers/add_provider/ping over a framed dig-nat mTLS stream; content-key = SHA-256(domain-tag ‖ store_id[‖root[‖retrieval_key]])), the relay RelayMessage wire (RLY-001..RLY-008), the peer RPC methods (dig.getPeers/dig.announce/dig.getNetworkInfo/dig.getAvailability/dig.listInventory/dig.fetchRange), and the relay-last-fallback invariant (prefer hole-punch signalling over full relaying).

L7 · Private retrieval (onion routing)

The normative privacy-mode content-retrieval protocol: the per-request speed-vs-privacy toggle on the dig RPC surface, how a private read is onion-routed end-to-end (requester → guard/entry → middle → exit → providers → back) with a who-knows-what table, telescoping circuit construction over dig-nat mTLS (ntor X25519 + HKDF-SHA256 handshake, fixed-size 512-byte ChaCha20-Poly1305 layered cells, the RELAY command set), the onion-relay directory (dig-dht tag 0x04) and relay advertisement, guard nodes, the exit reusing the ordinary merkle-verified content read, and the honest threat model (partial-adversary unlinkability, stronger than Tor on exit integrity, weaker on anonymity-set size and Sybil cost).

Machine-readable surfaces

Every machine-readable entry point: /openrpc.json, /error-codes.json, /llms.txt, /knowledge-graph.json, the sitemap, and per-page schema.org JSON-LD — so an agent integrates DIG without scraping a single line of human prose.

Manage your node

Operate a running dig-node: the control.* admin RPCs (status, cache, peers) and the DIG Browser's My Node UI that drives them.

Methods

Complete dig RPC method set: dig.getContent, dig.getProof, dig.getCapsule, dig.getManifest, dig.listCapsules, dig.listCollectionItems, dig.getCollection, and service discovery methods.

Point a consumer at your node

Make the DIG Browser or extension read from your local dig-node first (dig.local → localhost), falling back to rpc.dig.net — local-first reads that share one .dig cache.

Protocol: Overview

Das DIG-Protokoll als sieben Schichten von unten nach oben, normativ und implementierungsdefiniert. Die capsule (storeId:rootHash) ist die fundamentale Einheit; der Host ist blind, und der Reader verifiziert gegen die Chain. Dies ist die maßgebliche Protokollreferenz.

Run a DIG node

Was ein dig-node ist, warum du einen betreiben solltest und wie du ihn installierst — das apt-Repository für Ubuntu/Debian oder der plattformübergreifende Universal-Installer.

Sharing over a remote

Publishing stores to remotes, downloading with verification, revoking roots, and understanding public vs. private access models.

Status

Where to check the health of the DIG services — the dig RPC (rpc.dig.net), DIGHUb (hub.dig.net), and the resolver (on.dig.net) — plus how RPC and provider versions are signalled.

Streaming

Streaming chunk model for byte methods: chunk object structure, 64 KiB alignment, reassembly, proof verification, and reference client loop.

The DIG SDK

@dignetwork/dig-sdk — ChiaProvider (injected window.chia + WalletConnect→Sage), DigClient (verified reads), Paywall (pay-to-unlock / NFT-gating), and the canonical CHIP-0035 spends at the /spend subpath.

Troubleshooting — get unstuck

Jeder Fehler liefert dir einen stabilen Code und eine request-id, die direkt zum Server-Log führt, On-Chain-Spends sind race-guarded, sodass du nie doppelt zahlst, und klare Pre-Flight-Guards verhindern verschwendete capsules, bevor du $DIG ausgibst.

What is the dig RPC?

Netzwerkweite Leseschnittstelle für DigStore-capsules über JSON-RPC 2.0; blind by construction, ohne Vertrauen verifizierbar und in beliebiger Größe streambar.