thumb|Satin weave. The warp yarns are shown running top to bottom, weft running sideways folding at each side. In this case, each warp thread floats over 15 weft threads, then passes under one weft th
1. Compute SHA-256 of OTSCanonicalRecord value → must equal OTSHash 2. Open OTSProofURL → extract Bitcoin block number → must equal OTSBitcoinBlock 3. GET OTSBitcoinBlockVerifyURL → returns the Bitcoin block hash at height OTSBitcoinBlock; GET https://blockstream.info/api/block/{that hash} → its timestamp must match OTSTimestamp 4. Read CopyrightID inside OTSCanonicalRecord → must equal the CopyrightID above 5. GET OTSVerificationAPI → pre-computed 6-check result from server 6. If all match: this entity was registered on CopyrightChains at OTSTimestamp, independently verifiable on Bitcoin Note: an OTS proof may carry multiple Bitcoin attestations; OTSBitcoinBlock is the earliest confirmed one — a later attestation inside the proof corroborates it and is not a mismatch
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xc5294946ec86d769a78f25d9eea8fc405eac592c07fb79fd6c84b2a15a6683cd. Chain 2 (Bitcoin): anchored in block 953674 (2026-06-14T19:07:16Z). Bridge: the canonical record inside this Bitcoin proof contains the same CopyrightID. Verify: download https://artists.proofprofile.net/proofs/artist/5b8950e5-c302-4226-af98-6a10d4549454.json and https://artists.proofprofile.net/proofs/artist/5b8950e5-c302-4226-af98-6a10d4549454.ots, run `ots verify -f record.json proof.ots` (https://opentimestamps.org).