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 0x06a1dae8ed5eee89474d78a05b81c69857d94e45c50da8c48e4f46ec9b239e17. Chain 2 (Bitcoin): anchored in block 954066 (2026-06-17T08:11:48Z). Bridge: the canonical record inside this Bitcoin proof contains the same CopyrightID. Verify: download https://artists.proofprofile.net/proofs/artist/64fa40b8-0f5c-4eeb-a42b-04b88969b6d0.json and https://artists.proofprofile.net/proofs/artist/64fa40b8-0f5c-4eeb-a42b-04b88969b6d0.ots, the client at https://opentimestamps.org runs `ots verify -f record.json proof.ots`.
1. Confirm isrcCode identifies the recording in the pre-2022 source corpus and cc-db-prod record 2. GET OTSVerificationAPI → server-side canonical-record, hash, and attestation checks must pass 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. Confirm CopyrightID is the CopyrightChains transaction hash 5. If all match: the cc-db-prod record is independently anchored on Bitcoin at OTSTimestamp 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 0xf6ec0022e975753c9ac35d56382c55c860640fa055323c5aca658d65cc9da8cf. Chain 2 (Bitcoin): anchored in block 956772 (2026-07-05T10:01:46Z), registered by our registry partner. The server verifies the private canonical record against OTSHash without exposing internal provider keys. Confirm the public ISRC, CopyrightID, and Bitcoin evidence at https://artists.proofprofile.net/api/v1/bot/ots/verify/track/TCAJH2505363 — a six-check JSON result.
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xc3277b3932672ef7e57ba8f52769db809434feddcbd20e7fff478137f4e8ab8a. Chain 2 (Bitcoin): anchored in block 959024 (2026-07-21T15:31:18Z), registered by our registry partner. The server verifies the private canonical record against OTSHash without exposing internal provider keys. Confirm the public ISRC, CopyrightID, and Bitcoin evidence at https://artists.proofprofile.net/api/v1/bot/ots/verify/track/TCAJM2511497 — a six-check JSON result.
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0x8753b9a24a7ba856e817fd44f5a1ea0e7634c43064c83b5b1184e5fe7bd9d0f7. Chain 2 (Bitcoin): anchored in block 958607 (2026-07-18T21:01:11Z), registered by our registry partner. The server verifies the private canonical record against OTSHash without exposing internal provider keys. Confirm the public ISRC, CopyrightID, and Bitcoin evidence at https://artists.proofprofile.net/api/v1/bot/ots/verify/track/TCAJM2511558 — a six-check JSON result.
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0x8f1ce88214c113b0f523ccc4969d894c183220f718e8d20bd286e5470fd95bcd. Chain 2 (Bitcoin): anchored in block 956634 (2026-07-04T10:04:33Z), registered by our registry partner. The server verifies the private canonical record against OTSHash without exposing internal provider keys. Confirm the public ISRC, CopyrightID, and Bitcoin evidence at https://artists.proofprofile.net/api/v1/bot/ots/verify/track/TCAJM2512063 — a six-check JSON result.