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 0xcc90263a3c4d39883fea33aa84524accfeb6692c19985713b305905fb5982874. Chain 2 (Bitcoin): anchored in block 953654 (2026-06-14T16:26:51Z). Bridge: the canonical record inside this Bitcoin proof contains the same CopyrightID. Verify: download https://artists.proofprofile.net/proofs/artist/49ee4ebd-7b74-4fc6-95c7-f06e702152c6.json and https://artists.proofprofile.net/proofs/artist/49ee4ebd-7b74-4fc6-95c7-f06e702152c6.ots, the client at https://opentimestamps.org runs `ots verify -f record.json proof.ots`.
Wish We Could Turn Back Time to the Good Old Days
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 0x81c80625f25ad168c2ab0af34368c70574ec1060edd55d3ab3875dc8bdb2b815. Chain 2 (Bitcoin): anchored in block 958765 (2026-07-19T18:01:47Z), 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/TCAGY2342244 — a six-check JSON result.
you said you're obsessed with me i said me too
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
I had a feeling that I belonged I had a feeling I could be someone
I Can't Explain I Got a Feeling That I Just I Can't Erase
I Been Dancing in My Room Swaying My Feet
Hey Ladies Drop It Down Just Wanna See You Touch the Ground
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0x6614bf8d411038f5716f3b00614cf215b9bc3e6b466ff8ea2d39caffae3a950f. Chain 2 (Bitcoin): anchored in block 956822 (2026-07-05T18:48:28Z), 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/QZNWY2357249 — a six-check JSON result.
you're the one that i like i can't deny every night you're on my mind
baby do you like this beat i made it so you dance with me
kissy face kissy face sent to your phone
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0x9701cb1772b7cdf3f2b8d6ea7ba6068921a5496fda041850f9a3ac545e0b09f0. Chain 2 (Bitcoin): anchored in block 958140 (2026-07-15T10:05:23Z), 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/QZVEM1850262 — a six-check JSON result.
i don't want the world to see me cause i don't think that they'd understand
i used to rule the world seas would rise when i gave the word
when i'm out of breath she's my idol when i need to rest she's my ride or die
we never met but she's all i see at night never met but she's always on my mind
it's too cold for you here and now so let me hold both your hands
i've become so numb i can't feel you there
please stay i want you i need you oh god
no more thinking about you late at night no more running around with your friends
don't want to but i can't put nobody else above you
baby you light up my world like nobody else
Dual-chain trust anchor. Chain 1 (CopyrightChains): CopyrightID 0xbdf55358ce8879f09ea2e2c5f0b77ff7f764d0d4740b6cb556aaad9f39d80359. Chain 2 (Bitcoin): anchored in block 956826 (2026-07-05T19:27:56Z), 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/QZS632510214 — a six-check JSON result.
keep forgiving these mistakes i ain't trippin anyway
she said i am the one but the kid is not my son
strangers waiting up and down the boulevard
two trailer park girls go round the outside round the outside round the outside
did your boots stop working did your truck break down
lately i been i been thinking i want you to be happier
it's touching her chest now he takes off her vest now letting me go
it's been a long day without you my friend and i'll tell you all about it when i see you again
cause the drinks bring back all the memories of everything we been through
look what you made me do i'm with somebody new
my bad habits lead to late nights ending alone
nothing i can see but you when you dance dance dance girl
now it's all good babe roll that backward babe and play me close
please don't throw your love away please don't throw your love away
round and around and around and around we go
till the room comes off till the lights go out till my legs give out can't shut my mouth
we play games i love to avoid the depression we been here before and i won't be a victim
when i need motivation my one solution is my queen cause she stay strong
it's the way i'm feeling i just can't deny but i've gotta let go
ain't no mountain high enough ain't no valley low enough ain't no river high enough
don't go look at me with that look in your eye you really ain't going away without a fight
i need you i need you i need you right now i need you right now
if i can't be close to you i'll settle for the ghost of you
when i'm with my baby yeah all the bad things disappear
when you are young they assume you know nothing
i don't ever want to feel like i did that day
now that that don't kill me can only make me stronger i need you to hurry up
take me to the place i love take me all the way
we go together better than birds of a feather you and me
i'm so high at the moment i'm so caught up in this
you're the light you're the night you're the color of my blood
can i go where you go can we always be this close forever and ever
even when the sky comes falling even when the sun don't shine
my last made me feel like i would never try again but when i saw you i felt something i never felt
mama said don't give up it's a little complicated
you left me falling and landing inside my grave i know that you want me dead
you are my fire the one desire believe when i say i want it that way
when she was just a girl she expected the world
i know you're somewhere out there somewhere far away
sleep with one eye open gripping your pillow tight
one don't pick up the phone you know only calling cause drunk and alone
every touch is oh la la la it felt like oh la la la
breathe me in breathe me out i don't know if i could ever go without
one kiss is all it takes falling in love with me
if life is a movie then you're the best part
It's alright you were dancing through the lightning strikes