Активация приложения

Моя программа VB.NET распространяется среди некоторых бета-тестеров. Им был предоставлен «ключевой» код бета-тестирования для активации программы на их ПК.

У меня есть онлайн база данных MySQL. Он содержит список ключей. Когда кто-то активирует свой ключ, моя программа сверяется с базой данных, и если ключ никогда ранее не использовался, программа активируется (и ключ в базе данных становится «использованным»).

Это работает для меня. Но есть ли лучший способ? Более стандартный, простой способ?


person Voldemort    schedule 25.02.2012    source источник
comment
Ваш заголовок должен быть активацией приложения, а не аутентификацией (sic).   -  person Andrew Barber    schedule 25.02.2012
comment
Конечно, есть лучший способ. Удалите этот код в бета-сборке, он только мешает достижению цели. Если вы действительно собираетесь использовать этот механизм активации в RTM-версии, то вы довольно поздно передумали.   -  person Hans Passant    schedule 26.02.2012


Ответы (2)


Для бета-версии я бы просто жестко задал дату истечения срока действия и отказался от любого рода «лицензирования». Бета-версии предназначены для того, чтобы определенные клиенты могли протестировать ваш продукт до того, как он будет готов к продаже. Пусть они устанавливают его столько, сколько хотят и на столько машин, сколько смогут. Это повысит вероятность обнаружения ошибок в процессе. В целях безопасности вы можете подтвердить дату окончания с помощью общедоступного сервера времени.

Когда вы будете готовы к продаже, используйте коммерческое средство защиты от копирования от известного поставщика. Мы продаем лицензирование DeployLX, которое упрощает создание серийных номеров и кодов активации.

Если вы попытаетесь сделать это сами, вы

  1. Вероятно, в первый раз вы сделаете это неправильно, легко потеряв достаточное количество продаж или затратив время на поддержку, которое можно было бы сэкономить с помощью коммерческого продукта.
  2. Тратьте свое время на борьбу с хакерами и попытки разобраться во всем этом. Время, которое вы могли бы потратить на улучшение продукта.
person Paul Alexander    schedule 07.03.2012

Я также считаю, что ваше программное обеспечение распознает, что оно зарегистрировано для конкретной машины, на которой оно установлено, и проверяет это при каждом запуске.

В нынешнем виде вполне вероятно, что кто-то, вероятно, может:

  1. зарегистрировать свою копию программного обеспечения на законных основаниях
  2. просто скопируйте их папку установки на другой компьютер
  3. зарегистрировать несколько DLL/записей реестра

... и у них будет двойная установка.

См. эту статью для Создание уникального идентификатора машины

person Derek Tomes    schedule 25.02.2012