Скачать презентацию Аппаратные ключи Ключ HASP Лекция 2  подготовил Скачать презентацию Аппаратные ключи Ключ HASP Лекция 2 подготовил

Лекция 2 Hasp Маро.ppt

  • Количество слайдов: 12

Аппаратные ключи Ключ HASP Лекция 2 Презентацию подготовил Аспирант каф. БИТ Евстафьев Г. А. Аппаратные ключи Ключ HASP Лекция 2 Презентацию подготовил Аспирант каф. БИТ Евстафьев Г. А.

Все ключи HASP построены на ASIC-чипах (Application Specific Integrated Circuit), разработано компанией Aladdin. Этот Все ключи HASP построены на ASIC-чипах (Application Specific Integrated Circuit), разработано компанией Aladdin. Этот ключ может использоваться с USB и с PC-Card. Основная особенность этих ключей – в них используется функция шифрования. HASP HL Basic Аппаратно реализованный алгоритм шифрования AES/128 бит; кроссплатформенность (Windows, Linux Mac). HASP HL Pro защита до 38 приложений или модулей на один ключ; уникальный ID номер, что позволяет сделать защиту каждой копии уникальной; высокий уровень защиты (алгоритм AES/128); защищенная память (112 байт на чтение/запись; 112 байт только на чтение); возможность дистанционного перепрограммирования ключа; HASP HL Max защита до 233 локальных приложений или модулей на один ключ. защищенная память (4 KB на чтение/запись; 2 KB только на чтение). уникальный ID номер. высокий уровень защиты (алгоритм AES/128). возможность дистанционного перепрограммирования ключа. HASP HL Net защита сетевых приложений; ограничение на количество одновременно работающих пользователей; защита до 233 сетевых приложений или модулей на один ключ; защищенная память (4 KB на чтение/запись; 2 KB только на чтение); уникальный ID номер; высокий уровень защиты (алгоритм AES/128); возможность дистанционного перепрограммирования ключа; HASP HL Time организация аренды, лизинга, подписки на обновления; распространение пробных (trial) версий; защита до 233 локальных приложений или модулей на один ключ; защищенная память (4 KB на чтение/запись; 2 KB только на чтение); уникальный ID номер; высокий уровень защиты (алгоритм AES/128); возможность дистанционного перепрограммирования ключа;

Защита приложений с помощью HASP осуществляется присутствии корректного ключа HASP в системе. При заказе Защита приложений с помощью HASP осуществляется присутствии корректного ключа HASP в системе. При заказе ключей в компании Aladdin заказчик получает ключи со специальной информацией о заказчике и его компании. Существует понятие «код разработчика» - это уникальный код, который компания присваивает каждому разработчику. При заказе дополнительных ключей используется тот же код заказчика или разработчика, что и ранее. Каждый ключ имеет свой уникальный идентификационный номер ID, независящий от разработчика. Запускаемое приложение может проверить этот идентификационный номер и точно сказать присутствует ли данный ключ в системе или нет.

Методы защиты с помощью ключа HASP Существует 2 основных метода: HASP API HASP Envelope Методы защиты с помощью ключа HASP Существует 2 основных метода: HASP API HASP Envelope Второй метод производит защиту приложения, создавая: Ø Из незашифрованного сообщения зашифрованное; Ø Создает вокруг него защитный щит. Не имея ничего в приложении HASP шифруем, добавляем код и средство антиотладки. Все это составляет защищенный конверт приложения. Второй метод использует различные сервисы защиты, которые могут вставляться разработчиком непосредственно в программу: Ø Зашифрование; Ø Расшифрование; Ø Получение ID номера. Могут быть использованы оба метода – сначала первый, потом второй.

Основные методы защиты ПО с использованием HASP На присутствие корректного ключа в системе. Это Основные методы защиты ПО с использованием HASP На присутствие корректного ключа в системе. Это присутствие может быть проверено несколькими методами: Ø С использованием механизма шифрования, основывающегося на присутствии ключа; Ø Проверка специфичного ID-номера; Ø С использованием функции памяти ключа. При шифровании данных используется код разработчика. Данные могут быть зашифрованы как с использованием утилиты HASP SRM, так и с использованием HASP API. HASP SRM – зашифрование, расшифрование, редактирование данных. Зашифрование является как функцией от кода разработчика, так и от защищаемого приложения (его данных). Таким образом, шифрование одной и той же строки ключами разных разработчиков будет приводить к разным результатам. Использование ID. Защищенное приложение может проверить ID с помощью HASP ID, для этого также может использоваться HASP SRM (прочитать ID-номер).

Защита с помощью HASP SRM Envelope Ø Защищать приложения Ø Защищать файлы данных WIN Защита с помощью HASP SRM Envelope Ø Защищать приложения Ø Защищать файлы данных WIN 32 Для того чтобы защитить приложение: 1. запускается утилита HASP SRM Envelope, в главной вкладке Envelop 2. вводится путь и имя защищенного приложения в поле Unprotected File 3. вводятся пароли HASP в соответствующее поле Если разрабатывается защита с использованием FAS (Full Authorization System), то необходимо проверить номер программы и количество операций (вкладка Options) Если используется HASP HL Time, то необходимо проверить номер программы и дату окончания действия лицензии. 4. нажать Protect и приложение запустится

Защита файлов данных Во вкладке Envelop вводится путь, пароли и в поле Encryption Key Защита файлов данных Во вкладке Envelop вводится путь, пароли и в поле Encryption Key – вводится дополнительный собственный ключ (независимый). При помощи кнопки Add в группе Data Files to Encrypt выбираются необходимые файлы. В группе Data Files to Decrypt at Run Time можно ввести маску *, txt Protect? Encrypt Selected Files. Редактирование памяти ключа с помощью HASP Edit Основной деятельностью утилиты HASP SRM является просмотр и редактирование (496 байт – общая память, 448 байт – под нужды FAS). На нужды хранения информации об одном приложении – 4 байта (максимум может быть 112 приложений). При запуске утилиты запрашивается 2 пароля. Возможности HASP SRM также включают просмотр ID номера и шифрование/расшифрование данных.

Защита с помощью HASP API При защите мы должны проанализировать программный код приложения, в Защита с помощью HASP API При защите мы должны проанализировать программный код приложения, в том числе на наличие ошибок. Все это сделать несколько раз, встроить в приложение, скомпилировать программный код с учетом вставок и связать его с объектным кодом HASP. Для усиления можно после этого использовать HASP SRM Envelop. Основные группы сервисов: HASP Login – устанавливает сеанс доступа к Компоненту и определяет контекст сессии. HASP Get Info – применяется для запроса информации о системных компонентах в соответствии с заданными параметрами поиска. HASP Encrypt – шифрует послание на подключенный ключ HASP 5 данные, используется совместно с сервисом HASP Decode Data, проверяет подсоединен ли ключ HASP Decrypt – дешифруем данные, посылаемые на подключенный ключ.

hasp_get_info() Описание Данная функция применяется для запроса информации о системных компонентах в соответствии с hasp_get_info() Описание Данная функция применяется для запроса информации о системных компонентах в соответствии с заданными параметрами поиска, а также для представления этой информации в заданном формате. Синтаксис hasp_get_info( char * scope, char * format, hasp_vendor_code_t vendor code, char ** info ) Hasp_login() Описание Устанавливает сеанс доступа к Компоненту и определяет контекст сессии. Синтаксис hasp_login( hasp_feature_t feature_id, hasp_vendor_code_t vendor_code, hasp_handle_t * handle )

hasp_logout() Описание Закрывает сессию или контекст. Синтаксис hasp_logout( Hasp_hasndle_t handle ) hasp_read() Описание Данная hasp_logout() Описание Закрывает сессию или контекст. Синтаксис hasp_logout( Hasp_hasndle_t handle ) hasp_read() Описание Данная функция считывает данные из памяти ключа HASP SRM. Синтаксис hasp_read ( hasp_handle_t handle, hasp_fileid_t fileid, hasp_size_t offset, hasp_size_t length, void * buffer )

hasp_write() Описание Функция hasp_write() используется для записи данных в память ключа HASP SRM. Синтаксис hasp_write() Описание Функция hasp_write() используется для записи данных в память ключа HASP SRM. Синтаксис hasp_write( hasp_handle_t handle, hasp_fileid_t fileid, hasp_size_t offset, hasp_size_t length, void * buffer )

hasp_decrypt() Описание Расшифровывает данные в буфере с использованием алгоритма AES. Синтаксис hasp_decrypt( hasp_handle_t handle, hasp_decrypt() Описание Расшифровывает данные в буфере с использованием алгоритма AES. Синтаксис hasp_decrypt( hasp_handle_t handle, void * buffer, hasp_size_t length ) hasp_encrypt() Описание: Шифрует буфер с помощью алгоритма AES. Синтаксис: hasp_encrypt( hasp_handle_t handle, void * buffer, hasp_size_t length )