The use of checksum techniques on shared media meant that when a user intentionally copied something from a disk onto another media type, it would slightly change something about that data, even if it were the headers of a file or table of contents. A small routine would run around and 'sum' looking for a known result, and if the result was wrong, the inference was the user was attempting to run from an illegitimate source. This got old pretty fast. People got sick of being tied to one form of media for all reads, loads and application dependence.
In 1980, a software firm produced a piece of software known as WordCraft. The company became the first to ship a hardware protection mechanism to control software usage and piracy. Enter, the 'Dongle'. The premise behind the dongle was simple. You couldn't start a piece of software without the dongle being inserted into the computer, be it through a serial port, or a PET cassette port (as it was on the Commodore 64).
Over time, the concept of the dongle became more and more refined, with everything from simple UART (Universal Asynchronous Receiver Transmitter) systems being used to 'test' the validity of a dongle, to small microprocessors even being embedded in the devices. The more complex these systems became, ironically, the simpler they were to crack. The reason for this was the exposure through bus tracing of the protocol being used to negotiate the transaction between the software a user would run, and the hardware dongle. In trivialised dongle systems, the designer might simply put a return statement into execution to the effect of:
IF dongleUID is PRESENT
THEN return 1;
ELSE return 0;
Such Boolean return statements are easily cracked by inserting spurious code on the localhost, or target machine.
Dongles have become more intelligent however, with cryptographic sums, crypto processors, hardware drivers and real time clocks (RTC) being employed. Interestingly, the dongle was the precursor to a whole line of new protection technologies to follow that, without the dongle, probably would never have existed.
The hardware checksum
By the mid to late 1980s dongles were being beaten, and the software checksum was a bit of a joke. Somebody got the idea that a global hardware level checksum might be a useful mechanism in slowing down the rapid growth of piracy. The idea was simple. Take a big bit of hardware, that has some known components and give each component some kind of 'signature' or assigned value. That value would then be added to the rest of the components in the host, to form the global checksum for the device.
When hardware piracy and the modifications being used to defeat software checks in hardware became apparent, the use of the global checksum came into its own. The global sum, if interrupted by a newly introduced component or unauthorised part, would fail, potentially rejecting the user from running a certain type of software or proprietary code. For those following closely, the Xbox 360 and PlayStation 3 both use a hardware level checksum across their components. Logically, the introduction of mod chips into the consoles has been difficult, as a result. Mess with the hardware, and you're messing with the software.