A pure-Nim implementation of OpenTimestamps — a client and library for creating and verifying trustless Bitcoin-backed timestamps. The binary format is byte-for-byte compatible with the reference Python client (proofs round-trip in both directions).
https://github.com/lucianofedericopereira/nim-ots
Features
- Full .ots detached-proof serialization / deserialization
- Operations: append, prepend, sha1, ripemd160, sha256, keccak256
- Attestations: pending (calendar), Bitcoin block header; Litecoin / Ethereum / unknown are parsed and displayed
- Calendar HTTP client (stamp + upgrade)
- Bitcoin verification via Bitcoin Core JSON-RPC (default, like the Python client) with automatic fallback to a block explorer (blockstream.info)
- A ots CLI: stamp, upgrade, verify, info, canon
- Canonical-JSON mode so timestamps survive cosmetic reformatting
Requirements: Nim ≥ 2.0, OpenSSL (for HTTPS), and the nimcrypto package.