Verify a record
…
Computing…
Do it yourself
The hash is SHA-256 over the RFC 8785 canonical bytes of the record (the envelope's record field) with the proofs block removed. The signatures are over that hash.
N=000001
curl -s https://www.hiremeasi.com/api/v1/records/$N > env.json
curl -s https://www.hiremeasi.com/api/v1/records/$N/ots -o $N.ots
npm i canonicalize @noble/hashes
node --input-type=module -e "
import fs from 'node:fs'; import c from 'canonicalize';
import { sha256 } from '@noble/hashes/sha2.js'; import { bytesToHex } from '@noble/hashes/utils.js';
const { proofs, ...r } = JSON.parse(fs.readFileSync('env.json','utf8')).record;
console.log(bytesToHex(sha256(new TextEncoder().encode(c(r)))) === proofs.sha256 ? 'hash ok' : 'MISMATCH');"
ots verify $N.ots # Bitcoin time proof, once the block existsWhere a record lives
- Bitcoin (OpenTimestamps) — time proof
- Internet Archive — URL snapshots
- Dataset — records.jsonl, CC0, proofs inlined; a daily snapshot goes to Hugging Face once there are records
Bitcoin timestamping is live. Internet Archive copies follow once enabled.