8 min de lectura
Probar un archivo de un lote de Merkle: el certificado de inclusión
Cuando muchos hashes de archivos se publican bajo una sola raíz de Merkle en Cardano, un certificado de inclusión es un pequeño archivo descargable que prueba que un archivo concreto formaba parte de ese lote — comprobable en tu propio navegador, sin confianza en CardanoWall, para siempre.

Cuando publicas un lote de archivos en Cardano, solo una pequeña huella va a la cadena: una única raíz de Merkle que representa a toda la lista. Eso mantiene barata la publicación. Pero plantea una pregunta evidente: si en la cadena solo está la raíz, ¿cómo pruebas más tarde que un archivo concreto estaba de verdad en el lote?
La respuesta es un certificado de inclusión: un pequeño archivo que puedes descargar y que prueba que el hash de un archivo concreto formaba parte de ese lote publicado. Cualquiera puede comprobarlo en su propio navegador, contra cualquier explorador público de Cardano, sin confiar en CardanoWall. Y como la prueba va integrada en el archivo, sigue funcionando para siempre.
Este es el compañero cotidiano de la agrupación de Merkle. La agrupación es la forma de comprometerte con miles de archivos a la vez; un certificado de inclusión es la forma de volver a sacar uno de ellos y probarlo más tarde.
¿Qué problema resuelve un certificado de inclusión?
Imagina que el año pasado publicaste mil archivos en un solo lote: una carpeta de contratos, un conjunto de artefactos de release, un día de registros de auditoría. Todos quedaron plegados en una sola raíz de Merkle, y esa raíz se selló con tiempo en Cardano. Barato, compacto, listo.
Ahora alguien cuestiona solo uno de esos archivos. Quizá una contraparte pregunta: «¿Puedes demostrar que este contrato exacto existía antes de la fecha límite?». La blockchain solo guarda la raíz, no el archivo ni la lista. Apuntar a la transacción prueba que existía algún lote de un tamaño conocido, pero no que este documento concreto estuviera dentro.
Un certificado de inclusión cierra esa brecha. Es un archivo diminuto y autocontenido que dice, en esencia: «el hash de este archivo era el elemento número 42 del lote que hay detrás de esta transacción de Cardano, y aquí está la operación exacta que cualquiera puede ejecutar para confirmarlo». Entregas el certificado y la otra parte lo comprueba sin necesitar que tú, tu cuenta o incluso nuestra web sigan existiendo.
¿Qué contiene realmente un certificado?
Piénsalo como un sobre de pruebas sellado con tres partes.
- La huella de tu archivo. No el archivo en sí, solo su hash. El certificado nunca lleva el contenido de tu documento, así que es seguro compartirlo incluso cuando el archivo es privado.
- El camino de la prueba. Una breve lista de huellas «hermanas» que permite a cualquiera plegar el hash de tu archivo de nuevo hacia arriba en el árbol de Merkle y llegar exactamente a la raíz publicada. Esta es la parte que hace al certificado autocontenido: la operación va integrada, así que nadie tiene que pedirte nunca el resto del lote.
- El anclaje en la blockchain. La transacción de Cardano en la que se publicó la raíz, el tiempo que la blockchain registró para ella y un par de enlaces a exploradores públicos para que cualquiera pueda consultarlo por su cuenta.
También incluye una línea claim en lenguaje claro que indica qué prueba el certificado, y una breve nota sobre cómo verificarlo de forma independiente. Un mismo certificado puede cubrir un archivo o varios a la vez: cada uno recibe su propio camino de prueba y una marca verified clara.
CardanoWall puede entregarte este sobre en un par de formatos: un archivo JSON (el original legible por máquina que las herramientas pueden volver a comprobar) y un PDF (una versión legible e imprimible para personas y expedientes legales, con el JSON guardado dentro como adjunto, de modo que el documento sigue siendo verificable por máquina).
¿Cómo consigues uno?
Lo creas tú mismo, en la página de la transacción, en tu navegador.
Abre la página pública de la transacción que transportó el lote. Como el registro contiene una raíz de Merkle, la página ofrece una comprobación de inclusión. A partir de ahí son dos pequeños pasos:
- Indícale qué archivo. O bien pegas el hash del archivo, o simplemente sueltas el archivo sobre la página: tu navegador calcula su hash localmente y nunca lo sube.
- Lee el resultado. La página obtiene la lista de hojas del lote, recalcula la prueba y te muestra un resultado claro en verde (tu archivo está en el lote) o rojo (no lo está).
Cuando está en verde, descargas el certificado: JSON, PDF o ambos. Esa descarga es la prueba portátil. Envíala por correo, archívala, adjúntala a un contrato, déjala en una sala de datos. A partir de ese momento es completamente independiente de CardanoWall.
Todo el proceso ocurre en el lado del cliente. No generamos el certificado en un servidor para luego pedirte que confíes en él; tu propio navegador hace el trabajo, que es precisamente lo que hace fiable el resultado.
¿Por qué nadie tiene que confiar en CardanoWall?
Porque nada del certificado depende de que seamos honestos, estemos en línea o sigamos en activo.
Dentro de un certificado de inclusión hay dos afirmaciones, y ambas son cosas que cualquiera puede comprobar por sí mismo:
- Tu archivo estaba en el lote. Un verificador pliega el hash de tu archivo a lo largo del camino de la prueba y confirma que reproduce la raíz publicada. Esto es pura aritmética: solo necesita el archivo del certificado, nada más. Si hubiera cambiado aunque fuera un solo bit de tu archivo, el plegado caería en una raíz distinta y la comprobación fallaría.
- La raíz está realmente en Cardano. Un verificador busca la transacción en cualquier explorador público de Cardano —Cardanoscan, AdaStat, el que él mismo elija— y confirma que esa misma raíz aparece en el registro en cadena. En esa consulta no interviene ningún servidor de CardanoWall.
Juntas, esas dos comprobaciones prueban que el archivo existía en o antes del tiempo que la blockchain estampó en esa transacción. Y ese tiempo viene de Cardano, no de nosotros. No podemos adelantar un bloque, antedatar una transacción ni editar la historia en silencio; la blockchain decide cuándo ocurrieron las cosas. Ese es justamente el sentido de anclar a una cadena pública en lugar de pedirte que confíes en el reloj de una empresa.
Si CardanoWall desapareciera mañana, cada certificado que hayamos emitido seguiría verificándose. La herramienta de línea de comandos de código abierto cardanowall, y cualquier herramienta independiente que entienda el formato, pueden volver a ejecutar las mismas comprobaciones.
flowchart LR
A["Tu archivo"] -->|"hash local"| B["Hash del archivo"]
B --> C["Plegar el camino de la prueba"]
C --> D["Raíz recalculada"]
E["Transacción de Cardano<br/>(explorador público)"] --> F["Raíz publicada + tiempo de bloque"]
D -->|"deben coincidir"| F
F --> G["Existía en o antes<br/>del tiempo de bloque"]¿Qué no prueba un certificado?
Un certificado es preciso sobre una cosa y guarda silencio sobre todo lo demás, y ser honesto en eso es justamente lo que lo hace fiable.
Prueba que el hash de un archivo concreto existía en o antes del tiempo de bloque de la blockchain, y que formaba parte del lote comprometido. Eso es todo. En particular:
- No prueba quién creó el archivo. Un certificado no dice nada sobre la autoría. Cualquiera podría haber publicado el lote. (En Label 309, la autoría es una firma aparte y opcional, nunca se da por supuesta; consulta qué no prueba una prueba.)
- No prueba que el archivo sea verdadero, exacto o lícito. Prueba que los bytes existían en cierto momento, no que lo que dicen sea correcto.
- No prueba que el archivo sea la única versión ni la original. Prueba que este archivo exacto estaba en el lote, no que no exista ninguna otra versión.
- No es un sello de tiempo «cualificado». Es un sello de tiempo anclado en blockchain, de la misma familia que otros sellos de tiempo de blockchain. Es una prueba corroborativa sólida de la cronología, pero no es un sello de tiempo electrónico cualificado eIDAS emitido por una autoridad regulada. Si un proceso exige específicamente un sello de tiempo cualificado, esto por sí solo no cumple ese requisito (consulta prueba de existencia frente a una autoridad de sellado de tiempo).
El valor del certificado está precisamente en que no afirma nada de más. Fija la cronología y la integridad, y deja el significado a los documentos y a las personas que lo rodean.
¿Cómo se relaciona esto con OpenTimestamps?
Si ya conoces OpenTimestamps, la idea te resultará familiar.
OpenTimestamps te da un pequeño archivo de prueba .ots: un sello de tiempo portátil y autocontenido que cualquiera puede verificar más tarde sin confiar en el servicio que lo creó. Un certificado de inclusión es algo de la misma forma —un archivo de prueba portátil que puedes entregar a cualquiera— con dos diferencias que conviene conocer.
La autoridad de sellado de tiempo es la blockchain de Cardano, y el tiempo se toma del bloque que transportó tu raíz, en lugar de un servidor de calendario. Y la operación de la prueba es la misma construcción de árbol de Merkle que se usa en el resto del estándar, de modo que un solo certificado puede extraer un archivo de un gran lote comprometido. El mismo espíritu, distinto anclaje.
Para una comparación más completa, lado a lado, consulta cómo se compara la prueba de existencia con OpenTimestamps.
La versión corta
Publica muchos archivos bajo una sola raíz de Merkle y mantendrás minúsculo el coste de la blockchain. Un certificado de inclusión es la forma de probar más tarde que cualquiera de esos archivos estaba de verdad en el lote: una pequeña descarga, comprobable en tu propio navegador, contra cualquier explorador público de Cardano, con el tiempo suministrado por la cadena y sin confianza en CardanoWall. El camino de la prueba va integrado en el archivo, así que el certificado sigue funcionando mucho después de que cualquier herramienta, cuenta o empresa concreta haya desaparecido.
Para seguir leyendo
- Un registro para miles de archivos: cómo la agrupación de Merkle pliega toda una lista en la única raíz contra la que prueba un certificado.
- Cómo se compara la prueba de existencia con OpenTimestamps: el pariente más cercano, otro archivo de prueba portátil y autoverificable.
- Qué prueba — y qué no prueba — una prueba: los límites honestos que se aplican a todo certificado.
- Verifica un registro Label 309: comprobar el registro en cadena al que apunta el anclaje de un certificado.
- El estándar, los SDK y la CLI de código abierto, y el texto de la especificación: label309.org y github.com/cardanowall.