![]() |
|
![]() ![]() ![]() |
|
DJDOGgy |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 15.5.2006 Репутация: нет Всего: нет |
Помогите пожалуйста начинающему програмисту.
Я написал прогу для одной фирмы и ее согласны купить, но я хочу защитить ее от несанкционированого копирования. Возможно ли это? И если да, то расскажите как, пожалуйста(время поджимает)! Зарание большое спасибо!!!!! |
|||
|
||||
Kagor |
|
|||
![]() Debian user ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2946 Регистрация: 28.2.2003 Где: Королевство Кривых Репутация: нет Всего: 85 |
Модератор: Перемещено из Новости IT/Новости из мира Delphi, Kylix и Pascal.
-------------------- Disassemble Your life and get the key! |
|||
|
||||
пользователь |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 14.5.2006 Репутация: нет Всего: 6 |
Ну например изменить код так, чтобы смысл был такой же, но было много лишнего. Вообщем усложнить его.... В случае чего можно будет доказать, что это твой код, так как ты сможешь подробно описать, что там лишнего ты приписал.
|
|||
|
||||
Rouse_ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 469 Регистрация: 23.4.2005 Репутация: нет Всего: 29 |
По закону пользователь имеет право создать резерную копию продукта на случай выхода из строя носителя. Так что защита от копирования будет противозаконна.
|
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: нет Всего: 484 |
Вопрос для этого раздела Технологии защиты программного обеспечения
|
|||
|
||||
Sunvas |
|
|||
![]() Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: нет Всего: 89 |
Получай серийник винта и сравнивай при каждом запуске... -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
maximjon |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 27.1.2006 Репутация: нет Всего: нет |
Sunvas, лучше тип процессора, его частоту и т.д. в общем привяжи к железу
|
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: нет Всего: 133 |
Нет, все же если привязываться, то лучше к винчестеру. По одной простой причине: если заменим винт, нто придется копировать все на другой. А именно от копирования нам и надо защититься. А вот если привяжимся к процессору, то при его замене программа начнет рузаться, что ее типо скопировали и т.п., хотя копирования не было.
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: нет Всего: 260 |
maximjon, за такой сюрприз заказчик не четвертует?
DJDOGgy, программа настолько уникальна? Или это "понты побросать" охотО? ![]() |
|||
|
||||
maximjon |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 27.1.2006 Репутация: нет Всего: нет |
Например мои проги привязываються к любой части компа, я не говорю что надо к железу, можно следить за логинами в винде, версии винды, но идея про винт не плоха, я с ней тоже согласен.
|
|||
|
||||
ConstantinXXX |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 246 Регистрация: 27.5.2006 Где: U.S.A. :-) Репутация: нет Всего: 0 |
maximjon, Зайди на http://constantinxxx.narod.ru/ --------> Delphi7 --------> [Анти]взлом.
Там я разместил несколько статеик про защиту от копирования и не только. Страничка совсем недавно поевилась так, что там немного статей. ![]() Добавлено @ 22:16 Вот насчет привязки к винту. Дайте маленький код. Я знаю, что есть такой компанент в Delphi, но мне желательно без него. ![]() Добавлено @ 22:26 maximjon, Я лично каждые 20 - 30 дней переустанавливаю Windows. Вот как твоя прога будет следить за моими логинами и т.п. ![]() --------------------
Как вы относитесь к девушкам, которые курят сигареты?Как не ослепнуть за компьютером© ORENCODE.info |
|||
|
||||
ConstantinXXX |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 246 Регистрация: 27.5.2006 Где: U.S.A. :-) Репутация: нет Всего: 0 |
защите от копирования или Shareware в среде Delphi.
Если разбивать на dll. Дробим прогу на exe и несколько DLL-ей, функциям в DLL-ях даем одинаковые public'и, а названия DLL-ям даем длинные, притом начальные части названий должны совпадать, так, чтобы короткие имена отличались только числом после тильды. Вот по коротким-то именам мы их вызывать и будем. А число после тильды, как известно, зависит от порядка копирования файлов на диск, при стирании файлов с "промежуточными" номерами не меняется и при копировании не воспроизводится. Так что, копируя в "неалфавитном порядке", перемежая рабочие DLL-и с "заглушками" (потом их можно стереть), легко можно добиться невоспроизводимости сочетаний длинное-короткое имя, и после несанкционированного копирования EXE будет вызывать не те функции из не тех библиотек. Единственная тонкость: неплохо поставить проверку на длинность имени в самих dll-ях, причем с использованием FindFirstFile, так как часть win32-платформ передает dll-и, вызываемой по короткому имени, как имя ее модуля именно короткое имя. А иначе прога будет легко копироваться из DOS (т.е. только короткие имена) без потери функциональности. Вот т так пойдет защититься от копирования. ![]() --------------------
Как вы относитесь к девушкам, которые курят сигареты?Как не ослепнуть за компьютером© ORENCODE.info |
|||
|
||||
kiberdog |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 2.6.2006 Репутация: нет Всего: нет |
Могу предложить следующее, т.к. этим приходилось заниматься (клиент попался дотошный).
В Вашей программе наверняка есть меню, названия кнопок и т.д. на русском языке поэтому делаем следующее: 1. То что написано в меню, кнопках и т.д. шифруем. В качестве ключа выступает дискета, флэшка, CD. Эти устройства имеют свой уникакальный номер, который можно узнать при помощи функции GetVolumeInformation, но следует учесть следующее что при форматировании дискеты, флэшки номер меняется, тоже происходит при перезаписи CD. После этого шифруем все надписи отдельной программой. 2. В Вашу программу добавляем только модуль дешифрации. 3. При запуске Вашей программы происходит дешифрация надписей меню, кнопок. 4. Ваша программа сможет нормально работать при наличии уникального ключевого носителя Да самое главное не советую использовать CD т.к. эмуляторы CD повторяют уникальный номер. Я обрисовал основную идею, которую я использовал. Возможно в ней есть недостатки. Все остальное зависит от Ваших возможностей. |
|||
|
||||
maximjon |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 27.1.2006 Репутация: нет Всего: нет |
Я не занимаюсь прогами для пользователей, только очень редко и в основном они свободны. А в крупных компаниях винду переустанавливают очень редко. Я, например, уже больше 10 месяцев не переустанавливал винду.
![]() |
|||
|
||||
ConstantinXXX |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 246 Регистрация: 27.5.2006 Где: U.S.A. :-) Репутация: нет Всего: 0 |
maximjon, В таком слючии можно привезать к винде.
![]() --------------------
Как вы относитесь к девушкам, которые курят сигареты?Как не ослепнуть за компьютером© ORENCODE.info |
|||
|
||||
Antonimus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 12.1.2007 Репутация: нет Всего: нет |
Пустое это все! Если что-то попадает в память компьютера (в зашифрованнои виде или нет), все становится достоянием хакера, потому что под дебагерами все видно как черным по белому. А зашифрованные фрагменты Вы хакеру сами же и расшифруете своей же программой в один прекрасный момент, потому что в этот самый момент эти фрагменты должны быть выполнены, а в зашифрованном виде их выполнить нельзя. Так дождавшись расшифровки фрагмента хакер его сохраняет расшифрованным и блокирует функцию расшифровки. После этого программа будет работать лучше и быстрее, чем защищенная. Вобщем, такого рода защиты называют пятиминутками (утрированно конечно). Сам я пользую защиту USB-ключами "LOCK". Они позволяют запрятать во внутренней памяти до 256К программного кода, который не читается из ключа, а выполняется прямо внутри ключа. Вот это действительно защита. Программа (достаточно большая ее часть) вообще в комп никогда не попадает, поэтому хакеру и ломать нечего. Единственный вариант - разобраться по потоку данных через USB и по куску кода, который остается в компе, что прога делает и написать аналог. Не крутовастая ли задачка?
![]() |
|||
|
||||
Kagor |
|
|||
![]() Debian user ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2946 Регистрация: 28.2.2003 Где: Королевство Кривых Репутация: нет Всего: 85 |
Это на подобие хасп ключей? Если да, то уже давно есть хасп эмуляторы...
-------------------- Disassemble Your life and get the key! |
|||
|
||||
W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 1 Всего: 121 |
Это там процессор чтоли внутри стоит, ага? ![]() Добавлено @ 20:57 Вообще пора понять: Стойкость программы определяется целессобразностью и стоимостью её взлома. Подумайте над этим и хватит уже спорить какая защита круче. "Крутость" защиты определяется не только сложностью взлома самой защиты, но и другими факторами. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: нет Всего: 158 |
вообще, два одинаковых поста Antonimus'а в темах по защите выглядят как реклама упоминаемых там "затычек" - типа "ничем не защитить, и вот только lock рулит"...
![]() |
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: нет Всего: 43 |
Теоретически такие ключи помогут, если расчет ведется на них, да и себестоимость у них будет не такой уж и большой.
До тех пор, пока алгоритм не рипнут с ключа =) |
|||
|
||||
W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 1 Всего: 121 |
Практически таких ключей существовать никогда не будет. Такие меры неоправданы. Чтобы исключить обмен данными с текущим компьютером в ключе фактически должен существовать свой небольшой компьютер. Причём логично предположить, что в его ПЗУ должен быть записан какой-то критический код, а не простая проверка серийника на валидность. Код этот естестсвенно должен быть x86 совместимым, иначе, чтобы написать программный комплекс помимо дополнительного ПО потребуется ещё и знание других языков. Страшно представить сколько будет стоить разработка такого защитного комплекса, а после помимо сибистоимости такой железяки будет кусаться накрутка от производителя, ибо окупать надо. В итоге цена такого ключа будет очень высока, реализация сложна, модификация накладна, а стойкость невысока. К программам, которые требуют таких мер защиты применяется совсем иная политика. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
nerezus |
|
||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: нет Всего: 43 |
именно так )
нет, иначе ключ будет огромным и дорогим. достаточно поддержки примитивных "калькукляторных операций" и десятка килобайт памяти для кода. имхо себестоимость без накрутки - бакса 3(сколько стоит калькулятор на вещевом рынке?) |
||||
|
|||||
Antonimus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 12.1.2007 Репутация: нет Всего: нет |
Парни, вы не поняли. В ключе действительно компьютер (можно и так сказать), дамп с ключа не снять. Процессор там не x86, а ARM. По производительности достаточно шустрый. Языков других знать не надо, так как он программается на обычном С++. Мы в такой ключ запихали целиком САПР для оконного производства (все кроме функций операторской консоли), нормально рулит, народ даже не въезжает, что прога не в компе, а в ключе выполняется.
|
|||
|
||||
dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: нет Всего: 158 |
Antonimus, давай я вместо твоей мутной пурги "мне бы защитить/мне бы поломать/итд.итп.", коей ты расплодил по всем форумам, просто приведу ссылку на описание "ключа всех времен и народов". кому надо - сам прочитает, что это и как это.
бесплатный совет: заплатите 10$ студенту, чтоб вам страничку нарисовали хоть как-нибудь... |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Технологии защиты программного обеспечения | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |