aKEY Registration Key System

General Information

Copyright © 2000-2002 by Jørgen Ibsen, All Rights Reserved.


[   back to index   ]
 

1 Introduction

aKEY is a registration key system which uses public-key cryptography to produce a signature protecting the registration information (much like signing a message in PGP or GnuPG). This means that it is not practically possible to change the information or to create a valid key, even given another.

aKEY was developed with three main concerns -- security, flexibility and ease-of-use:

2 Compatibility

2.1 Key-checking

The DJGPP library works with DJGPP.

The DLL should work with any Win32 compiler/linker.

The ELF32 library works with GCC on (at least) Linux, FreeBSD, BeOS and QNX.

The Visual C++ library works with (at least) Visual C++, Cygwin, Masm32 and Watcom -- and should work with other compilers/linkers that can use the MS COFF format.

The Watcom library works with (at least) Watcom, Borland C++ and TASM32/TLINK32 -- and should work with other compilers/linkers that can use the OMF format.

2.2 Key-generation

The DLL should work with any Win32 compiler/linker.

3 Usage Tips

Here are a few tips and ideas on how aKEY can be used:

Flexible Information

You can store any kind of information in the key. Depending on what restrictions you have on your registrations, you can store e.g. the license type, the major version number the key is valid for, the expiration date of the key, the hardware ID of the machine the key is valid for, ...

Store Decoded Key

The armor encoding is great for distributing the key, but once it has been decoded and checked, you can store the key in binary form. E.g. store the decoded key in the registry on Windows systems.

Using an On-line Registration Service

Some on-line registration services can handle key distribution to users for you. You just supply them with a binary which produces a key/serial from the user information.

It is easy to integrate aKEY with such services, and the armor encoding of the keys make them suitable for inclusion in e-mails or display on a web-page. The registered versions include example code for the Share-It! service.

Upgrade with new block

You can use the block-system to upgrade a key so it is valid for both the old and the new version of your product. Just let the new version keep the registration information in a block with a different type.

Let registered users paste their registration key into a form, and have your server check that the key is valid, copy the old information into a new key, and add a new block for the new major version.

4 Greetings and Thanks

... go out to the following people: A special thanks to the beta-testers:
  • x-otic
  • Lawrence E. Boothby
  • Veit Kannegieser
  • Gautier
  • Oleg Prokhorov
  • METALBRAIN
  • eL PuSHeR
  • Elli

5 Contact Information

If you have any questions, suggestions or bug-reports about aKEY, please feel free to contact me by e-mail at: jibz@hotmail.com.

My PGP/GnuPG public key is available at public keyservers (e.g. keyserver.net).

You can get the latest version of aKEY and my other software at: Ibsen Software.

If you want to register aKEY, please check the registration information on the homepage.

 

[   back to index   ]

Copyright © 2000-2002 by Jørgen Ibsen. All Rights Reserved. Products and company names mentioned may be the trademarks of their respective owners.