
- •Сетевые электронные ключи
- •Электронный ключ Guardant Sign Net
- •Электронный ключ Guardant Time Net
- •Принцип сетевой защиты
- •Для чего нужны электронные usb-ключи и смарт-карты eToken?
- •Преимущества eToken
- •Принцип работы
- •Формальное описание
- •Структура сертификата
- •Российские стандарты
- •Виды хеш-функций
- •Мультипликативная схема хеширования
- •Хеширование строк переменной длины
- •Идеальное хеширование
- •Описание
- •Универсальное хеширование
- •Описание
- •Технические преимущества ViPNet custom
- •Коммерческие преимущества ViPNet custom
Как это работает
Основная задача, стоящая перед разработчиком, которому нужно защищать свою интеллектуальную собственность, — сделать так, чтобы с его программой могли работать только легальные пользователи. Соответственно, пиратская копия должна либо не работать вовсе, либо работать в ограниченном или демонстрационном режиме.
Понятно, что защитить программу от копирования невозможно: любой файл, который может быть прочитан, будет скопирован — для запуска приложения операционная система должна прочитать файл и загрузить его в память компьютера. Поэтому устоявшееся словосочетание «защита от копирования» в отношении программного обеспечения, строго говоря, не имеет смысла.
Значит, необходим «объект», который нельзя (или неоправданно сложно) скопировать и без которого программа не смогла бы работать. Этим «объектом» и является электронный ключ. И следующая задача разработчика — сделать так, чтобы приложение и ключ составляли нераздельное целое таким образом, чтобы программа, «привязанная» к ключу, не могла без него полноценно функционировать.
В общих чертах схема «привязки» выглядит следующим образом. Приложение отправляет некоторый запрос к ключу и, если получает корректный ответ, продолжает работу в штатном режиме. На первый взгляд, все очень просто, но весь секрет состоит в том, какие именно запросы отправляет приложение, каким образом ключ их обрабатывает и как приложение проверяет корректность данных, полученных в ответ на запрос.
Сам по себе электронный ключ можно представить аппаратным «черным ящиком», выполняющим некоторые функции. Аналитик имеет доступ к входным и выходным данным, но не знает, какое преобразование выполняется внутри. Собственно, это преобразование и используется для привязки. Привязка приложения к ключу может производиться путем автоматической защиты готовой программы или встраиванием функций Guardant API в исходный код приложения, а также комбинацией этих методов.
Эволюция технологий защиты
За всю свою немалую по меркам IT-индустрии историю, по некоторым оценкам составляющую почти 30 лет, электронные ключи эволюционировали от примитивных перемычек, выставленных определенным способом, до современных интеллектуальных устройств, способных выполнять сложные вычисления.
С развитием самих устройств прогрессировали и функции преобразования данных, а как следствие — методы, которые используются для привязки к ним приложений. Удобно рассматривать функции преобразования в том порядке, в каком они появлялись в электронных ключах, и сопоставлять их с уровнем сложности нейтрализации привязки.
Проверка присутствия ключа |
Самый простой и древний способ привязки, применялся для самых первых ключей. Его нейтрализация не представляет практически никакой сложности. В настоящее время может использоваться только как подготовительная операция для последующей работы с ключом. |
Чтение данных из памяти ключа |
Приложение пользуется считанными из ключа статическими данными для своей дальнейшей работы. Этот способ появился, когда в ключах для хранения данных стали применяться схемы ПЗУ (ROM). |
Чтение и запись данных в память ключа |
Кроме чтения статических данных, приложение также пишет в ключ некую информацию для последующего использования. Этот способ является развитием предыдущего, он появился, когда для хранения данных в ключе начали использоваться электрически перепрограммируемые ПЗУ (EEPROM). |
Вычисление однонаправленных функций с секретом |
Это уже достаточно сложный метод, который возможен для ключей на программируемых микроконтроллерах и заказных микросхемах (ASIC). Однако его стойкость зависит от выбранной функции преобразования. Приложение работает с предопределенным набором входных данных и проверяет наличие ключа по предвычисленным выходным данным. При этом сами выходные данные или производные от них должны храниться непосредственно в приложении. Секрет для преобразования данных может задаваться либо разработчиками электронного ключа, либо разработчиками приложения. |
Зашифрование и расшифрование данных криптографически стойкими симметричными алгоритмами |
Появление этого метода было обусловлено ростом производительности микроконтроллеров, используемых в ключах. Он позволяет работать не с предопределенными, а с «натуральными» данными приложения, что затрудняет нейтрализацию такой привязки. Ключ шифрования задается разработчиками приложения и хранится в памяти электронного ключа, не покидая ее во время преобразования. |
Вычисление электронной цифровой подписи |
Ресурсов современных микропроцессоров достаточно для реализации в электронных ключах асимметричных криптографических алгоритмов. Основное достоинство этого метода состоит в том, что для привязки приложения к ключу можно взять абсолютно любые, и даже случайные, данные. Для проверки ЭЦП используются программно-реализованные алгоритмы, которые можно хорошо замаскировать среди других вычислений. |
Выполнение электронным ключом произвольного кода |
Один из самых современных методов. Основное его достоинство состоит в том, что ключ может выполнять осмысленные и полезные для приложения вычисления над «натуральными» данными. Из недостатков можно назвать необходимость правильного выбора алгоритмов, размещаемых в ключе. Критерии выбора основаны на производительности и сложности алгоритмов для анализа по входным и выходным данным. |
Софтверный ключ Guardant SP
Программная реализация электронных ключей Guardant с привязкой к оборудованию и выполнением аппаратных алгоритмов непосредственно на компьютере пользователя. Объединяет защитные технологии электронных ключей с возможностью распространения и активации защищенного программного обеспечения через интернет.
Ключи Guardant SP позволяют надежно привязать защищенную копию программного обеспечения к основным компонентам компьютера пользователя, таким как: операционная система, процессор, жесткий диск и оптический привод. Гибкая система лицензирования с часами реального времени, возможность онлайн/офлайн активаций, удобная система весов и работа в сети предоставляют возможность разработчику использовать софтверные ключи в самых разнообразных конфигурациях компьютерных систем.
Сервер активации
Управление жизненным циклом ключей и их активацией производится непосредственно на защищённых серверах Компании «Актив» в режиме 24/7. Резервирование хостинга позволяет активировать ключи конечными пользователями даже при недоступном фронт-офисе. На сервере активации разработчик в любой момент может получить произвольные отчеты по выполненным операциям и детальную статистику по ключам Guardant SP.
Обратите внимание
При регистрации на сервере активации Guardant SP любому разработчику бесплатно предоставляется 25 софтверных ключей, готовых к защите коммерческого программного обеспечения. Протестировать ключи Guardant SP также можно в демо-режиме без регистрации.
Быстрый старт
Для знакомства с возможностями ключей SP и быстрой надежной защиты приложений можно воспользоваться мастером Guardant Protection Center. Интуитивно понятный интерфейс и встроенная поддержка демонстрационных ключей позволяют за несколько минут понять принципы работы софтверных ключей без изучения документации. Переход на коммерческую защиту осуществляется регистрацией на сервере активации и загрузкой в мастер персональных кодов доступа и конфигурационного файла.
Принцип работы
Ключ функционирует по принципам, аналогичным аппаратным ключам семейства Guardant. Например, при проведении автозащиты (и использовании Guardant API) защищаемое приложение привязывается к экземпляру софтверного ключа, где используются симметричный алгоритм шифрования AES128 и алгоритм электронной цифровой подписи ECC160. При этом вся логика электронного ключа расположена в защищенной псевдокодом части драйвера Guardant и исполняется непосредственно на компьютере пользователя.
Набор данных ключа и дескрипторов алгоритмов AES128 и ECC160 помещаются в зашифрованный шаблон ключа. Получившийся ключ защиты остается неработоспособным до его активации на компьютере конечного пользователя с использованием уникального серийного номера. В не активированном виде этот шаблон может быть расшифрован только на компьютере разработчика или сервере активации. После активации шаблон сможет работать лишь на компьютере пользователя.
Технические характеристики
Доступная память |
4096 байт EEPROM |
|
Поддерживаемые аппаратные алгоритмы |
AES-128 (симметричное шифрование) |
+ |
ECC160 (электронная цифровая подпись) |
+ |
|
SHA-256 (хеширование) |
+ |
|
Функциональные возможности |
Шифрование трафика протокола обмена |
+ |
Поддержка Linux * |
+ |
|
Автоматическая защита .NET-приложений |
+ |
|
Псевдокод и обфускация компонентов защиты |
+ |
|
Часы реального времени * |
+ |
|
Лицензирование по сети * |
+ |
|
Загружаемый код |
– |
|
Оффлайн активации |
+ |
|
Привязка к оборудованию |
— Операционная система |
|
— Процессор (для Linux дополнительно привязка к материнской плате и MAC) |
||
— Жесткий диск |
||
— Оптический привод |
Сетевые электронные ключи
Подсемейство ключей Guardant, предназначенных для эффективной защиты и лицензирования сетевого программного обеспечения, в том числе по астрономическому времени использования. Включает сетевые варианты Guardant Sign и Guardant Time, сохраняющих и развивающих достоинства и возможности своих локальных версий.
Защищенность приложений обеспечивается поддержкой всех возможностей локальных электронных ключей Guardant, шифрованием трафика и высокой производительностью. Единственное требование к защищаемому приложению — возможность работы в сети.
Линейка продукции Guardant включает в себя несколько моделей электронных ключей, работающих в компьютерных сетях.
Электронный ключ Guardant Sign Net
Сетевой аналог ключа Guardant Sign, позволяющий применить всю мощь технологий Guardant для лицензирования и защиты приложений в сети.
Электронный ключ Guardant Time Net
Флагман линейки сетевых ключей. Поддерживает все возможности Guardant Sign Net, а также содержит часы реального времени и независимый источник питания.
Принцип сетевой защиты
Сетевой ключ вместе со специальной программой — менеджером лицензий, устанавливается на сервер или на одну из рабочих станций в сети. Защищенная программа опрашивает электронный ключ по сетевому протоколу.
Защита данных в сетевом протоколе осуществляется на аппаратном уровне, т.е. шифруется на сеансовых ключах, выработанных между защищенным приложением и электронным ключом без каких-либо посредников.
Использование сетевых ключей позволяет снизить стоимость защиты, т.к. для защиты всего программного обеспечения в локальной сети достаточно одного ключа Guardant. Системы защиты, построенные на использовании локальных электронных ключей, легко модифицируются для работы с сетевыми ключами.
Высокая производительность современных сетевых ключей позволяет создавать эффективную защиту и контролировать большое количество лицензий.
Электронный идентификатор Rutoken — персональное устройство доступа к информационным ресурсам, полнофункциональный аналог смарт-карты, выполненный в виде usb-брелока. Идентификатор предназначен для безопасного хранения и использования паролей, цифровых сертификатов, ключей шифрования и ЭЦП.
Ключевой элемент защиты Rutoken служит для строгой двухфакторной аутентификации, защиты электронной переписки, установления защищенных соединений (VPN, SSL), проведения финансовых транзакций и криптографической защиты информации. Идентификатор Rutoken RF можно одновременно использовать для доступа в помещения и к ресурсам информационных систем.
Работает здесь и сейчас USB-токены Rutoken широко применяются в системах защищенного документооборота, электронных платежей, в системах предоставления отчетности в государственные органы и в системах клиент-банк. Они выступают как единое устройство для доступа ко всем ресурсам корпоративной сети и легко интегрируются с системами и приложениями, поддерживающими технологии смарт-карт и PKI.
Удобный, простой, доступный Нужно лишь подключить токен к USB-порту, а затем набрать на клавиатуре PIN-код. Rutoken удобно всегда носить с собой на связке ключей. Прочный корпус оберегает USB-токен от внешних воздействий. Стоимость в 2 раза ниже, чем у зарубежных аналогов.
Сделан в России - сделан для России Идентификатор Rutoken разработан компаниями «Актив» и «Анкад». Его основа - защищенный микропроцессор и память объемом от 32 до 128 Кб. Главное отличие от зарубежных аналогов - аппаратная реализация российского алгоритма шифрования ГОСТ 28147-89.
Электронные USB-ключи и смарт-карты eToken представляют собой компактные устройства, предназначенные для обеспечения информационной безопасности корпоративных заказчиков и частных пользователей. Подобно Вашему компьютеру устройства eToken содержат процессор и модули памяти, функционируют под управлением своей операционной системы, выполняют необходимые прикладные программы и хранят Вашу информацию.
USB-ключи и смарт-карты eToken базируются на высокозащищенной платформе, разработанной для производства смарт-карт — области, в которой традиционно предъявляют повышенные требования к информационной безопасности. Поэтому USB-ключи и смарт-карты eToken фактически являются миниатюрным компьютером, обеспечивающим безопасное хранение Ваших персональных данных и надежно защищенным от несанкционированного вмешательства.
Модельный ряд eToken разработан таким образом, чтобы удовлетворить потребности большинства пользователей и Ваши индивидуальные запросы. Линейка USB-ключей и смарт-карт eToken включает в себя устройства, выполняющие базовые функции безопасности, а также комбинированные продукты, сочетающие в себе возможности нескольких устройств.