<hardware> /dong'gl/ (From "dangle" - because it dangles off the computer?)

1. <security> A security or copy protection device for commercial microcomputer programs that must be connected to an I/O port of the computer while the program is run. Programs that use a dongle query the port at start-up and at programmed intervals thereafter, and terminate if it does not respond with the expected validation code.

One common form consisted of a serialised EPROM and some drivers in a D-25 connector shell.

Dongles attempt to combat software theft by ensuring that, while users can still make copies of the program (e.g. for backup), they must buy one dongle for each simultaneous use of the program.

The idea was clever, but initially unpopular with users who disliked tying up a port this way.

By 1993 almost all dongles passed data through transparently while monitoring for their particular magic codes (and combinations of status lines) with minimal if any interference with devices further down the line.

This innovation was necessary to allow daisy-chained dongles for multiple pieces of software.

In 1998, dongles and other copy protection systems are fairly uncommon for Microsoft Windows software but one engineer in a print and CADD bureau reports that their Macintosh computers typically run seven dongles: After Effects, Electric Image, two for Media 100, Ultimatte, Elastic Reality and CADD. These dongles are made for the Mac's daisy-chainable ADB port.

The term is used, by extension, for any physical electronic key or transferable ID required for a program to function. Common variations on this theme have used the parallel port or even the joystick port or a dongle-disk.

An early 1992 advertisment from Rainbow Technologies (a manufacturer of dongles) claimed that the word derived from "Don Gall", the alleged inventor of the device.

The company's receptionist however said that the story was a myth invented for the ad.

[Jargon File]


2. A small adaptor cable that connects, e.g. a PCMCIA modem to a telephone socket or a PCMCIA network card to an RJ45 {network cable}.

< Previous Terms Terms Containing dongle Next Terms >
Domain Software Engineering Environment
domain-specific language
domain theory
Donald Knuth
Don't do that then!