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
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xe16b8f66b776fef65e357f535cfcc7c89df483710cfcdb133b9dda522cb5ac68. Chain 2 (Bitcoin): anchored in block 954342 (2026-06-19T03:22:39Z). Bridge: the canonical record inside this Bitcoin proof contains the same CopyrightID. Verify: download https://artists.proofprofile.net/proofs/artist/9242df16-ea87-4180-b8b4-e86954075aa0.json and https://artists.proofprofile.net/proofs/artist/9242df16-ea87-4180-b8b4-e86954075aa0.ots, run `ots verify -f record.json proof.ots` (https://opentimestamps.org).
Garlic Parm and Other Flavors Freestyle (Not a Freestyle Though)
I Heard the End Was Coming, So I Copped a Box of Burritos
Do Enough Little Things and There's a Big Effect for All of Us
The Ambiguity of Silver Lines and Gray Skies
Cleetwood Cove on Our Map, A Star and Circle Jotted 'round It
It Seems I'm Still Writing Songs About Exterminating Rats
Let's Hear It for the Heroes We've Been Treating Like Some Hostages
I'm Sorry That It's Been a While, But I'm Going Wild at My Home
Probably Should Have Fixed the Leaky Well
Good Thing the Long Days Keep Me Awake at Night
It's a Fine Line Between Planted and Buried