Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Как лучше всего защитить написанную программу

Модерирует : ShIvADeSt

ShIvADeSt (27-11-2006 02:38): http://forum.ru-board.com/topic.cgi?forum=33&topic=4619&start=20#14  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2

   

Belocarsk

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Тема такая, написал прогу, теперь нуно привязать программу к чему нить, абы защитить ее от нелегального использования. Кто что может предложить? У кого есть опыт в этом деле?

Всего записей: 10 | Зарегистр. 16-06-2004 | Отправлено: 11:37 02-09-2004
redp

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
гы-гы
шо значит - "нелегальное использование" ? уж не думаешь ли ты, что с помощью твоей супер-мощной 101 инкарнацией нотепада кто-нть будет взламывать пентагон ?

----------
помни - ты с потрохами принадлежишь государству

Всего записей: 514 | Зарегистр. 16-06-2003 | Отправлено: 11:43 02-09-2004
MaxoHbkiu

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
redp
Человек просто думает как защитить програму от "незаконного" копирования, то есть без его присутствия (оплаты программы). Здесь поставлен вопрос о защите программы от незаконного копирования а не от того чтобы её не использовали методом который предусматривает криминальную ответственность. Member - мог бы и догадаться...
Belocarsk
Смотря для чего у тебя прога и на какие жертвы ты хочеш идти. Если денег не жалко и программа идёт на CD - купи себе что-то вроде StarForce (очень дорого и достаточно надёжно - на данный момент единственный способ обойти их защиту - полное копирование напрямую с одного CD на другой, при этом не все CD поддерживают такую запись). Если программа распространяется на дискете - можно сделать специфическую привязку к дискете, есть много программ позволяющих сделать повреждённые блоки на дискете или что-то подобное (то есть определённым образом маркировать, и что-бы прога при запуске проверяла та ли это дискета). Могу объяснить технологию создания защищённых дискет (вплоть до некоторых исходников) и назвать существующие программы которые этим занимаются. Если же ты хочеш просто привязаться к конкретной машине - жди что тебя будут всё время дёргать (юзер поменял себе устройство на новое или скажем перепрошил BIOS и вот к тебе идут с претензией что мол ваша программа не работает ). Если всё же хочеш делать привязку к машине - найди (в интернете) способы как можно получить информацию о системе (в крайнем случае - посмотри исходники линукса), после этого создавай запись (лучше зашифрованную) где-либо в конфигурационном файле (лучше прописывать в сам исполнимый код программы, в зашифрованном виде, понятное дело) и при каждом запуске проверяй совпадает ли конфигурация... Если есть вопросы - спрашивай...

Всего записей: 31 | Зарегистр. 03-04-2004 | Отправлено: 13:24 02-09-2004
dixinet



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хороший вариант - использовать специальные программы для защиты ПО - ASProtect, Armadillo и т.д.

Всего записей: 591 | Зарегистр. 19-11-2002 | Отправлено: 17:36 02-09-2004
raven



Черный ворон
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Belocarsk
Во-первых идельной защиты не сушествет. Но, имхо, наиболее реальная - привязка номера к железу(ессно не стоит перебарщивать) + использовать хитрую проверку номера, не прямое - генерим пасс и сверяем с введенным + использовать новый пакер + лучше написать пакер самому
 
И всё равно твою защиту поломают
 
Добавлено
Привзяку мона сделать к цпу иду + ид материнки, пароль будешь генерить по спец коду, который будет генерить твоя прога. ессно гимор со сменой оборудования, но это не критично.
 
Так же проверку на номер стоит делать не тока при процедуре регистрации, но и в самых разных неожиданных местах.
 
Добавлено
+ если надо прикрутить супер-пупер защиту и дело серьезно - помедитируй над этим:
http://www.wasm.ru/forum/index.php?action=vthread&forum=5&topic=6996

----------
n/a

Всего записей: 992 | Зарегистр. 13-08-2002 | Отправлено: 20:23 02-09-2004 | Исправлено: raven, 20:25 02-09-2004
Belocarsk

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем спасибо, плохо, что нет форума по защите софта.
Многи любят ломать, а вот строить....

Всего записей: 10 | Зарегистр. 16-06-2004 | Отправлено: 06:05 03-09-2004
Arion



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Многи любят ломать, а вот строить....

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

----------
Хачу роботать каректором арфаграфии

Всего записей: 436 | Зарегистр. 29-06-2003 | Отправлено: 07:58 03-09-2004
OldGopher



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Часть критичного кода неплохо бы реализовать в драйвере. Тогда одно это резко поднимет стойкость. Не всякий хакер полезет в драйвер ядра.
 
В свою очередь драйвер можно "доделать" так, чтобы он запрещал работу или вешал комп при обнаружении отладчика ядра. Правда, тогда многие пользователи заартачатся...
 
Если повозиться, можно сделать драйвер самомодифицирующимся. Но тогда заартачатся новые Athlon64 и Prescott 775-й линии. Хотя, ИМХО, это тоже можно обойти, но я еще не проверял: нет соответствующего процессора.

Всего записей: 3803 | Зарегистр. 25-10-2001 | Отправлено: 15:20 03-09-2004
Looking



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MaxoHbkiu
Ключевые дискеты элементарно копируются прогами типа Floppy Disk Analyser. А у нормального пользователя может быть гимморой из-за плохого качества дискет или вирусов (если дискетку открыли для записи). Все таки более надежна аппаратная защита или привязка к железу.
 
Belocarsk
Вот еще по данной теме http://forum.ru-board.com/topic.cgi?forum=55&topic=4048#1
 
 

Всего записей: 1814 | Зарегистр. 02-06-2004 | Отправлено: 23:00 04-09-2004
mcs



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Belocarsk
Поищи в Королевстве Delphi. Там был проект АКМ (Анти Крэкинговые Мучения).
Есть довольно полезные материалы.

Всего записей: 453 | Зарегистр. 30-01-2003 | Отправлено: 11:24 05-09-2004
GratefulDead

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Looking
Ключевые дискеты можно форматить на 81 дорожку скажем, 81-ую не видно системными средствами. Под Досом такая защита прокатывала. Хотя винд такуювольность (прямое обращение к дискете через прерывания) видимо уже не позвляет.
 
dixinet
ASProtect делает 4 ветки в регистре, если из снести - то можно начинать отсчет снова.
Это если есть испытательный срок.

Всего записей: 107 | Зарегистр. 17-03-2004 | Отправлено: 10:32 09-09-2004
IN_C_P

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Belocarsk
По моему очень действенная защита получается при использовании физических электронных ключей, вставляемых в LPT порт и прошиваемых на определённые версии программы. Их нужно покупать, но они стоят того. Пока что ни одного действенного эмулятора млм крака для ключей Guarant я не встретил, хотя искал... очень..

Всего записей: 38 | Зарегистр. 13-05-2004 | Отправлено: 10:48 09-09-2004
Looking



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GratefulDead
Какая разница в чем потом ее использовать, главное в том, что сдублированная Floppy Disk Analyser дискета ведет себя полностью идентично оригиналу и там, где работает оригинал, дубль тоже будет работать (а сдублированные простыми средствами часто не прокатят).

Всего записей: 1814 | Зарегистр. 02-06-2004 | Отправлено: 10:49 09-09-2004
MANtiCORE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
собственно ...
1. если программа запускается, то её можно сломать.
2. даже если программа стоит 1$ а ломать её нужно будет месяц - сломают всё равно. ради спортивного интереса.
3. наиболее эффективными будут использования программных защит, если программа дешевле 300$ и аппаратных (затычки) если дороже. если программа стоит более 1000$ тут проще продавать не ключевой диск или затычку а ключевой компьютер с операционкой модифицированной настолько, чтобы кракеру геморрою было много (мне такой вариант попадался)
4. программу всё равно сломают
5. если программа постоянно дописывается, обновляется, изменяется, то ломать её нет смысла - пример антивирус STOP. даже если его поломать, то следующую версию тоже надо ломать. а они выходят очень часто.
6. хороший вариант предложил MeteO - через интернет гигабайт мусора засылается на сервер и столько же получается обратно. а проверяется один битик - разрешено/запрещено ...
7. со временем сломают даже это.

Всего записей: 959 | Зарегистр. 01-11-2002 | Отправлено: 18:20 04-10-2004
bytehunter



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
OldGopher

Цитата:
Часть критичного кода неплохо бы реализовать в драйвере. Тогда одно это резко поднимет стойкость. Не всякий хакер полезет в драйвер ядра.

 
Отладчик 'нулевого кольца', в народе самый распростаненный - сосулька, он же SoftICE, как раз и предназначается для отладки собственно драйверов и пакет называется DriverStudio, включая в себя загрузчик и т.д., то есть никакие там проверки в ядре программы не помогут. Для примера посмотри любые VxD драйвера тв-тюнеров и др. прог, использующик свои, а не системные тайминги; так вот, я к чему это написал, внедрять проверки в драйвера - бессмысленное дело, поломают сами вызовы проверок.
Ибо
Цитата:
If the program runs, it can be defiated
, так то оно так, но самая реальная защита - внедрять часть кода важных операций в аппаратный ключ защиты, например в e-token-совместимый и шифровать вызовы невоссановимыми алгоритмами, по MD-5 например (код брать из апп. ключа). Самостоятельная разработка практически невозможно, внедрение - дорого (за счёт стоимости самого ключа). Да, чем болеше в нем памяти, тем больше кода можно шифрануть.....
 
з.ы. а ньюбик в крякенге и так сможет поломать вызовы процедур;
крякер с небольшим стажем - распаковать  ASProtect, Armadillo и т.д.
далее - гораздо всё сложнее.
 
Belocarsk, ася в профиле, пиши по любым вопросам защиты информации...

Всего записей: 883 | Зарегистр. 03-02-2004 | Отправлено: 19:24 04-10-2004
Larry Laffer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
IN_C_P, плохо искал. Существует нормальный эмулятор Guardant, просто не для паблика (и, кстати, не один).
 
 
Добавлено:
Belocarsk, а твоя программа для паблика или просто куда-то на место работы хочешь поставить? От этого тоже очень много зависит...

Всего записей: 604 | Зарегистр. 09-10-2004 | Отправлено: 18:08 11-04-2005
Pinocchio

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Belocarsk
Выдавай только демо версию с урезанным функционалом. Может когда нибудь кто нибудь заплатит, вот тогда и выдавай нормальную, но с учётом, что уже эта нормальная может считаться урезанной. Короче пополняй функционал пропорционально денежным вложениям.

Всего записей: 683 | Зарегистр. 18-11-2002 | Отправлено: 08:26 12-04-2005
MoKC0DeR



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
bytehunter

Цитата:
шифровать вызовы невоссановимыми алгоритмами, по MD-5 например

С каких пор MD5 - агоритм шифрования ?
Что такое "невоссановимыми алгоритмами"? Т.е. зашифровал а расшифровать не можешь ?
ИМХО Armadillo (Asprotect) свежий + проверка с тайм бомбами самопально реализованная. Остановит основную массу крэкеров. Остальных ~2% не остановишь ничем.  
OldGopher
Человека который "руками" снимает Armadillo - драйвером не напугаешь

Всего записей: 510 | Зарегистр. 31-03-2004 | Отправлено: 09:18 12-04-2005
IgorTs2003

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Абсолютной может быть только защита когда часть кода выполняется в неком стороннем устройстве, которое человек получает при покупке программы. ПРичем это устройство должно иметь аппаратную защиту от взлома (при попытке "попилить" кристалл информация теряется). Подобными устройствами являются eTocken и iKey. Проблема в том что они ограниченны очень специфичными задачами. А именно хранение ключей и внутреннее шифрование/хэширование на основе этих ключей. Если программа будет использовать эти функции ключа для своих нужд, то без такого устройства она будет совершенно бесполезна. Хотя, конечно, остается теоретическая возможно, что хакер допишет функциональность, позволяющую делать все это программно и хранить ключи вне устройства.
 
Думаю, что скоро на рынке появятся устройсва, которые позволят не только использовать зашитые алгоритмы, но и прошивать свои собственные, вот тогда уже взлом программы станет весьма проблематичным.

Всего записей: 38 | Зарегистр. 03-03-2003 | Отправлено: 16:39 22-04-2005
gertoth



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Часть алгоритма вынести на сервер.

Всего записей: 80 | Зарегистр. 21-01-2002 | Отправлено: 23:52 22-05-2005
   

Страницы: 1 2

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Как лучше всего защитить написанную программу
ShIvADeSt (27-11-2006 02:38): http://forum.ru-board.com/topic.cgi?forum=33&topic=4619&start=20#14


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru