Software license keys are widely used to identify a program or game is original and purchased by the user. Usually the computer program requires the user to enter a unique sequence of characters that can be then validated by the licensing algorithm. The valid license key will unlock program features.
A Short History of Software Licensing
Starting with Apple II and Commodore 64 software, publishers are constantly looking for different ways to protect their work. The following are some of the more interesting examples used in the past.
- Copy protected disks
Each copy of the program was modified to work with a unique floppy disk. A portion of the floppy disk was manually damaged and after the damaged disk sectors were determined the computer program was modified (bound) to work only if the specified disk sectors could not be read.
- Hardware Dongles
A small hardware devices that used to connect to the printer or serial port of the computer. AutoCAD was one of the most popular programs using this kind of protection. Wikipedia has an interesting article about Dongles.
- CD Keys
When purchasing physical copies of software, the CD itself will usually have the license information printed right on it.
- Emailed License Key
With most of the software sales done online the vast majority of software developers use the text-based license keys. These license keys have a lot of advantages compared to other protection options: they are easy to create, can be generated automatically, easy to verify, can be delivered electronically, can include as much or as little information as needed.
Today, every computer user has a small database of the serial numbers for the software he purchased. On Macintosh, this even created an interesting phenomenon of SerialBox -- very user friendly application that contains serial numbers for almost every software application currently available.
- Online Activation
Software protection methods continued to evolve and now with the widespread adoption of Internet brought Online Activation. Product's use Online Activation and even nastier protection schemes where the software programs essentially spy on its users and frequently "phone home" to verify that the copy of the software is legitimate. This raises serious privacy concerns but with corporate giants like Microsoft openly using this technique in their products, this protection method will probably get more traction:
Summary
Every protection method has it benefits and drawbacks. The absence of protection or very simple protection can significantly reduce the number of sales; at the same time using the most secure methods like the hardware dongles mentioned above can be expensive for the developer and (most importantly) inconvenient for the customer.
The Problems With Text License Keys
Despite being widely used, text license keys have many drawbacks:
Plain text license keys are just plain ugly. They grow quickly in size as the developer tries to more information into the code, such as Customer Name, Email, Purchase Date, License Type, Number of Seats, etc.
Complex license key text requires careful copy-and-paste. There are cases (myself included) when users do not copy and paste the license key correctly and it fails to validate. Angry emails from customers that say "I am not stupid, I copied the *#(@ code properly!" are not fun for anyone.
Plain text license keys are easily published and distributed in illegal ways.
The main problem of the text license key, however, is that they are not sexy. Yes you can make a nice HTML email, but when the main "payload" is a hex key, it is hard to get excited. Software products should not need to look any less professional than the iPod's packaging; we're on a Mac after all ;)
Introducing Graphic License Cards
License keys don't need to be boring text strings. All the data contained within the license key can be kept in a beautiful image, providing the following benefits:
First of all -- starting from the very beginning, Mac has always been more about graphics than text. Using graphics allows you to represent the information the way you want. An image is more tangible that a hexadecimal sequence of seemingly random characters.
Drag-and-drop defines the Mac. We do not want people trying to type the license key by hand; images can be dragged and dropped with ease.
Since the license information is hidden in the image file, developers can stuff as much information as they want into it. No longer will developers need to avoid adding something to the generated license because of space constraints.
The license cards contain the user's personal information, so they will be less likely to publish it on the Internet.
Software is intangible, and this is especially true for products purchased online without a shrink-wrapped box. The sequence seemingly random characters does not give you a feeling o that you got something real in return. This license card is a close as it gets:
Demonstration Video of License Cards
Here's a video of the graphic license cards in action in our 1Passwd Password Manager:
We think these License Cards are revolutionary to the user experience of registering applications. What do you think?