C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Защита от тиражирования программ
Dmitri
  Отправлено: 01.09.2004, 16:33


admin@localhost

Группа: Модератор
Сообщений: 110



Мне надо защитить один коммерческий программный продукт от несанкционированного тиражирования.

Насколько я понимаю, самый простой путь — привязка к CD. Прочитал статью "Антиконтрацептивы для CD" в "Хакере" 05/04. После ее прочтения мне стало невесело: основная ее мысль в том, что все существующие защиты давно поломаны, и, если нельзя скопировать защищенный диск, то сэмулировать-то запросто. В статье приводится список защит, которые уже просто не актуальны: Cactus Shield, cd-cops, laser-lock, LibCrypt, SafeDisk 1/2, SecoROM, Star-Force 1/2. И это только public список. Я подозреваю, что на самом деле дело обстоит еще хуже.

Насколько я понял, привязка к CD обходится даже любителями, знай себе, нажимай на кнопки в эмуляторе и все. И даже если Star-Force 3 (я так понял, это самая эффективная защита CD на сегодняшний день?) сейчас не поддерживается эмуляторами, то через месяц-другой будет.

Хотя мой продукт предназначен для одной организации и его не будут изучать профессионалы крякеры (т.к. он нужен не всей России, как, например, 1С), но, тем не менее, хотелось бы создать более или менее надежную защиту (от заинтересованных лиц в этой организации, а такие найдутся).

Возможно ли все-таки обеспечить должную защиту путем привязки к CD? Может, все-таки есть методы, которые не под силу взломщикам?


Это первая часть вопроса. Теперь вторая: если все же надежная привязка к CD невозможна (или вы убедите меня в обратном?), то как организовать хорошую защиту программ от несанкционированного тиражирования?

Я вижу единственный способ: аппаратные ключи защиты. Что вы на это скажете? Насколько они надежны и оправдывают ли они себя? Какие нюансы есть в защите аппаратными ключами? Или они так же спокойно обходятся, как привязка к CD?


И, наконец, заключительная часть: какие книги посоветуете по данным двум проблемам (диски и ключи) и самой защите от копирования? Какие сайты стоит посетить, какие публикации почитать? Я пока читал только Склярова, "Искусство защиты и взлома информации".

Буду ОЧЕНЬ благодарен за помощь.
Георгий
Отправлено: 01.09.2004, 20:48


Почетный железнодорожник

Группа: Модератор
Сообщений: 874



только хорошо прикрученный аппаратный ключ предохраняет от несанкционированного использования. инструкция по прикрутке идёт в комплекте с ключём.

из нюансов могу только вспомнить проблемы возникающие с некоторым принтерами (если ключ на LPT).

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

вот http://www.guardant.ru/products/index.htm вроде нормальная игрушка

Отредактировано Георгий — 01/09/2004, 22:00
Konstantine
Отправлено: 02.09.2004, 08:55


Мастер участка

Группа: Модератор
Сообщений: 545



Я кстати когда-то обдумывал ещё один способ защиты — но плохо, что с помощью дискеты....

берём дискету, на ней наносин несколько царапин (механическим путём) и в прогу записываем карту диска. при этом прога должна проверять запись диска в эти и другие сектора.... остальное — по фантазии программиста.
Согласен, что дискета — это ненадёжное средство, и в ней новые бэды появятся быстро, но IMHO это самый надёжный способ после электронного ключа.
Если можно (я не знаю наверняка) так сделать с КД, то можно и на нём

Готов выслушать критику...
AVC
Отправлено: 02.09.2004, 09:18


Ветеран

Группа: Модератор
Сообщений: 1583



2Konstantine
Давно устаревшая, абсолютно не надежная система защиты имевшая название "ключевая дискета". Сам такие ломал еще в начале 90-х. Существовало море программ для взлома.
Если всетаки захотите использовать не царапйте дискету булавкой, а используйте только лазерное прожигание иначе царапины вам быстро разрушат головки дисковода.
xTrim
Отправлено: 02.09.2004, 09:19


Машинист паровоза

Группа: Участник
Сообщений: 208



есть такая древняя досовская программа, называется DiskDupу помоему, копирует образ дискеты один в один. соответственно и бэды все скопирует. т.е. скорее всего придется еще писать свой низкоуровневый драйвер дисковода, если вообще получится
Roman
Отправлено: 02.09.2004, 10:12


Дежурный стрелочник

Группа: Участник
Сообщений: 78



Согласен с Георгием "только хорошо прикрученный аппаратный ключ предохраняет от несанкционированного использования", но я отдал предпочтение Rainbow Technologies — недорого, гибко, удобно и надежно...
UA_Freeman
Отправлено: 02.09.2004, 13:37


Дежурный стрелочник

Группа: Участник
Сообщений: 31



Хорошо, а чем, по вашему, аппаратный ключ НАМНОГО лучше привязки к номеру винта? В конче концов сломать привязку к ап.ключу не сложнее, чем к номеру винта.... По сути, в этом случае винт и выступает ап.ключём. Зато не надо покупать эти ключи, высылать по почте и т.д.
Roman
Отправлено: 02.09.2004, 16:09


Дежурный стрелочник

Группа: Участник
Сообщений: 78



UA_Freeman  — А если у тебя винт накрылся? Перекомпилировать программу заново с новым номером? А если пользователь передумал и хочешь поставить эту прогу на другой комп  — переставлять винт и ставить систему заново с последующей установкой программы? И к тому же бегать за пользователем, чтоб он дал номер своего винта... wink.gif
А насчет "... сломать привязку к ап.ключу не сложнее, чем к номеру винта..." почитай документацию (на выше приведенном сайте) и все будет ясно без слов cool.gif
telepath
Отправлено: 02.09.2004, 16:36


Станционный диспетчер

Группа: Участник
Сообщений: 132



Насколько мне известно, аппаратные ключи ломаются. И уже давно.
В общем случае механизм типа:
сканер на порт (LPT etc)
собирается статистика
пишется эмулятор этого порта с девайсом на нем
AVC
Отправлено: 02.09.2004, 16:41


Ветеран

Группа: Модератор
Сообщений: 1583



2 UA_Freeman
Ага. Есть у нас така программа с привязкой к оборудованию. AVK называется. Сплошная головная боль. Машины и начинка к ним меняются не так уж редко и каждый раз звони в службу поддержки и проси у них новый код. Не то что ключ. Админ повесил его у себя и все пользователи сети им пользуются.
UA_Freeman
Отправлено: 02.09.2004, 18:40


Дежурный стрелочник

Группа: Участник
Сообщений: 31



Согласен, невозможность замены винта- недостаток.... Но, ИМХО, совсем не настолько большой, как вы тут утверждаете. Уж во всяком случае винты обычно меняются ОЧЕНЬ редко....
Конечно, кое-где есть своя специфика, но это отдельный разговор
Георгий
Отправлено: 02.09.2004, 19:44


Почетный железнодорожник

Группа: Модератор
Сообщений: 874



посмотрите статейки по той ссылке, что дал выше — там рассказно и о методах защиты от эмулятора ключа и от отладчика и т.д.
Gedeon
Отправлено: 03.09.2004, 08:18


Ветеран

Группа: Модератор
Сообщений: 1742



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

P.S. Эффективность привязки к харду зависит от того кто прогу ломать будет, тут примеры и мелкомякоти и 1С.

Отредактировано Gedeon — 03/09/2004, 09:22
UA_Freeman
Отправлено: 03.09.2004, 12:18


Дежурный стрелочник

Группа: Участник
Сообщений: 31



QUOTE (Gedeon @ 03/09/2004, 08:20)
Есть еще такая мысль. Без покупки в какую-либо контору программу просто не отдавать, а давать все же дэмо версию, которая не обладает некоторой функциональностью в принципе и ломать там нечего, а если купили, тогда нате и если предусмотрено количество экземпляров, прога ищет по сетке себя же(причем у ингсталяшек д.б. разный ключ или чего-то такое) и в какие-то моменты не сразу, а в процессе работы начинает выдавать каое-нить сообщение об ошибке(заранее предусмотренное автором) из чего он узнает по звонку с просьбой починить про то, что его нае...ли.

А что, хорошая идея! И главное, остроумная smile.gif
Конечно в серьёзной деятельности так никто делать не будет, ну так нам ничего такого и не надо.....
Решпект! cool.gif

Вернуться в Вопросы программирования в C++Builder