Estoy de acuerdo en punto de los que habla chcma, la idea de colocarlo en el registro es bueno, ahora que puedes hacer la combinación por ejemplo.. de un registro en línea donde uses un valor por default, numero de serie del disco duro y con ello formar una cadena utilizando un hash tipo MD5, lo envías a un página determinada, lo validas y regresas la llave que será un valor que se coloque en el registro y estará de forma encriptada, de tal forma que si quieres usar el key en otra máquina les dará problemas porque estas tomando como referencia el numero de serie del disco duro.
Espero haber sido claro.
Saludos y cualquier cosa por aqui andaremos..