защита программ
Модераторы: Naeel Maqsudov, C_O_D_E
Подскажите плз какой-нибудь эффективный алгоритм защиты программы (от несанкционированного запуска)
В данный момент у моей проги стоит такая защита :
При запуске прога определяет ID винчестера (физический серийник, который на заводе ставится) и на основе этого ID формирует "код".
Для каждого кода есть единственно соответствующий "ключ".
Т.е. в программе заложен генератор ключей для кода, и есть отдельная программа-генератор ключей. Оба этих генератора формируют ключи по одному и тому же алгоритму.
Когда у меня покупают программу , клиент мне присылает код, который выдала программа у него на компе с его винчестером. Я ввожу этот код у себя в генератор ключей, и высылаю клиенту ключ.
Клиент вводит у себя в программе присланный ключ, программа определяет что сгенерированный ею ключ и введенный - идентичны, и фактически разрешает запуск. В противном случае говорит что ключ неверный.
НЕДОСТАТОК : при переносе проги на другой винчестер она перестает работать, т.е. ключ уже не подходит.
Какие есть альтернативные методы защиты ?
В данный момент у моей проги стоит такая защита :
При запуске прога определяет ID винчестера (физический серийник, который на заводе ставится) и на основе этого ID формирует "код".
Для каждого кода есть единственно соответствующий "ключ".
Т.е. в программе заложен генератор ключей для кода, и есть отдельная программа-генератор ключей. Оба этих генератора формируют ключи по одному и тому же алгоритму.
Когда у меня покупают программу , клиент мне присылает код, который выдала программа у него на компе с его винчестером. Я ввожу этот код у себя в генератор ключей, и высылаю клиенту ключ.
Клиент вводит у себя в программе присланный ключ, программа определяет что сгенерированный ею ключ и введенный - идентичны, и фактически разрешает запуск. В противном случае говорит что ключ неверный.
НЕДОСТАТОК : при переносе проги на другой винчестер она перестает работать, т.е. ключ уже не подходит.
Какие есть альтернативные методы защиты ?
Оченно сложную тему подняли, споры уже неоднократно были в разных местах, если честно любой процесс можно проследить что куда и зачем он обращается и что делает, тобишь по сути даже при самой крутой защите достаточно один раз зарегистрировать программу и умные руки сломают ее по самое небалуйся - земля талантами славится тем более у нас 

[syntax=Delphi] [/syntax]
Можно даже и не регистрить 

С уважением, Lost Angel...
взлом стоит денег.
допустим что программа не очень популярная и поэтому дешевле выходит ее купить чем взломать.
а если не привязываться к железу то я не представляю как можно избежать того случая когда один чел купивший регистрационный ключ может его распространить по инету и считай программой может пользоваться кто угодно.
какие есть еще варианты ?
допустим что программа не очень популярная и поэтому дешевле выходит ее купить чем взломать.
а если не привязываться к железу то я не представляю как можно избежать того случая когда один чел купивший регистрационный ключ может его распространить по инету и считай программой может пользоваться кто угодно.
какие есть еще варианты ?
- Игорь Акопян
- Сообщения: 1440
- Зарегистрирован: 13 окт 2004, 17:11
- Откуда: СПБ
- Контактная информация:
если программа интересна настолько, что кому-то придёт в голову выкладывать её в инет с ключом - ничто не мешает выложить её с кейгеном или вапче отвязанную...
если продажи превышают определённые пределы и охота заморочиться - смотреть в сторону ключей защиты типа Guardant
если продажи превышают определённые пределы и охота заморочиться - смотреть в сторону ключей защиты типа Guardant

Я знаю несколько умов, они эту процедуру часа за 1-3ч распознают и ломанут.(а то и быстрее)..
Я все же думаю, что врядле когда либо будет написано приложение которое невозможно будет ломануть.....
Все процессы все равно в памяти происходят, а ее можно изменят, так что в любом случае ваша защита чисто от брата ламока, если кто-то захочет обязательно ломанет, вобщемта битва продолжается пока победителей и проигравших нет...
Я все же думаю, что врядле когда либо будет написано приложение которое невозможно будет ломануть.....
Все процессы все равно в памяти происходят, а ее можно изменят, так что в любом случае ваша защита чисто от брата ламока, если кто-то захочет обязательно ломанет, вобщемта битва продолжается пока победителей и проигравших нет...
[syntax=Delphi] [/syntax]
-
- Сообщения: 1228
- Зарегистрирован: 26 фев 2004, 13:24
- Откуда: Pietari, Venäjä
- Контактная информация:
Ну да, а если не ломанут, то пойдут на форумы жэчь "Старфорс - говно, и надо устраивать костры из этих дисков."Я знаю несколько умов, они эту процедуру часа за 1-3ч распознают и ломанут.(а то и быстрее)..
По теме: если ставится электронная подпись на серийный номер HDD, например по алгоритму RSA, то это дело будет не отреверсить, и кейген не написать.
Можно привязаться в первую очередь к MAC адресу, а если его нет, то к HDD. Сетевые карты летят намного реже чем HDD. Кроме того, за замену MAC адреса
пользователю влетит по шее от администратора домашней сети. Сетевые карты морально стареют намного медленнее.
Остается самое слабое место - та точка в программе где проверяется серийник. Я демаю, надо для этого дела делать какой-то свой линкер, который размажет проверки
по всему коду.
2B OR NOT(2B) = FF
Старфорс на моей памяти первая болие ли менее продержавшиеся на плаву несколько месяцев система, ее понимаешь обманули же, результат достигнут, а что еще надо???
И в любом случае проблема остается поскольку сам момент обращения можно профиксить и сделать переход далее по адресации в обход вызова на запрос............
И в любом случае проблема остается поскольку сам момент обращения можно профиксить и сделать переход далее по адресации в обход вызова на запрос............
[syntax=Delphi] [/syntax]
- Игорь Акопян
- Сообщения: 1440
- Зарегистрирован: 13 окт 2004, 17:11
- Откуда: СПБ
- Контактная информация:
Защита на основе ключа естественно не панацея, но при грамотном построении защиты (не просто конверт снаружи, а использование аппаратных алгоритмов ключа, размазывание по коду логики работы с ключём и пр.) время на взлом существенно увеличивается и как следствие увеличивается стоимость этого взлома. Но на то чтобы разобраться с этим тоже, блин, время уйдёт.... 


-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
Есть же еще способы с ключами USB и файлами лицензии к этим ключам. Это будет еще сложнее сломать. А так, все что создано человеком, человеком же и ломается.
Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD
