A dongle refers to a certain type of hardware that one can attach to a computer or laptop in order to make a program run. In this capacity, a dongle is used in order to implement a higher level of security as a way of preventing the illegal copying of software. This is done because copying hardware is extremely difficult when compared to the simple task of copying software.
Dongles are being used today as a part of very expensive pieces of software that is directed towards a highly specialized market. For example, prohibitively priced rendering and audio mixing software employ dongles as a way of preventing people from copying the software and illegally distributing it. Another example is with Computer Assisted Design or CAD software, which also use dongles as a security feature.
Even though a number of software companies have tried to introduce dongle security in distributing consumer software, the move has been strongly opposed by consumers. Even though specialized professionals like editors, designers and architects are amenable to the use of dongles in the software that they use, the average consumer is bothered by the whole concept of having to manage another piece of hardware just to use software. Because of this dongle-equipped consumer software has a tendency to have lackluster sales.
The earliest dongles were attached to the computer’s serial port. Upon loading the software, the program will try to detect if the hardware is attached. If it doesn’t find it, the software will refuse to load. Although this early level of security was easily circumvented with a little creative programming to fool the software into thinking the hardware is there.