can somebody explain in detail how old floppy disks copy protection works? Someone told me that it was based on an error on a trace of the floppy that was read only during the copy (and never when the program on the floppy was executed)...

Thank you


There were many systems... you can find some references from the Wikipedia page. The core idea is always the same: make a "special" floppy disk such that it exhibits a peculiar behaviour that can be tested for, but not reproduced, with stock floppy disk drives. For instance, make tracks a bit thinner than normal, which allows you to put a bit more data on the floppy; a "normal" drive should succeed at reading the extra tracks (still in the physical tolerance) but not writing the same setup on a brand new disk. Another method would be to have sectors with bad data (checksum mismatch).

Such kind of physical methods were easier to pull off in the 1980s, when you could rely on specific hardware features. An Atari ST was always an Atari ST from Atari, not a clone with possible distinct hardware and thus subtly different behaviour when facing "anomalous" floppies. The openness of the PC architecture mostly killed off copy protection scheme based on weirded up floppies.

The main problem with all such methods is that the corresponding check must be done in some place in the software, so cracking the copy protection scheme usually meant finding the relevant piece of code and changing a conditional jump opcode with a nop (or an unconditional jump). The essence of all these copy protection schemes is security through obscurity, which does not work well, especially when the source element is sold by the thousand and the attackers are schoolboys with too much time on their hands.

|improve this answer|||||

Sounds like you've already got a handle on how it works (similar methods are still used to day for DVDs - over and above CSS).

If you use the OS tools to try to read the device they will try to reconstruct a stream, but the programs actually used to read content, read individual sectors and either fail softly or skip sectors which have been deliberately created with bad checksums.

|improve this answer|||||
  • Thank you. And how bad checksums can be created? – bassaidai Oct 24 '14 at 15:34
  • By writing your filesystem or using a low level disk editor. – symcbean Oct 24 '14 at 16:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.