OTSkit.ts

Empieza a preservar evidencia digital verificable.

OTSkit crea pruebas OpenTimestamps portables para archivos, carpetas y paquetes de preservación: hashea localmente, sella contra calendarios, actualiza a confirmación Bitcoin y verifica después sin necesidad de confiar en OTSkit.

Sin cuentasHash localOpenTimestampsVerificación Bitcoin

Ciclo de vida

Cómo funciona una prueba

Archivo o carpetaSHA-256 localPrueba pendingUpgradePrueba confirmedVerify
Archivo o carpeta
El punto de partida. El archivo nunca sale de tu máquina.
SHA-256 local
Se calcula el hash localmente. Solo este hash viaja a los calendarios.
Prueba pending
Los calendarios registran el hash y devuelven una prueba pendiente de Bitcoin.
Upgrade
Bitcoin incluye el hash en un bloque. Se fusiona la attestation en la prueba.
Prueba confirmed
La prueba es completa: tiene una attestation Bitcoin verificable offline.
Verify
Cualquier cliente OTS puede verificar la prueba. Sin confiar en OTSkit.
Pending no es un error. Significa que la prueba se ha enviado a los calendarios y está esperando confirmación Bitcoin. El upgrade puede tardar entre 30 minutos y unas horas.

Quick starts

Empieza en minutos

Con un agente AI

$ npm install -g @otskit/mcp
$ ots-mcp setup claude-code

Luego instala la skill preserve en Claude Code:

$ /plugin install preserve@otskit-skills

Y dile al agente:

claude-codechat
preserve this folder
stamp this document
archive this: contract.pdf

Con el SDK TypeScript

$ npm install @otskit/client
stamp.tstypescript
import { OpenTimestampsClient, hashFile } from '@otskit/client'

const client = new OpenTimestampsClient()
const hash = await hashFile('document.pdf')
const proof = await client.stamp(hash)
// ~60 min later:
const upgraded = await client.upgrade(proof)
const result = await client.verify(upgraded, hash)
console.log(result.valid, result.blockHeight)

Con la CLI de MCP

$ ots-mcp stamp <sha256>
$ ots-mcp list pending
$ ots-mcp upgrade <id>
$ ots-mcp verify <id>

Archivos

Qué significa cada archivo

.ots

Prueba OpenTimestamps

El árbol de prueba binario. Portable, verificable offline con cualquier cliente OTS compatible.

.sha256

Hash del objeto sellado

El SHA-256 exacto que está anclado en el .ots. En Skills, es el hash del ZIP final — no checksums internos.

.stamp-id.txt

Referencia local OTSkit

El ID que usa @otskit/mcp para lookup, upgrade y verify. No es la prueba — es el puntero local.

.zip

Paquete de preservación

Solo cuando usas Skills. El ZIP contiene la estructura BagIt completa: data/, manifests, PREMIS y OAIS.

Trust model

Modelo de confianza

OTSkit no necesita tus archivos.
Los archivos se hashean localmente.
Solo los hashes se envían a los calendarios.
Las pruebas son portables.
La verificación no requiere confiar en OTSkit.
OTSkit prueba que un hash existía antes de un bloque Bitcoin. No prueba autoría, propiedad ni equivale a notarización legal.

FAQ

Preguntas frecuentes

¿Qué significa pending?

Que la prueba se ha enviado a los calendarios OpenTimestamps pero Bitcoin aún no ha incluido el hash en un bloque. Es el estado normal después de stamp(). Pending no es un error.

¿OTSkit sube mis archivos?

No. El hash SHA-256 se calcula localmente. Solo el hash (32 bytes) viaja a los calendarios públicos. El archivo nunca sale de tu máquina.

¿Puedo verificar sin OTSkit?

Sí. El archivo .ots es un formato abierto. Cualquier cliente OpenTimestamps compatible puede verificar la prueba directamente contra Bitcoin.

¿Cuál es la diferencia entre .ots y .stamp-id.txt?

.ots es la prueba criptográfica portable — el artefacto permanente. .stamp-id.txt es la referencia local que usa @otskit/mcp para lookup, upgrade y verify. El .stamp-id.txt no es la prueba.

¿Esto es notarización legal?

No. OTSkit prueba que un hash existía antes de un bloque Bitcoin. No prueba autoría, propiedad ni tiene validez legal equivalente a una notaría.