Мегаобучалка Главная | О нас | Обратная связь


Аппаратная защита программного обеспечения



2019-12-29 182 Обсуждений (0)
Аппаратная защита программного обеспечения 0.00 из 5.00 0 оценок




       На данный момент существует отдельное направление в компьютерной индустрии, занимающееся обеспечением защиты ПО от несанкционированного использования. Ещё на ранних стадиях развития компьютерных технологий применялись довольно разнообразные, но недостаточно гибкие методы такой защиты. Чаще всего она основывалась на нестандартном использовании носителей информации, которую можно обойти путём использования средств побитового копирования, поэтому уже после инсталляции дистрибутива "привязка" установленной прикладной программы к аппаратным характеристикам компьютера уже не играет особо важную роль. Серийные номера используются разработчиками ПО до сих пор, но возможность сделать неограниченное количество копий, если в наличии имеется только один требуемый ключ, сейчас практикуется на рынке "пиратских" компакт-дисков. В связи с этим в последнее время все большую популярность среди производителей программного обеспечения приобретают новые усовершенствованные программно-аппаратные средства защиты, известные как "аппаратные (электронные) ключи", являющиеся одним из достаточно надежных способов борьбы с нелегальным копированием.

Электронные ключи

       Под термином "электронный ключ" предполагается аппаратная реализация системы защиты и соответствующего программного обеспечения. Сам ключ представляет собой плату, защищённую корпусом, в архитектуру которой обязательно входят микросхемы памяти и, иногда, микропроцессор. Ключ может подключаться в слот расширения материнской платы ISA, или же к LPT, COM, PCMCIA, USB-порту компьютера. В его программное обеспечение входит модуль, который встраивается в защищаемое ПО (таким образом данное программное обеспечение "привязывается" к ключу, а не к конкретному компьютеру), и драйвера под различные операционные системы. Ключи в большинстве своём основаны на одной из трёх моделей существующих аппаратных реализаций: на основе FLASH-памяти, PIC или ASIC-чипов. Помимо этого, в некоторые ключи встраиваются дополнительные возможности в виде энергонезависимой памяти, таймеров, выбора алгоритма кодирования данных.

       Что касается аппаратной реализации электронного ключа на основе FLASH-памяти, то следует заметить, что он достаточно прост и является наименее стойким ко взлому (стойкость определяется типом программной части). В архитектуру такого ключа не входит микропроцессор, а в подобных системах критическая информация (таблица переходов и ключ дешифрации) хранится в памяти. Кроме того, такие ключи обладают наименьшей степенью прозрачности для стандартных протоколов обмена. Защита заключается в считывании из ключа определённых данных и участков кода на этапе проверки легальности использования. Чтобы дезактивировать такую защиту в большинстве случаев взломщику потребуется аппаратная часть системы защиты. Методика взлома основана на перехвате диалога между программной и аппаратной частями для доступа к критической информации. Другими словами: определяется алгоритм обмена информацией между ключом и компьютером, считывается информация из FLASH-памяти и пишется соответствующий эмулятор.

       Для PIC- и ASIC-ключей защита строится по принципиально другому методу. В их архитектуру уже входит микропроцессор. Помимо этого данные микросхемы включают небольшое количество оперативной памяти, память команд и память для хранения микропрограммы. В аппаратной части содержится ключ дешифрации и блоки шифрации/дешифрации данных. Ключи на этой основе намного более устойчивы ко взлому и являются более прозрачными для стандартных протоколов обмена. PIC-чипы программируются разработчиками ключей, поэтому PIC-ключи являются более дорогой перспективой для заказчика. Аппаратную копию такого ключа сделать довольно проблематично за счёт того, что микропрограмма и внутренняя память защищены от внешнего считывания, НО к таким ключам применимы методы криптоанализа. Достаточно сложной является также задача перехвата ключа (основная обработка производится аппаратной частью). Однако остается возможность сохранения защищенной программы в открытом виде после того, как система защиты отработала.

       Отрицательными сторонами аппаратных (электронных) ключей является:

1. Возможная несовместимость с программным обеспечением или аппаратурой пользователя;

2. Затруднение разработки и отладки программного обеспечения;

3. Повышение системных требований для защищаемого программного обеспечения;

4. Угроза кражи;

5. Невозможность использования защищённого ПО в портативных компьютерах;

6. Затраты на приобретение;

7. Несовместимость с аппаратными ключами других фирм;

8. Снижение отказоустойчивости программного обеспечения;

       Следует заметить, что достаточно часто возникают конфликты ключа со стандартными устройствами, подключаемыми к портам компьютера, особенно это касается подключения к LPT и COM. Теоретически возможен случай, когда ключ получает данные, не предназначенные ему, и интерпретирует их как команду на чтение/запись FLASH-памяти, что может привести к порче хранимой информации или нарушению протокола обмена с другим устройством, подключенным к тому же порту компьютера. Кроме того, возможны угрозы перегрузки трафика при конфликтах с сетевым программным или аппаратным обеспечением.

"Ключевые диски"

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

СМАРТ-карты

       В последнее время в качестве электронного ключа широко распространились СМАРТ-карты. Носителем информации в них является микросхема. Условно их можно разделить на микропроцессорные, карты с памятью и криптографические (поддержка алгоритмов DES, RSA и других) карты.

       Карты с памятью или memory cards являются самыми простейшими из класса СМАРТ-карт. Объем их памяти составляет величину от 32 байт до 16 килобайт. Такие карты делятся на два типа: с защищенной и незащищенной (полный доступ) памятью. Уровень защиты карт памяти выше, поэтому они могут быть использованы в прикладных системах небольших финансовых оборотов.

       Карты с микропроцессором или CPU cards представляют собой микрокомпьютеры и содержат все соответствующие основные компоненты. Часть данных операционной системы микропроцессорной карты доступна только её внутренним программам. Также она содержит встроенные криптографические средства. За счёт всего перечисленного подобная карта достаточно защищёна и может быть использована в финансовых приложениях.

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



2019-12-29 182 Обсуждений (0)
Аппаратная защита программного обеспечения 0.00 из 5.00 0 оценок









Обсуждение в статье: Аппаратная защита программного обеспечения

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (182)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)