MorePC - Главная страница


О сайте

Регистрация

Обратная связь

Реклама на сайте

Публикации на сайте

Карикатуры

  Категории СВТ     Тесты и методики испытаний     Новости СВТ     Проблемы информатизации     Форум     Опросы     Словарь     Поиск  

     Средства защиты информации : Ключи для защиты программ : ALADDIN Software Security R.D. HASP  

Сравнить московские цены на ALADDIN Software Security R.D. HASP

ALADDIN Software Security R.D. HASP

версия для печати


HASP - стандарт де-факто для защиты программного обеспечения


HASP (Hardware Against Software Piracy) - это аппаратно-программная инструментальная система, предназначенная для защиты программ и данных от нелегального использования, пиратского тиражирования и несанкционированного доступа к данным, а также для аутентификации пользователей при доступе к защищенным ресурсам.

Принцип работы

Основой ключей HASP является специализированная заказная микросхема - ASIC (Application Specific Integrated Circuit), имеющая уникальный для каждого ключа алгоритм работы. Принцип защиты состоит в том, что в процессе выполнения защищённая программа опрашивает подключённый к компьютеру ключ HASP. Если HASP возвращает правильный ответ и работает по требуемому алгоритму, программа выполняется нормально. В противном случае, по Вашему усмотрению, она может завершаться, переключаться в демонстрационный режим или блокировать доступ к каким-либо функциям программы.

Модели HASP

Большинство моделей ключей HASP имеют энергонезависимую программно-перезаписываемую память (EEPROM).

Модель ключа (для PC) Размер памяти
HASP4 Standard нет
HASP4 M1 112 байт
HASP4 M4 496 байт
HASP4 Time 512 байт
HASP4 Net 496 байт
PC-Card HASP4 496 байт

Используя память ключа, Вы можете:

  • управлять доступом к различным программным модулям и пакетам программ
  • назначать каждому пользователю защищенных программ уникальный номер
  • сдавать программы в аренду и распространять их демо-версии с ограничением количества запусков
  • хранить в ключе пароли, фрагменты кода программы, значения переменных и другую важную информацию.

Механизм защиты

У каждого ключа HASP с памятью имеется уникальный опознавательный номер, или идентификатор (ID-number), доступный для считывания защищёнными программами. Идентификаторы позволяют различать пользователей программы. Проверяя в программе идентификатор HASP, пользователь имеет возможность предпринимать те или иные действия в зависимости от наличия конкретного ключа. Идентификатор присваивается электронному ключу в процессе изготовления, что делает невозможным его замену, но гарантирует надежную защиту от повтора. С использованием идентификатора можно шифровать содержимое памяти и использовать возможность ее дистанционного перепрограммирования.

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

  • Автоматически - с использованием утилиты HASP Envelope (оболочка)
  • Вручную - с помощью HASP API (Application Programming Interface - программный интерфейс)

Комплект разработчика HASP Developer's Kit (DK)

Комплект разработчика предназначен для разработчиков, использующих в качестве средства программной защиты электронные ключи HASP. Он включает в себя все необходимое для начала работы:

  • электронный ключ HASP
  • специальное программное обеспечение, обеспечивающее защиту программных модулей и "привязку" к электронному ключу
  • схемы и методы защиты программ, обнаружения и борьбы с отладчиками, контроля целостности.

В комплект разработчика входит набор утилит и инструментов для быстрого и легкого использования системы защиты HASP.

Мастер установки защиты HASP Wizard всего за несколько шагов поможет быстро установить защиту на Ваше приложение, в том числе и в том случае, когда Вам не доступны исходные тексты.

Система Remote Update System позволяет производителю программного обеспечения дистанционно перепрограммировать память ключа HASP, посылая пользователю необходимую информацию по телефону или по факсу.




Концепция защиты HASP

Основой ключей HASP является специализированная заказная микросхема - ASIC (Application Specific Integrated Circuit), имеющая уникальный для каждого ключа алгоритм работы. Принцип защиты состоит в том, что в процессе выполнения защищённая программа опрашивает подключённый к компьютеру ключ HASP. Если HASP возвращает правильный ответ и работает по требуемому алгоритму, программа выполняется нормально. В противном случае, по Вашему усмотрению, она может завершаться, переключаться в демонстрационный режим или блокировать доступ к каким-либо функциям программы.

ASIC-чип ключа, разработанный инженерами компании Aladdin, производится по 1,5-микронной E2-технологии и содержит более 2500 вентилей на кристалле. Новый чип обеспечивает высокий уровень защиты и обеспечивает повышенную совместимость и прозрачность. Это стало возможным благодаря микропотреблению нового ASIC-чипа (Uпит.<1.8 V, Iпот.>18 мкА).

Функции защиты

  • мощный заказной ASIC-чип
  • возможность генерации уникальной серии кодов y=f(x)
  • до 496 байт EEPROM-памяти, доступной на чтение-запись
  • до 100,000 циклов перезаписи каждой ячейки памяти
  • срок хранения данных не менее 10 лет
  • кодированный динамически меняющийся ("плавающий") протокол обмена ключа с портом
  • неизменяемый уникальный код разработчика и серийный номер ключа
  • прозрачность ключа для принтеров и других устройств
  • возможность простого каскадирования более 10 штук
  • отсутствие элементов питания
  • международный сертификат качества и безопасности

Способы защиты

Система HASP предоставляет широчайший выбор различных методов защиты:

  • с использованием защитного "конверта" (Envelope) для DOS- и WINDOWS-приложений (16/32 разр.)
  • с использованием функций обращения к ключу (API) более чем для 300 языков, компиляторов и систем программирования
  • с использованием структурного кода PCS (Pattern Code Security)
  • с использованием DLL
  • с помощью резидентного TSR-драйвера

Защищённые программы общаются с ключом HASP через драйвер устройства HASP.

Как работает PCS?

PCS - это механизм скрытого вызова функций HASP_API, при котором параметры и результаты функции HASP не передаются через стек, как при вызовах обычных процедур. При этом снятия протокола ПРОГРАММА HASP_API и "подпихивания" его через точку входа HASP_API оказывается недостаточно.

Использование PCS эффективно как против битового хака (усложнение анализа), так и против программных эмуляторов.

Защита с использованием "конверта" (Envelope)

Предназначена для защиты уже готовых программ (DOS- или WINDOWS-приложений) без вмешательства в исходный код программы. Вся процедура установки защиты занимает всего несколько минут. Таким способом могут быть защищены COM, EXE и DLL -файлы, в том числе и содержащие внутренние оверлеи. При защите тело программы шифруется и в нее добавляется специальный модуль, который при запуске защищенной программы перехватывает управление на себя. Защитный "конверт" содержит специальные антиотладочные и антитрассировочные средства.

Защита с использованием функций API

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

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

Главное назначение API - предоставление всего комплекса гибких технологий маркетинга программ.

Наилучший результат дает совместное использование двух методов защиты: внутренней защиты с использованием API и внешней пристыковочной (Envelope), обеспечивающую защиту от изучения логики работы, трассировку и модификацию защищенной программы.

Чтобы максимально защитить свою программу, применяйте совместно HASP Envelope и API:

  • включите вызовы функций HASP API в исходные тексты программы
  • скомпилируйте и скомпонуйте её с объектными файлами или DLL HASP
  • обработайте получившийся выполняемый файл утилитой HASP Envelope.

После защиты программы с ней смогут работать только законные пользователи при наличии ключа HASP, полученного от Вас вместе с программой.

Простота и технологичность

Лёгкость в освоении и единый программный интерфейс (API) всех типов ключей дают возможность легко и быстро внедрить функции HASP в Ваши программы.

В комплекте программного обеспечения для ключей HASP имеется поддержка практически для всех известных языков программирования и компиляторов.

Для IBM PC совместимых компьютеров имеется программная поддержка всех основных языков и компиляторов, что позволяет создавать защищённые программы на всех основных платформах, для локальных и глобальных сетей.

Кроме того, программное обеспечение HASP постоянно обновляется, дополняется и является свободно доступным.

Код разработчика

Каждый производитель программ получает ключи разных серий. Внутри одной серии все ключи одинаковы и имеют единый код разработчика. Код разработчика - это уникальный код, который "зашивается" в ASIC-чип при изготовлении ключа и не поддается изменению, обеспечивая таким образом полную защиту от подделки. Код представляет собой комбинацию из 5 - 7 букв и цифр, напечатанных на этикетке каждого ключа. При заказе дополнительных ключей HASP Вам потребуется знание Вашего кода разработчика.

Пароли

С кодом разработчика однозначно связаны пароли. Пароли представляют собой два целых числа и сообщаются каждому разработчику при первой поставке. Пароли необходимы для доступа к ключу с заданным кодом разработчика и для использования входящих в комплект утилит.

Входные и ответные коды

Входной код - это целое число в диапазоне от 0 до 65535, посылаемое Вашей программой ключу HASP.

Ответный код - целое число, посылаемое ключом обратно в защищённую программу. HASP возвращает четыре ответных кода на каждый входной код, полученный от защищённой программы. Значения ответных кодов определяются кодом разработчика данного ключа и входным кодом.

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

Шифрование

Реализована комплиментарная пара функций Encrypt/Decrypt, позволяющая зашифровывать и расшифровывать данные и/или исполняемый код программы через ключ. Криптографическое поведение ключей идентично в пределах серии, связанной с определенным кодом разработчика.

Уникальная серия

Каждый производитель программ получает ключи разных серий. HASP позволяет использовать функцию Y=F(X), где X - посылаемое в ключ число, а Y - возвращаемые ключом четыре целых числа. Внутри одной серии все ключи одинаковы, что обеспечивает совместимость с ранними моделями ключей.

Универсальность

Ключи HASP предназначены для работы на всех стандартных платформах:

  • IBM PC и PC-совместимых
  • PS/2
  • на рабочих станциях и серверах типа IBM RS6000, DEC Alpha, Silicon Graphics, Sun, HP-9000 и др.
  • Macintosh, PowerMac, Quadra, Powerbook
  • Japanise NEC и Fujitsu

Для подключения ключей HASP помимо стандартного порта USB, может использоваться:

  • параллельный порт Centronics (normal, ECP, EPP)
  • PC-Card (PCMCIA) слот
  • специальная плата, вставляемая в PSI или ISA-слот PC
  • карт-ридер для работы со смарткартами (PC/SC-совместимый)
  • ADB-порт (для Macintosh)
  • разъем в принтере (14/36-pin) для подключения к компьютеру
Размер ключа всего 39 мм!

Поддерживаемые системы

  • Windows NT / 2000 / XP
  • Windows 95 / 98 / ME
  • OS/2
  • Linux
  • MacOS
  • локальные сети с протоколами IPX, NetBIOS и TCP/IP

Поддержка операционных систем DOS, DOS Extenders, Windows 3.xx и Win 32s прекращена, однако по специальному запросу возможна комплектация версиями программного обеспечения, обслуживающими данные системы.




Источник: ALADDIN Software Security R.D.

ALADDIN Software Security R.D. HASP Вы можете обсудить на форуме.




вверх
  Copyright by MorePC - обзоры, характеристики, рейтинги мониторов, принтеров, ноутбуков, сканеров и др. info@morepc.ru  
разработка, поддержка сайта -Global Arts