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 0xe43a805c46df4bc3aa33704be5fd789d660e6126e18734ae75270583c328a212. Chain 2 (Bitcoin): anchored in block 953768 (2026-06-15T09:30:06Z). Bridge: the canonical record inside this Bitcoin proof contains the same CopyrightID. Verify: download https://artists.proofprofile.net/proofs/artist/bfa0f683-3669-4af0-8a01-0835cc24dc8d.json and https://artists.proofprofile.net/proofs/artist/bfa0f683-3669-4af0-8a01-0835cc24dc8d.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 0x99352d77134aae25e2f967291e3a0913fd146218f99cf8f7a21fd58f729372cb. Chain 2 (Bitcoin): anchored in block 956728 (2026-07-05T01:43:49Z), 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/QZXYG2500033 — a six-check JSON result.
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0x967f37d70ba055a11fbfa4a031e647a6659c128e9729bcac0beee60523463fc3. 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/QZZ7M2599144 — a six-check JSON result.
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0x129d3a27a69ed22214cd8d68774b346276baad0ddd54fb0788e3aac45110256d. 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/QZZ7W2519318 — a six-check JSON result.
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0x3c67c18567ed4554b09ff51b88745e48768f5f9469c4868fc2ecddd7285d9a88. 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/QZZ7W2550752 — a six-check JSON result.