В феврале Rainbow Technologies (http://www.rainbow.msk.ru), дистрибьютор американской компании SafeNet (http://www.safenet-inc.com) на территории России и стран СНГ, представила новое семейство аппаратных ключей Sentinel Hardware Keys, предназначенных для защиты ПО от нелегального использования. Эти устройства совмещают в себе криптографию с открытым ключом (ECC), алгоритмы шифрования AES и надежную аутентификацию.
Используя Sentinel Hardware Keys в качестве средства защиты, разработчики, дистрибьюторы и пользователи ПО получают следующие возможности.
Защищенный обмен данными. Для защиты потока данных между ключом и защищаемым приложением используется 128-битный алгоритм AES и алгоритм шифрования с открытым ключом ECC (ECKAS-DH1). Это позволяет успешно противостоять атакам среднего уровня, таким, как «запись и воспроизведение», а также эмуляции драйвера ключа. Использование уникального ключа шифрования для каждой сессии обмена данными между ключом и приложением делает атаку типа «прямой перебор» практически нереализуемой. Кроме того, Sentinel Hardware Key содержит внутренний идентификатор, эффективно предотвращающий создание ключей-двойников.
Технология Sentinel Shell предлагает способ быстрой защиты приложения без внесения каких-либо изменений в исходный код. Эта многоуровневая технология усиливает защиту приложения и предоставляет дополнительные возможности противодействия хакерским атакам. Она сжимает код приложения для уменьшения его общего размера, что усложняет реконструкцию кода и воссоздание алгоритмов работы. Кроме того, Sentinel Shell предотвращает снятие дампа памяти и обеспечивает защиту от использования отладчиков.
Многозадачность. Применение многозадачной технологии Sentinel позволяет отрабатывать уникальные независимые сеансы обращения к ключу одновременно для всех защищенных приложений. При этом не снижается производительность. Кроме того, позднее можно добавлять защиту для новых приложений, не меняя уже существующую структуру защиты.
Структура памяти. Благодаря технологии V-Cell разработчики получают простой и удобный доступ к рабочей памяти ключа, используемой для хранения данных. Технология, основанная на принципе зеркалирования, гарантирует высокий уровень надежности за счет самокоррекции любых ошибок, возникающих при обмене информацией между ключом и приложением.
Языки программирования. Ключи Sentinel защищают приложения, созданные с помощью различных сред разработки. Поставляемые шаблоны для Microsoft Visual C++, Microsoft Visual Basic, Microsoft .NET и т. д. позволяют быстро внедрить защиту в приложения. Sentinel Hardware Key обеспечивают поддержку приложений для многочисленных платформ в рамках одного цикла проектирования, что уменьшает стоимость и время разработки.
Упрощенное внедрение. Высокоуровневые интерфейсы программирования Business Layer API заранее сконфигурированы, что позволяет сократить временные затраты (примерно на 60%) на низкоуровневое программирование и получить наивысший уровень защиты и контроля над сложными моделями лицензирования. Логическая адресация в Sentinel API позволяет разработчикам добавлять и изменять элементы защиты без необходимости использовать определенные адреса памяти. Это значительно ускоряет процесс разработки, снижая риск возникновения ошибок, обусловленных перезаписью информации в ячейках памяти.
Технология Sentinel позволяет одновременно программировать несколько ключей. Она также предусматривает возможность перенастройки параметров лицензирования, в том числе и на этапе самого программирования ключей, при этом не требуется изменять саму используемую схему защиты. Для поставщиков ПО предусмотрены защищенные способы удаленного изменения параметров лицензий, например, при обновлении ПО или добавлении новых лицензий.
Лицензирование с учетом времени. Технология V-Clock позволяет реализовать модели лицензирования, в которых учитывается временной критерий: Trial, «Демо-версия», «Использование ПО по подписке» (например, при ежемесячной оплате) и т. д. V-Clock проверяет и сохраняет системное время в ключе для повторных проверок и подтверждения «временного соответствия». Технология не требует встроенной батареи и эффективно противостоит подмене времени.
Сетевое лицензирование. Sentinel Hardware Keys представлены в двух модификациях: локальной и сетевой. Сетевая версия позволяет реализовать сетевую модель лицензирования приложений и дает возможность мониторинга серверов для контроля использования лицензий в сети (через Web-браузер). Системный администратор может отменить действие лицензий для их перераспределения между пользователями. Это обеспечивает контроль использования лицензий на всем предприятии.
Типы ключей. Новая концепция лицензирования предполагает использование трех типов ключей, которые имеют разную аппаратную реализацию:
- пользовательский ключ (User Key): содержит параметры лицензий защищенного ПО;
- дистрибьюторский ключ (Distributor Key): используется дистрибьютором ПО для программирования пользовательских ключей;
- ключ разработчика (Developer Key): предназначен для разработчика ПО и служит для программирования пользовательских и дистрибьюторских электронных ключей.
Аппаратные различия между этими тремя типами ключей состоят в том, что, например, пользовательский ключ нельзя запрограммировать как дистрибьюторский и наоборот. Это позволяет предотвратить несанкционированные действия не только третьих лиц, но и сотрудников компании-разработчика ПО, предотвращая «неучтенные» программирования и генерации обновлений лицензий. Дистрибьюторский ключ, который создается с указанием разрешенных программирований пользовательских ключей, позволяет также решить задачу защиты дистрибьюторской сети.