4 ms·
Why can't you also make a copy at the block level?
by I_dev_outdoors 4y ago
Why can't you also make a copy at the block level?
- comboy 4y agoProtection is at the physical level. I mean, it was for the CDs, but you can easily imagine stuff that you can press onto the disc that your burner can't do. https://youtu.be/XUwSOfQ1D3c?t=481 https://youtu.be/XUwSOfQ1D3c?t=481
- sumtechguy 4y agoBR is one part key exchange, one part manufacturing, one part firmware lockouts using that key. So if you mod a drive you probably could get raw data from the disc. The problem is getting that back out to a disc correctly that another unmoded player would like it. There are projects out there that are reading data right off the read head. But they are more focused on laserdisc items.
- jaywalk 4y agoPart of the copy protection includes physical features of the disc that must be pressed into it when it's produced, meaning a BluRay writer has no way of replicating it.
- bombcar 4y agoThis is usually what they add, though the Nintendo Gamecube used a DVD-similar format at a different size to make it harder to copy. They also ran at CAV (constant angular velocity) instead of constant linear velocity (CLV) which lead to the rumor that they "spin backwards".
- dundarious 4y agoMy understanding is that the PS1 copy protection encoded the first pits and peaks in a way that a normal CD drive’s error correction logic would tolerate, but in such a way that the special firmware on the PS1 could detect the profile of the “errors” and ensure they matched expectations. Consumer CD Burners didn’t have firmware (or maybe even the physical capability) to reproduce these “errors”. Imagine a vinyl record where the start of the track has a groove that isn’t perfectly tracing the perimeter, but is actually a low amplitude sine wave of a certain frequency, waving in to the center and out to the perimeter. Any record player could trace the groove correctly, despite the fact that there is a low amplitude sine wave, and you’d hear the audio correctly (error correction). But a special record player could even detect the sine wave and reject records that don’t have it. I’m hand-waving away the fact that you’d get a little bit of wow and flutter from the sine wave, but you get the idea.
- Thoreandan 4y agoExcellent analogy. You could, if you had a full CD pressing & mastering plant, copy those discs with "wobble groove" and all. But it's a clever clever side channel. https://archive.ph/LuPaY#:~:text=they%20track%20the%20%27-,wobble%20groove,-%27%20of%20the%20disc https://archive.ph/LuPaY#:~:text=they%20track%20the%20%27-,w...
- eatbitseveryday 4y agoAwesome, I learned a lot in this thread. Thank you (plural) for the answers and your time to reply to my question!
- rasz 4y agohttps://en.wikipedia.org/wiki/Wobble_frequency https://en.wikipedia.org/wiki/Wobble_frequency Afaik Wobble is pre molded in polycarbonate layer and cant be altered by CD Writer no matter the firmware. https://en.wikipedia.org/wiki/Absolute_Time_in_Pregroove https://en.wikipedia.org/wiki/Absolute_Time_in_Pregroove
- TacticalCoder 4y ago> Why can't you also make a copy at the block level? I don't know about CDs / BluRays but similar to what user jaywalk answered: back in the floppy disks days some copy-protection relied on physical differences created on purpose on the original game. It could be something as "simple" as damaging a track on purpose, by punching a hole in it. Then the game would try to read the data, any data, from that track. And the read command had to fail. A dumb block level copy wouldn't work: it could of course not physically punch a hole in a floppy disk. So pirate groups would crack the game and ship a version of the game without the copy protection and these could be copied at will.
- ramses0 4y agoA simpler explanation than some of the below: imagine a damaged CD (or floppy) where one of the “blocks” returned inconsistent data. for x = 1 to 10: total += (read $DAMAGED_BLOCK) mod 2 assert total > 2 and total < 8 Basically you’d need extra metadata to go along with your block-copy and a custom driver to know which blocks should return inconsistent data. Plain English explanation of the above code would be read a sector multiple times, make sure it is never always just even or just odd, but instead varies. Usually perfection in digital media is what you strive for, but strategically introducing imperfections has a long history in authenticating “genuine” products.
- MadVikingGod 4y agoSo think of a block on a CD as some amount of data (like 512 bytes), and some amount of error correction bytes. When the CD is copied those blocks aren't copied exactly, but the data is read, corrected and the block is written with the corrected data and error correction data. Most formats don't record bad blocks, nor do consumer writes write invalid blocks. One of the original methods used as copy protection used a special industrial writer write a invalid block, data was ok but the error correction would say it's something different, and check because the consumer hardware wouldn't read or write these blocks.
- mnw21cam 4y agoYes, that's one of the ways. The block size on a CD is 2kB plus error correction, by the way.