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 0x0c3df9b61c16a21ed2d1ccb115697238a90327a90adcf67b1072281d042c3d5e. 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/82d67db5-7bd5-4311-aab6-bfe5fd08087e.json and https://artists.proofprofile.net/proofs/artist/82d67db5-7bd5-4311-aab6-bfe5fd08087e.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 0x8603cec72e4d2ee8b89fb8f6c7d85e6039f1d94c024175c5c885293453488188. 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/6W8RzJJWPExPADFu65cGx4.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/6W8RzJJWPExPADFu65cGx4.
walks in the park // those silly stories
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xc2561f1be45d586c85f68b7acfd5a9ad404bde0ba01051e8f3a02a65a8544837. 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/7ulwAcasjhTyxe7ICX83Fd.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/7ulwAcasjhTyxe7ICX83Fd.
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xaa5f35bbe742f2e5e12f02f855449baa7fa3e6eb41e3b5d737a218e0e7f8d5cd. 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/4rro3xOUOnXYHPTS8FbujT.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/4rro3xOUOnXYHPTS8FbujT.
{"copyright_id":"0xdbb9aa81be3bff06e4e799f2f12747f9afe4901ad0aa11cf7c6226ad3fb55340","isrc":"BXCMR2000030","name":"slowly drifting off","registered_at":"2026-06-23T02:25:17Z","spotify_id":"69D67axF0RwmpoUIZjuH87","type":"track"}
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xdbb9aa81be3bff06e4e799f2f12747f9afe4901ad0aa11cf7c6226ad3fb55340. 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/69D67axF0RwmpoUIZjuH87.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/69D67axF0RwmpoUIZjuH87.