Лучшие и современные способы лицензирования программного обеспечения

Каков наилучший способ подключения некоторого установленного программного обеспечения к определенному компьютеру через Интернет? Я думаю, что каждый установочный пакет (диск) должен иметь свой уникальный серийный номер. И серийный номер должен быть связан с уникальными параметрами компьютеров во время установки, не так ли? Насколько я знаю, есть некоторые подходы, которые берут из ID процессора компьютера и отправляют на сервер. Другие рекомендовали использовать MAC-адрес. Так что я в некотором замешательстве и что знать, что специалисты делают и рекомендуют сегодня.

Пожалуйста, поделитесь своим опытом и подскажите мне правильное течение этого процесса.

1 ответ

Решение

Лучший способ - не делать этого. Это только создаст проблемы для вас и ваших платящих клиентов.

Тем не менее, если вы все еще хотите продолжить, лучшие практики сегодня включают в себя довольно сложные схемы. Лучший способ получить идентификатор - это использовать несколько идентификаторов: например, идентификатор процессора, идентификатор жесткого диска, MAC-адрес и т. Д. Чтобы идентифицировать компьютер, необходимо указать 3/5 идентификатора или что-то подобное. Тогда номер лицензии не сломается, даже если пользователь заменит сломанную сетевую карту или процессор.

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

Попробуйте посмотреть на другие коммерческие программы, как они это делают. Взять к примеру Windows. Хотя вы не можете изучить точную реализацию, вы можете изучить взаимодействие с конечным пользователем и документацию для конечного пользователя, чтобы найти необходимые варианты использования для того, как пользователи могут менять оборудование и переносить лицензии на новые компьютеры.

Если вы не хотите, чтобы раздраженные пользователи звонили на ваш частный мобильный телефон в 2 часа ночи и спрашивали, почему ваше программное обеспечение внезапно заблокировало его, вы должны тщательно обдумать это и протестировать множество вариантов использования.

Другие вопросы по тегам