- An end-user running a CLI or desktop client to download a file.
- An application — a game launcher, a video player, an update service — embedding the deCDN client library.
- A content provider’s own bridge pulling content back from the CDN into your infrastructure.
What you do
- Bootstrap — generate an iroh key, query the on-chain registry, seed a peer table, subscribe to gossip.
- Discover — find which nodes have the blob you want (DHT + probes).
- Select — pick the best candidate by the unified score.
- Open a channel — on-chain USDC channel with the selected node.
- Stream + pay — receive bytes, verify against the BLAKE3 hash, sign per-MB vouchers.
- Close — settle the channel on-chain; unspent deposit refunds automatically.
What you need
- An Ethereum address with USDC (for payments) and a little native gas (for channel opens/closes).
- An iroh keypair (generated on first run).
- An internet connection that QUIC can traverse — iroh handles most NATs automatically.
What you don’t need
- TOKEN holdings (clients don’t stake).
- On-chain registration (clients are ephemeral; each session uses a fresh NodeId).
- A constant presence on the network (subscribe to gossip only while you need it).
Trust model in one sentence
You trust what you can verify. BLAKE3 hashes gate every byte; payment channels gate every transfer.How this tab is organized
| Page | What it covers |
|---|---|
| Getting started | Install, first run, simplest fetch |
| Bootstrap | Key generation, registry query, peer table, gossip |
| Account management | Ethereum key options, Safe wallets, session keys |
| Payment channels | Opening, vouchers, cadence, closing, disputes |
| Trust model | Three-tier boundary: verified, trusted, not trusted |