What is the dig RPC?
Esta es la página de orientación. La especificación normativa de la interfaz de máquina — métodos, el objeto de fragmento en el wire, el perfil de nodo y los documentos OpenRPC — está en Protocolo · El dig RPC.
El dig RPC es la interfaz de toda la red para leer contenido directamente desde capsules .dig de DigStore hospedados. Es un servicio JSON-RPC 2.0 hablado sobre HTTPS POST.
Todo nodo que hospeda capsules — el nodo de referencia en https://rpc.dig.net, o cualquier nodo de terceros — expone los mismos métodos con la misma semántica. Un cliente escrito contra esta interfaz lee de toda la red a través de un único endpoint. No hay CDN; todo el servicio de contenido en DIG es vía el dig RPC.
Sirve tres cosas:
| Tienes… | Llamas… | Recibes… |
|---|---|---|
La retrieval key de un recurso (sha256(urn)) | dig.getContent / dig.getProof | El texto cifrado del recurso + una prueba de inclusión merkle (y la prueba de ejecución ZK), transmitidos en fragmentos |
| Un store id + raíz de generation | dig.getCapsule | El capsule .dig completo para esa generation, transmitido en fragmentos |
| Un store id | dig.getManifest / dig.getMetadata / dig.listCapsules | El manifiesto público de descubrimiento / el manifiesto de metadatos del store / la lista de generations confirmadas del store |
Tres propiedades que lo definen
- Ciego por construcción. Un nodo sirve texto cifrado opaco identificado por un hash. Nunca ve una URN, una clave de descifrado o texto plano. Una solicitud que no encuentra coincidencia se responde con un flujo decoy determinista e indistinguible — nunca un
404— así la vía de lectura nunca es un oráculo de existencia. Todo el descifrado y toda la verificación de pruebas ocurren en el cliente. - Verificable sin confianza. Cada byte real llega con una prueba de inclusión merkle anclada en la raíz de generation en cadena. El cliente pliega la prueba hasta la raíz y acepta solo si coincide con una raíz en la que confía. Nunca se confía en que el nodo haya devuelto bytes genuinos.
- Transmisible en cualquier tamaño. El contenido se lee en fragmentos acotados, alineados a 64 KiB, con continuación explícita. Un recurso de un kilobyte y un capsule de cien megabytes se leen con el mismo bucle, y ninguna respuesta individual es ilimitada.
Cómo encaja con DigStore
DigStore te da el formato: un store cifrado y direccionable por contenido que compila a un único capsule .wasm autodefendido, direccionado por una URN donde la URN es la clave. El dig RPC es cómo ese capsule se sirve en la red sin confiar en el host:
- Compilas un store y anclas una generation en cadena (un singleton DataLayer CHIP-0035). Su raíz de contenido es el ancla de confianza.
- Un nodo hospeda el capsule y lo expone a través del dig RPC.
- Un lector deriva
retrieval_key = sha256(urn), llama adig.getContent, reensambla el texto cifrado transmitido, verifica la prueba de inclusión contra la raíz en cadena y descifra con la clave derivada de la URN — todo del lado del cliente.
El nodo solo aprendió un hash; nunca supo qué sirvió.
Una lectura en una llamada
POST https://rpc.dig.net
Content-Type: application/json
{ "jsonrpc": "2.0", "id": 1, "method": "dig.getContent",
"params": {
"store_id": "5b1f…e9",
"root": "latest",
"retrieval_key": "9f23…c1"
} }
{ "jsonrpc": "2.0", "id": 1, "result": {
"ciphertext": "<base64>",
"total_length": 5242880,
"offset": 0, "length": 3145728,
"complete": false, "next_offset": 3145728,
"inclusion_proof": "<base64>",
"decoy": false,
"root": "a07c…4d" } }
El cliente itera sobre next_offset hasta complete, verifica inclusion_proof sobre los bytes reensamblados contra root, y luego descifra. Un resultado con "decoy": true significa no encontrado — detente y repórtalo como tal.
Cómo leer esta documentación
- Métodos — el conjunto completo de métodos (
dig.getContent,dig.getProof,dig.getProofStatus,dig.getCapsule,dig.getManifest,dig.getMetadata,dig.listCapsules,dig.health,dig.methods), sus parámetros y resultados. - Usando el RPC de la red pública — apunta tu cliente a
rpc.dig.net(o a cualquier nodo), endpoints, y cómo operar uno tú mismo. - Streaming — el modelo de fragmentos, el reensamblado, la verificación de pruebas y un bucle de cliente de referencia.
- Conformidad — lo que un nodo DEBE implementar para ser miembro de la vía de lectura de la red, además de CORS, errores y el modelo ciego en detalle.
El dig RPC es parte de DIG Network. La especificación normativa completa es la sección Protocolo · El dig RPC, la interfaz de contenido de la red.
Relacionado
- Métodos — todos los métodos del dig RPC, sus parámetros y resultados
- Streaming — el modelo de fragmentos, el reensamblado y la verificación de pruebas
- Conformidad y seguridad — el modelo ciego y lo que un nodo debe implementar
- URNs y cifrado — la URN detrás de cada retrieval key
- Conceptos y glosario — el dig RPC, el capsule y la retrieval key definidos