Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > аппарата защита программы |
Автор: hovercraft 20.3.2013, 15:02 |
Всем здравствуйте. 1. Вопрос собственно в том как работают аппаратные ключи и привязывается к ним софт. Вот хочу для диплома сделать на микроконтроллере STM32 hid class или arv-ке 8-битке, устройство (с простенькой логикой) по которому софт будет идентифицировать пользователя. Задача исключить использование софта без ключа(также сделать батарейку на ключе и подсчитывать время пользования триал версии софта). 2. Экономическая обоснованность(стоит ли делать?). 3. Ссылки на ресурсы, ваше мнение, мысли по этому поводу прошу сюда. |
Автор: Dem_max 21.3.2013, 03:25 |
Код должен быть плавающим иначе любым usblyzer можно будет прочитать код и его сэмулировать. |
Автор: baldina 21.3.2013, 10:01 |
1. ключ реализует некую функцию с неизвестным алгоритмом. практический диапазон широк - генератор пар "запрос/ответ", хэширование и шифрование, исполнение в ключе произвольного кода. стойкость программы ко взлому (в предположении, что алгоритм ключа не скомпрометирован) зависит, каким образом программа взаимодействует с ключом: - простая проверка отклика ключа ломается заменой условного перехода на безусловный - использование типовых запросов (и получение типовых ответов) позволяет, перехватив и записав трафик обмена, создать табличный эмулятор ключа. это справедливо для всех способов защиты, поэтому стараются сделать число возможных запросов и ответов как можно бОльшим. - дешифрация блоков кода (часть программы предварительно шифруется). при грамотной реализации такой способ может затруднять анализ кода. без дешифрации программа просто не будет работать. для защиты от табличных эмуляторов, помимо хитростей в коде программы и драйвере ключа, делают многочисленные ложные запросы к ключу. 2. программу экономической выгодно защищать ключом, если её стоимость достаточно высока (а значит затраты на взлом могут быть тоже большими). Скажем, программу за $3000 видимо стоит защищать, а программу за $25 - нет (стоимость ключа увеличит стоимость программы минимум вдвое). К тому же наличие ключа усложняет логистику. 3. сходите на сайты производителей ключей, там есть информация. http://www.guardant.ru/ http://www.aladdin-rd.ru/ http://ru.safenet-inc.com Добавлено через 7 минут и 3 секунды все ключи устроены примерно так: память делится на внутреннюю, недоступную, прошиваемую спец. оборудованием, и доступную для программирования. доступные ячейки могут быть разных типов: чтение/запись, только чтение, недоступные для прямого чтения (там хранятся пароли). для программирования ключа также требуется пароль (зашитый в недоступную память). Добавлено через 11 минут и 19 секунд для диплома видимо достаточно создать однократно запрограммированный ключ с микропрограммой, позволяющей 1. выполнять хеширование с учетом пароля 2. устанавливать пароль (для записи пароля шифрования требуется знать специальный пароль, его можно жестко прошить) Добавлено через 12 минут и 7 секунд 3. писать/читать дополнительную ячейку(и) (скажем, для хранения id пользователя) |
Автор: drug007 29.3.2013, 19:19 |
Целесообразность защиты определяется стоимостью и/или временем взлома. Взломать можно любую защиту - вопрос сколько это будет стоить и сколько времени займет. Поэтому для полноценной защиты необходима и достаточна такая защита, обход которой либо дороже чем покупка, либо занимает время, по истечению которого программа/данные уже не будет представлять какой-либо интерес. Если приложение стоит 100 руб., а взлом 10000 руб. - никто не будет взламывать. Либо взлом этой же программы стоит 0 руб, но занимает 2 года, за которые выйдет уже новая версия и старой никто не будет пользоваться - тоже можно не переживать за взлом. |
Автор: baldina 29.3.2013, 21:16 |
так бывает? ![]() |
Автор: volatile 29.3.2013, 23:15 |
а где же хакеры со своим кодексом чести... все в коммерсанты подались? бесплатно ломали раньше... и не плохо ломали кстати... |
Автор: baldina 30.3.2013, 00:38 |
сложное никогда бесплатно не ломали воровским, что-ли? ![]() сейчас еще лучше. это ж как гонка вооружений. |
Автор: volatile 30.3.2013, 20:17 |
такие безапеляционные высказывания никогда не вызывали доверия. вы не в курсе, там своя идеология... |
Автор: baldina 31.3.2013, 19:42 |
![]() |
Автор: EvilsInterrupt 31.3.2013, 20:41 | ||
Ну не надо! ;) Ломали, ломаем и будем ломать! ;) Просто как всегда со взломом либо все в привате, либо просится 13% от стоимости программы, либо если программа очень очень нужна общественности, что ведет к популярности группы сделавшей релиз! ;) |