upvote
Dongles were extremely widely used in the 1990s and early 2000s; for anything more advanced than consumer software you'd almost expect them? Almost every DAW, video editor, high-end compiler, engineering/CAD package, or 3D suite used them, certainly.

I think sometime in the late 1990s FlexLM switched from dongles to "hardware identifiers" that were easily spoofed; honestly I don't think this was a terrible idea since to this article's conclusion, if you could reverse one you could reverse the other.

But this concept was insanely prevalent for ~20 years or so.

One of the biggest problems was not having enough ports. Some parallel port dongles tried to ignore communication with other dongles and actually had a port on the back; you'd make a "dongle snake" out of them. Once they moved to USB it was both easier and harder - you couldn't make the snake anymore, but you could ask people to use a hub when they ran out of ports.

reply
P-CAD even had a dongle-caddy where you could plug in I think about 7 of them into to unlock different modules.

I will check if I can find an image of it.

EDIT: here is an old listing of it: https://www.ebay.com/itm/187748130737

Sadly the lid isn't open so you can't see what modules are installed.

reply
> I think sometime in the late 1990s FlexLM switched from dongles to "hardware identifiers" that were easily spoofed; honestly I don't think this was a terrible idea since to this article's conclusion ...

Starting in '97 I worked on some software that used Elan License Manager (elmd) that then moved on to FlexLM in a major release.

Requests for, and problems with, licensing were a considerable source of support tickets but I'm sure it also drove a reasonable amount of sales as customers wanted to play with component X but were prevented from doing so by a lack of license.

When we were acquired by IBM we replaced the licensing code with lawyers and (threats of) audits. It didn't seem to harm the revenue. The product is still being maintained and sold.

> ... if you could reverse one you could reverse the other.

I can confirm it was quite easy with gdb to either skip past the license checks or, in the case of Elan licensing at least, call the license generation function from within the binary to generate whatever licenses for whatever features you liked.

The "hardware identifiers" were a nightmare too. I ended up writing some code that would pull all of the necessary information (primary MAC, IP address, hostid for Sparc machines, hostname, etc) and give it to us in a base64 encoded blob, we also grabbed some CPU and memory information that proved quite useful in seeing how the software was deployed.

reply
Having to put a physical device on your parallel port at the back of the computer is kind of annoying, especially if every software you use has one.

More common for games was to use the media itself for copy protection, using a variety of tricks to make copy more difficult. Other techniques involve printing some keys you have to enter using colors that don't render well in photocopies, or have you look at words a certain page of a thick user manual, the idea being that it is more expensive to go through the effort of copying this material than to buy the software legally.

One of my favorite is from Microprose games, for which the manual was a pretty good reference book on the subject of the game, that alone is worth buying. And the copy protection is about asking you about information contained in the book, for example, it may be some detail about a particular plane in a flight simulator, which means that a way to bypass copy protection is simply to be knowledgeable about planes!

Dongles were common, but mostly for expensive enterprise software. Also, dongles don't make cracking harder compared to all the other techniques, so for popular consumer software like games, it is likely to be a lot of inconvenience and a waste of money for limited results.

reply
Partly it was an anti-Wobbler thing. Someone in America or somewhere thought it was real clever to make the game ask you little questions, like “What’s the first word on line 23 on page 19 of the manual?" and then reset the machine if you didn’t answer them right, so they’d obviously never heard of Wobbler’s dad’s office’s photocopier.

-- Only You Can Save Mankind, Terry Pratchett, 1992

reply
Makes me sad how many person-years of effort have been wasted over the years on futile dongle-engineering, copy-protection and DRM. They're pretty much all cracked. And the industry keeps insisting on trying!
reply
The industry doesn't want to make software crack proof, they just want to make money. Typically, in the case of games, is is about "when", not "if", they know it will be cracked eventually, but they want to hold long enough to secure their launch sales, which is where they make most of the money. It is even common to remove DRM after a few months, because it is not worth it.

As for enterprise software, pros usually don't want the potential legal trouble associated with cracked software, and dongles are just about not making is easy to violate the licence by accident.

reply
One problem is that they often couldn't be daisy chained, the connector on the back was only useful for an actual printer. So if everybody started doing it you would have to swap them constantly which is a headache. So they're mostly used for software where it's going to be the only thing running on the box.

I find it interesting that they didn't make it into the USB era where you could easily have something that does some actual processing on the device that makes it a serious challenge to reverse engineer.

reply
They did carry over into the USB era! I specifically remember my stepdads copy of Cubase (music production software) requiring a USB dongle to open.
reply
Ditto - and there's also the "iLok" dongle used by loads of virtual instrument & effects plugins for DAWs.
reply
I could have sworn, back in my day, on WinNT4 we successfully chained a red and white pair from Autodesk. One for AutoCad, and either Mechanical Desktop or 3ds Max.
reply
It worked sometimes, but was always a roll of the dice.
reply
It was widely used in engineering software because the license cost was equivalent to a large fraction of an engineer's salary. Anyone who used AutoCAD back in the 90s can remember.

When parallel ports were discontinued, they migrated to USB and network license servers.

reply
A company I worked for in the mid-80’s used a PC based CAD package with this kind of copy protection. IIRC the cost of the software was about $5K, and engineers using it probably made around 50K/yr. This level of expense required a lengthy capex justification approval process. There was a category of users who didn’t need the software full time and since the software was tied to the dongle it was common to have the package installed on multiple workstations and borrow the dongle when needed.

The nature of our business was such that there was a lot of logic analyzers and signal tracing equipment in the lab and the dongle was reverse engineered and cloned after a couple of “where’d my dongle go” incidents.

reply
Dongles still exist in the form of Nintendo Switch cartridges, though they're an extreme form that contains all the app logic, rather than just 7606h.
reply
On Switch 2 there are also pure license dongles in the form of the Game-Key Card. https://en.wikipedia.org/wiki/Nintendo_Game_Card#Game-Key_Ca...
reply
Haha, true enough. But you also get all the game 3D assets, music as well.
reply
Cartridges and cd/dvds/ physical media with DRM were technically dongles.

I remember hearing a courier died overnighting a CAD dongle.

reply