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 0x8c36e7bf41a6f9aee55ef90f0bba4d9c6044d16ff126c0932548003450261491. 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/58c5f3c9-e98b-480b-8133-e990587233b8.json and https://artists.proofprofile.net/proofs/artist/58c5f3c9-e98b-480b-8133-e990587233b8.ots, run `ots verify -f record.json proof.ots` (https://opentimestamps.org).
{"copyright_id":"0xf03277ccf8be1c080843bcc42dbf96da60b341a35cc1345e18740134675e5d39","isrc":"QM24S2400201","name":"In My City (Bar Wars Cypher #1)","registered_at":"2026-06-08T12:36:42Z","spotify_id":"62Ff4SduRXETTUUrIwXohH","type":"track"}
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 0xf03277ccf8be1c080843bcc42dbf96da60b341a35cc1345e18740134675e5d39. Chain 2 (Bitcoin): anchored in block 953520 (2026-06-13T13:32:09Z), registered by our registry partner. Bridge: the canonical record at https://artists.proofprofile.net/proofs/track/62Ff4SduRXETTUUrIwXohH.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/62Ff4SduRXETTUUrIwXohH.
{"copyright_id":"0xeb8338a900be5fd1216e88a356e231cd245344959ce4a6e0964bde01277a2e01","isrc":"QM24S2402520","name":"Ride 4 Me (Unreleased Bar Wars Cypher)","registered_at":"2026-06-09T07:46:03Z","spotify_id":"6oXCveaUJUUyDtEIQMWV2l","type":"track"}
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xeb8338a900be5fd1216e88a356e231cd245344959ce4a6e0964bde01277a2e01. Chain 2 (Bitcoin): anchored in block 953536 (2026-06-13T17:25:41Z), registered by our registry partner. Bridge: the canonical record at https://artists.proofprofile.net/proofs/track/6oXCveaUJUUyDtEIQMWV2l.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/6oXCveaUJUUyDtEIQMWV2l.
{"copyright_id":"0xad81f40bf6c211773e453f279afccd44e2293e8c0530560fcb5b919b527e11d1","isrc":"QZTAX2411629","name":"It Goes Down (Thizzler Cypher)","registered_at":"2026-06-24T12:41:21Z","spotify_id":"7fo3vK8Quy6sZAi9RBu7Bk","type":"track"}
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xad81f40bf6c211773e453f279afccd44e2293e8c0530560fcb5b919b527e11d1. Chain 2 (Bitcoin): anchored in block 956304 (2026-07-02T03:55:08Z), registered by our registry partner. Bridge: the canonical record at https://artists.proofprofile.net/proofs/track/7fo3vK8Quy6sZAi9RBu7Bk.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/7fo3vK8Quy6sZAi9RBu7Bk.
It Goes Down (Thizzler Cypher) - Song Version