forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Разработка LIB (http://forum.boolean.name/forumdisplay.php?f=58)
-   -   "Защита" *.DLL (http://forum.boolean.name/showthread.php?t=3802)

impersonalis 03.07.2007 13:12

"Защита" *.DLL
 
Хотелось бы обсудить вопрос защиты от несанкционированного использования *.DLL-файлов.
А именно:
например есть самодельная длл-ка, вроде и с народом хочется поделиться, но и враг не дремлет - хаъапает мою дээльэль и будет втихаря юзать без всяих копирайтов. Можно конечно наг-скрин генерить при загрузке приложения - но что-то я не совсем чётко себе представляю реализацию.

Поделитесь мыслями - не хочу велик изобретать.:stop:

jimon 03.07.2007 13:18

Re: "Защита" *.DLL
 
imho, наг скрин или водяной знак в окошке :)
а еще ключики ^_^ :-)

Matt Merkulov 03.07.2007 13:25

Re: "Защита" *.DLL
 
Если делать всплывающие окна (например, в модуле инициализации), то, скорее всего, ей пользоваться никто не будет. Вариант - сделать строку в самой DLL (и, если очень хочется, сделать в модуле инициализации проверку на контрольную сумму, чтоб не затерли) - кто захочет - просмотрит файл и найдет имя автора.

А лучше, просто увидев, что где-то библиотека поставляется без описания и авторских реквизитов - написать автору, чтобы он внес в дистрибутив краткую описаловку к библиотеке.

alcoSHoLiK 03.07.2007 14:44

Re: "Защита" *.DLL
 
Обычно в библиотеку добавляется функция, на вход которой поступает лицензионный код. Чтобы библиотека работала нормально, нужно в самом начали передать функции авторизации правильный код.

HolyDel 03.07.2007 19:20

Re: "Защита" *.DLL
 
наг-скрины нерулят однозначно.
собсно, скажу что и все ,, ИМХо - ключ. и просто и эффективно (враг нескомуниздит либу незная ключа).
вариант два, враг таки заполучил ключ и нагло стер копирайты (или чо еще хуже, вписал свои), вот что делать в етом случае?
а что если так:
есть кейген у владельца, который генерит ключ на основе имени "ексешки". т.е. на каждый проект - новый ключ (иначе - наг-скрин) ?
а потом из длл-ки можно как нить узнать имя процесса который ее потревожил?
еще идея - найти смещение в длл, где начинаются копирайты, и проверять, если автор != Impersonalis то *** им, а не инициализация?

johnk 03.07.2007 19:33

Re: "Защита" *.DLL
 
А можно наглую онлайн проверку делать :) Дать юзеру ключ ( или какой нибуть оригинальный файл) И когда ключ введен, прога проверит не забанен ли ключ.

jimon 03.07.2007 20:56

Re: "Защита" *.DLL
 
HolyDel
тогда уж md5 file checksum юзать для dllки :)

impersonalis 03.07.2007 21:00

Re: "Защита" *.DLL
 
Досаточно CRC32 имени ехе.
Типо : в качестве теста (на период написания) выдаётся код 12345, который будет запускаться, только если ехе, попродивший процесс, будет носить имя ВЕЛИКИЙ_ИМПЕР

ЛысыЙ_Чук-Иванчук 03.07.2007 21:31

Re: "Защита" *.DLL
 
Делай как все, пароЛЪ при инециализации библы...

ЗЫ\Нече тебе всеравно непоможет защитить её, даже Виндоус- одна из самых великих программ, на которой работают почти все и вся крякнута!!! что говорить о ДДЛ,!, кому нада тот узнает парол, а ктонибуть купиТ=)

ЗЫ\_02_ что за длл такая???

moka 03.07.2007 21:42

Re: "Защита" *.DLL
 
Цитата:

Досаточно CRC32 имени ехе.
Типо : в качестве теста (на период написания) выдаётся код 12345, который будет запускаться, только если ехе, попродивший процесс, будет носить имя ВЕЛИКИЙ_ИМПЕР
Согласен
Например МЕГАПУПЕРГИПЕРБИПСИ_МоКа! ;)
Что за библиотека и вправду такая?
Ненавижу Наг скрины. А ключик это временное.

jimon 03.07.2007 22:34

Re: "Защита" *.DLL
 
impersonalis
1) Достаточно чтобы сама либа имела подпись
2) надо проверять checksum файла либы
иначе будет гемор ... в твоем способе достаточно переименовать файл чтобы все запахало :) думаеш ето сложно обойти ?

impersonalis 04.07.2007 03:49

Re: "Защита" *.DLL
 
Цитата:

в твоем способе достаточно переименовать файл чтобы все запахало думаеш ето сложно обойти ?
И ты бы согласился выпускать свою шаровару, если её имя будет "Йа ТУПОЙ РАЗРАБ, НЕ КУПИВшИЙ БИБЛУ"?

stone_evil 04.07.2007 06:09

Re: "Защита" *.DLL
 
Vlad в чем-то прав, 100% защитить ты ее все равно не сможешь. Поэтому если либа любительская и не предполагает баснословных прибылей, любая защита сойдет, ибо ломать никому интереса не будет. А если либа коммерческая и мощная, то все равно сломают. С онлайн проверкой та же история, эмулятор напишут и все.
А привязывать к наименованию - я это проходил, когда базы данных пытался защитить - копируют вместе со всеми чужими копирайтами и наименованиями, и особо совестью не мучаются.

johnk 04.07.2007 08:16

Re: "Защита" *.DLL
 
А я еще раз напомню: Онлайн проверки ключа хватит.

Platon 04.07.2007 09:09

Re: "Защита" *.DLL
 
*Ключ отпадает однозначно если либа используется Блицем, ибо ключ как строку можно посмотреть HEX или блокнотом в exe или просто выдрав машинный код из exe и так-же посмотрев его HEX или блокнотом.
*Наг-скрин грохнут за раз плюнуть - тоже отпадает
*Проверка контрольной суммы уже лучше но и ее тоже можно отключить

Имхо, лучший вариант для любой либы пока остается навесная защита в виде какого-нить протектора, лучше не популярного - всякие там аспротекты и молебоксы лучше забыть или юзать их последнии версии.
ЗЫ
Если либа не в блице используется, то можно попросту использовать интерфейсы - либа передает интерфейс одной функцией (как Блицевский runtime.dll), а через него уже используются все необходимые функции. Юзеру изрядно попотеть прийдется чтобы узнать структуру такого интерфейса.


Часовой пояс GMT +4, время: 07:59.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot