Вопрос по c++, dll – Защитите файл DLL с помощью файла лицензии [закрыто]

12

Каков наилучший способ обеспечить использование / загрузку DLL с файлом лицензии?

Ваш Ответ

3   ответа
4

если она не найдена.

Error: User Rate Limit Exceeded
2

как работает ваш лицензионный алгоритм. Я предлагаю вам изучить что-то вродеDiffie & # x2013; Обмен ключами Хеллмана (или дажеRSA) для создания своего рода открытого / закрытого ключа, который может быть передан вашим пользователям на основе некоторой информации.

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

Если вы хотите копать глубже и избегать хакеров, это целая тема ...

5

Проверьте сумму в DLL. Используякриптографическая хеш-функцияВы можете сохранить это внутри файла лицензии или внутри DLL. Это обеспечивает способ проверки, чтобы определить, если мой исходный файл DLL не был взломан, или это файл лицензии для этой библиотеки DLL. Несколько простых методов замены байтов могут быстро убрать вашу хэш-функцию с проторенной дорожки (и, следовательно, ее нелегко воспроизвести).

Не храните хеш как строку, разбивайте ее на неподписанные шорты в разных местах.

Как сказал Ларри, MAC-адрес довольно распространен. Есть много примеров того, как это сделатьКодовый проект, но имейте в виду, что это легко подделать в эти дни.

Мое предложение, следует использоватьчастные / государственные ключи для генерации лицензии.

Короче говоря, режимы атаки будут бинарными (измените инструкции вашего DLL-файла), поэтому защититесь от этого или от генерации ключа, чтобы каждый пользователь лицензии, машина и даже установка были специфичны.

Похожие вопросы