Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка активационного ключа 
:(
    Опции темы
Competitor
Дата 13.1.2009, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 23.3.2005
Где: Tula

Репутация: нет
Всего: -1



Привет всем,
задача: создать серийник на основе уникальных характеристик железа (берутся через WMI), далее каким-либо образом пользователь должен связаться с вендором, который по серийнику выдаст ему активационный ключ, который пользователь введет в программу, и активирует ее.

Вопрос: как лучше организовать этот процесс?

Придумал вот такой алгоритм (возможно бред):
       Серийный номер пользователя будет не что иное, как открытый открытый ключ ассиметричного алгоритма шифрования (RSA) + примесь из закодированных характеристик железа юзера. 
       Вендор получает этот серийник, вытаскивает из него открытый ключ и характеристики железа. Далее шифрует эти характеристики железа симметричным алгоритмом, например AES (ключ шифрования hiddenKey1 зашит также в пользовательском ПО). Далее вычисляет хеш MD5 получившегося шифротекста, и далее снова шифрует этот хеш по средством открытого ключа юзера, и отправляет этот шифротекст ему обратно.
       Юзер расшифровывает это сообщение своим закрытым ключом. При этом получает хеш MD5. Далее снова его у себя вычисляет на основе характеристик железа и ключа hiddenKey1. И далее сравнивает оба хеша, определяя правильность активационного ключа.

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

Спасибо
PM MAIL WWW   Вверх
CrackMe
Дата 18.1.2009, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 12.1.2009

Репутация: нет
Всего: нет



лучшими являются схемы с использованием стойких асимметричных криптоалгоритмов (el-gamal, rsa, ecdsa), но слабой стороной системы будет получение hardware id, т.к. имея один ключ под конкретное железо можно подменить hwid и пользоваться лицензией где угодно. криптография в таком случае защитит лишь от создания генератора ключей (если нормально выбраны числа).
PM MAIL   Вверх
tva94
Дата 20.1.2009, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 18.9.2007

Репутация: нет
Всего: нет



Я бы посоветовал что-то типа следующего: Юзер вводит Ключ1(это типа CD-key) на основе которого сгенерируем индивидуальный для него индефикатор (MD5). Потом собирем инфу о процессоре, винчестере и видеокарте и ихние индефикаторы хешируем. Потом собираем это до кучи и зашивровуем встроеным в прогу RSA ключём(открытым) и выводим в текст. Потом просим пользователя войти на сайт, где он вводит эту строку в поле. На нашем серваке разшифровуем закрытым RSA ключем и в БД смотрим на данные ключа. Если такой ключ есть, то смотрим на данные оборудования. Если заполнены, то сверить, и при несовпадении послать, при совпадении дать код подтверждения (для надежности лутше файликом). Если поля не заполнены, то мы приписуем эти данные в поля и даем юзверю код подтверждения. Я бы советовал сделать так, чтобы при установке была демка с определенными ДЛЛками для демки. Сделать отдельную прогу для активации(aktivator.exe) которая это все спросит. При правильности она из лежащего збоку файлика достает дллки(розшифровуя их) и вписует в определенное поле(ресурс) данные регистрации. Самая елементрарная, но сложноломаемая. И кстати - припмшите проверку целестности проги контрольным числом(дляна исполняемого файла + сумма значений байт или как сами захотите) чтобы не патчили. Потом ещё можна ещё что-то для роверки. Кароче сами додумывайте.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Технологии защиты программного обеспечения | Следующая тема »


 




[ Время генерации скрипта: 0.0720 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.