1. Compute SHA-256 of OTSCanonicalRecord value → must equal OTSHash 2. Open OTSProofURL → extract Bitcoin block number → must equal OTSBitcoinBlock 3. GET OTSBitcoinBlockVerifyURL → block must exist at that height 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
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xe74f9f3fa149b9a938b9d334317a221d3669094c45114cf350414f475c78078c. Chain 2 (Bitcoin): anchored in block 953423 (2026-06-12T21:20:00Z). Bridge: the canonical record inside this Bitcoin proof contains the same CopyrightID. Verify: download https://artists.proofprofile.net/proofs/artist/b09c67af-673f-4f2a-9185-fe47533da010.json and https://artists.proofprofile.net/proofs/artist/b09c67af-673f-4f2a-9185-fe47533da010.ots, run `ots verify -f record.json proof.ots` (https://opentimestamps.org).
1. Compute SHA-256 of OTSCanonicalRecord value → must equal OTSHash 2. GET OTSBitcoinBlockVerifyURL → block OTSBitcoinBlock must exist at that height 3. Read CopyrightID inside OTSCanonicalRecord → must equal the CopyrightID above 4. GET OTSVerificationAPI → pre-computed 6-check result from server 5. If all match: this entity was registered on CopyrightChains at OTSTimestamp, independently verifiable on Bitcoin
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xf53b2e900c6ddbb4c0fe0873de37b9a2d1ba5583ebab34d282ea48cdcb265191. Chain 2 (Bitcoin): anchored in block 956375 (2026-07-02T16:51:38Z), registered by our registry partner. Bridge: the canonical record at https://artists.proofprofile.net/proofs/track/2vAJliLJtmIkWnYmhpkA28.json contains the same CopyrightID — hash it and compare to OTSHash, then confirm the Bitcoin block independently via OTSBitcoinBlockVerifyURL or https://artists.proofprofile.net/api/v1/bot/ots/verify/track/2vAJliLJtmIkWnYmhpkA28.
{"copyright_id":"0xe691a2b4baa1fead674e850fc933f9559820373f4f5702c5cf09c59ce78b5821","isrc":"DEQR42302034","name":"Schlaflied für Anne","registered_at":"2026-06-09T14:41:50Z","spotify_id":"6DfjPgM072JKWohiOaWrXv","type":"track"}
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xe691a2b4baa1fead674e850fc933f9559820373f4f5702c5cf09c59ce78b5821. Chain 2 (Bitcoin): anchored in block 953528 (2026-06-13T15:41:10Z), registered by our registry partner. Bridge: the canonical record at https://artists.proofprofile.net/proofs/track/6DfjPgM072JKWohiOaWrXv.json contains the same CopyrightID — hash it and compare to OTSHash, then confirm the Bitcoin block independently via OTSBitcoinBlockVerifyURL or https://artists.proofprofile.net/api/v1/bot/ots/verify/track/6DfjPgM072JKWohiOaWrXv.
{"copyright_id":"0xe691a2b4baa1fead674e850fc933f9559820373f4f5702c5cf09c59ce78b5821","isrc":"DEQR42302034","name":"Schlaflied für Anne","registered_at":"2026-06-09T14:41:50Z","spotify_id":"2ONtNg85qjybJ6Zc0JxDlF","type":"track"}
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xe691a2b4baa1fead674e850fc933f9559820373f4f5702c5cf09c59ce78b5821. Chain 2 (Bitcoin): anchored in block 956312 (2026-07-02T05:09:12Z), registered by our registry partner. Bridge: the canonical record at https://artists.proofprofile.net/proofs/track/2ONtNg85qjybJ6Zc0JxDlF.json contains the same CopyrightID — hash it and compare to OTSHash, then confirm the Bitcoin block independently via OTSBitcoinBlockVerifyURL or https://artists.proofprofile.net/api/v1/bot/ots/verify/track/2ONtNg85qjybJ6Zc0JxDlF.