Ежели нет у вас крутых хакеров, то рекомендую следующий способ, который применяю сам. Способ называется "привязка к компьютеру". У каждого компьютера есть своя специфичная информация, например дата и версия Bios, серийный номер жесткого диска и т.д. Подобную информацию можно прочитать из реестра, затем перекодировать (хотя бы простым Xor) и выдать на экран пользователя в качестве кода для отправки производителю(тебе). У тебя должна быть прога (генератор ключа), которая по коду от пользователя генерит сам ключ (опять же можно простыми Xor-ами). Далее ты отправляешь этот ключ пользователю, он его вводит в твою прогу, а она делает проверку соответствия ключа тем же алгоритмом, который заложен в генераторе.
Естественно, ключ ты можешь генерировать за деньги.