Software License Management and The Dongle.
Dongles have had a long and checkered past when used for Software Copy Protection and Software License Management. In the 1980’s and 1990’s ISVs selling high-value desktop and/or workstation class software to scientific and engineering customers needed to “lock” their software so that it can’t be shared with others. If even a single unlicensed copy is used, a serious revenue hit would result. What to do?
Dongles provide serial number to lock licenses
Along came the dongle. Well, it wasn’t originally called a dongle. It was a “hardware key” or “security key” or “security block”, and many other names including product names like hasp. In any case, the dongle, as it is now commonly known, was a solution to the software locking problem. It was a primitive physical device consisting of some simple electronics that, when queried through software, returned a factory-preset serial number to which a software product could be tied. This was a boon to software developers who at the time were experimenting with using, of all things, floppy disks as keys.
Weaknesses soon found
But, as soon as the use of dongles became more widespread, inherent problems surfaced. Early dongles used parallel printer ports of the PC (remember those?). Dongles were designed to allow printers to connect pass-thru style, but since these ports often had non-standard electrical characteristics including power differences, dongles sometimes failed in the field.
Failed dongle == failed software. Not good. So, ISVs kept FedEx and UPS busy, sending overnight dongle replacements – the cost of the overnight trip exceeded the cost of the dongle. Other problems surfaced too: dongles were lost or stolen, users failed to install updated software drivers to keep up with OS revisions, the dreaded dongle-snake appeared (so many dongles chained together that they literally fell off the PC), etc.
Along comes PC networking
But the biggest factor in the dongle’s demise was the arrival of PC networking. Once networks became popular, software could be tied to the hardware address of the ethernet communication card. Licenses began to be shared over the network as software license managers (like RLM) exploited the power of interconnected users to allow even casual users access to valuable software licenses.
Dongles still solve license mobility problem
So, dongles waned in popularity as a general solution for licensing software, but they found a new use – to lock the license manager’s license server to a computer. Dongles allow the license server to be moved by the end-user without involvement from the software publisher. Also, today, dongles are much cheaper, more reliable and are usually connect via USB ports – making them easy to attach to a modern PC.
Today’s floating license management and dongles
Floating licensing provides a mechanism for licenses to be shared among networked users. The whole license pool can be locked to a single server using either the server’s host ID or a dongle acting as a proxy for the server’s ID. In this way the license manager encodes the dongle’s serial number as part of the pool of licenses
Supporting Virtual Machines
In addition to the mobility advantages of dongles, virtual machine software dedicates the USB port to a single VM instance, so using a dongle is a good way to lock a license server to an instance of a virtual machine, without worring about the license server being replicated across the network.
Dongles are still an important part of a complete software license management strategy, and will likely remain so for some time.