@umarise/cli
v1.4.0
Published
Anchor files to Bitcoin from the command line. Generate .proof bundles for offline verification.
Downloads
2,162
Maintainers
Readme
@umarise/cli
Anchor files to Bitcoin. Verify proofs offline.
npm install -g @umarise/cliUsage
export UMARISE_API_KEY=um_your_key
# Anchor a file
umarise anchor document.pdf
# First run output:
# ✓ hash computed: sha256:a1b2c3...
# ✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
# ℹ proof.ots pending — Bitcoin confirmation takes ~2 hours
# ✓ certificate saved: document.pdf.proof
# After ~2 hours, run again:
umarise anchor document.pdf
# Second run output:
# ✓ hash computed: sha256:a1b2c3...
# ✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
# ✓ proof.ots included (Bitcoin block 935037)
# ✓ proof saved: document.pdf.proofSame command, always does the right thing. No daemon. No state files.
Commands
umarise anchor <file>
Hash and anchor a file. Creates a .proof ZIP immediately.
- First run: bundle contains
certificate.jsononly (Bitcoin proof pending) - After ~2 hours: bundle contains
certificate.json+proof.ots
umarise anchor document.pdfumarise proof <file>
Full proof lifecycle in one command:
- Hash the file locally (SHA-256)
- Anchor the hash (or detect it's already anchored)
- Check if Bitcoin proof is ready
- If ready: download
.ots, build.proofZIP, verify locally
Idempotent — run it as many times as you want on the same file.
umarise verify <file> [proof]
Verify a file against its .proof bundle. Tries offline verification first (OpenTimestamps), falls back to online.
umarise verify document.pdf
# or explicitly:
umarise verify document.pdf document.pdf.proofOutput
Anchor (before Bitcoin confirmation)
✓ hash computed: sha256:a1b2c3...
✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
ℹ proof.ots pending — Bitcoin confirmation takes ~2 hours
✓ certificate saved: document.pdf.proofAnchor (after Bitcoin confirmation)
✓ hash computed: sha256:a1b2c3...
✓ anchored: origin_id f47ac10b-58cc-4372-a567-0e02b2c3d479
✓ proof.ots included (Bitcoin block 935037)
✓ proof saved: document.pdf.proofVerify
✓ hash matches
✓ anchored in Bitcoin block 935037
✓ no later than: 2026-03-04
✓ proof valid — independent of UmariseProof bundle
<file>.proof is a ZIP containing:
certificate.json— origin metadata (hash, origin_id, timestamp, block height)proof.ots— OpenTimestamps binary proof (Bitcoin anchor)
The CLI is content-blind: your file never leaves your system. Only the SHA-256 hash is transmitted. You are responsible for storing the original file alongside the .proof bundle.
You can verify independently — no Umarise infrastructure needed:
unzip document.pdf.proof
cat certificate.json # inspect origin metadata
ots verify proof.ots # verify against BitcoinOr use the reference verifier: verify-anchoring.org
Configuration
| Variable | Required | Description |
|---|---|---|
| UMARISE_API_KEY | For anchor and proof | Partner API key (um_...) |
Or pass --api-key <key> to the command.
verify requires no API key — verification is a public utility.
What this CLI does NOT do
- Store files (hash-only, bytes never leave your system)
- Manage accounts or sessions
- Interpret content or meaning
- Replace legal processes
License
Unlicense (Public Domain)
