ЭЛЕКТРОННЫЕ КЛЮЧИ КАК МЕТОД ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ОТ НЕСАНКЦИОНИРОВАННОГО ИСПОЛЬЗОВАНИЯ
- Авторы: Василенко К.А1, Золкин А.Л2, Ляпунов В.Н1, Семейкин В.А3
-
Учреждения:
- Владивостокский государственный институт экономики и сервиса
- Поволжский государственный университет телекоммуникаций и информатики
- Морской государственный университет адм. Г.И. Невельского
- Выпуск: Том 19, № 2 (2021)
- Страницы: 201-207
- Раздел: Статьи
- URL: https://journals.eco-vector.com/2073-3909/article/view/112208
- DOI: https://doi.org/10.18469/ikt.2021.19.2.08
- ID: 112208
Цитировать
Полный текст
Аннотация
В статье описываются принципы работы, виды технической реализации и способы применения электронных ключей. Также были рассмотрены основные российские производители электронных ключей, и выявлены особенности их продуктов. При обеспечении должным образом информационной безопасности компании необходимо учитывать правильную настройку и поддержку аппаратных и программных средств защиты информации во избежание убытков, с целью ликвидации рисков получения электронного ключа злоумышленником. Учитывая, что электронные ключи чаще всего относят к аппаратным способам защиты программ от взлома, при этом имеются улучшенные кроссплатформенные аппаратно-программные решения. Их существование обусловлено тем, что разработчики, проектирующие электронные ключи, также предоставляют и комплект разработчика программного обеспечения (SDK) к ним. Компании в своих собственных программных продуктах имеют возможность реализации с помощью SDK всех средств защиты электронных ключей, таких как средства разработки, защита фрагментов кода программы, разработка инструментов автоматической защиты и многое другое.
Полный текст
Введение Защита программного обеспечения и элек- тронных документов с использованием электрон- ных ключей существует уже много лет, и она до сих пор показывает свою эффективность. Элек- тронный ключ (аппаратный ключ, донгл) - это аппаратное средство, в основе которой лежит специальная микросхема, защищающая про- граммное обеспечение и документы от незакон- ного копирования, использования и распростра- нения третьими лицами. История аппаратных ключей берет начало в начале 1980-х годов. К их появлению привела одна причина [1; 2]. Наличие защиты программ- «Infokommunikacionnye tehnologii» 2021, Vol. 19, No. 2, pp. 201-207 ного обеспечения от нелицензионного пользова- ния в готовом продукте снижает риски и значи- тельно увеличивает доход разработчиков. Раньше программисты добивались защищенности про- граммного обеспечения (ПО) путем добавления в программы серийных номеров и ключей акти- вации. В итоге злоумышленники нашли способ обходить эти средства защиты с помощью ре- верс-инжиниринга, патчей, эмуляторов ключа и кейгенов, что и привело к созданию электронных ключей. Особенности конструкции электронных ключей с позиции обеспечения информационной безопасности Ключи могут отличаться по технической ре- ализации: интерфейс подключения устройства, форм-фактор, наличие криптопроцессора, объ- ем памяти и т. д. Как правило, чаще всего ключи делают в формате флеш-устройств, которые под- ключаются через USB-порт. Хотя существуют и другие реализации, основанные на PCMCIA и LPT-интерфейсах. Существуют также и беспроводные аппарат- ные ключи. Например, Everykey - это Bluetooth- устройство, которое позволяет хранить ключи и пароли, используя множество технологий защи- ты ПО [2; 3]. Everykey использует четыре уров- ня шифрования: AES 128-bit, AES 256-bit и RSA 4096-bit - и обладает возможностью удаленно за- морозить устройство, что не даст другим исполь- зовать Everykey в случае его утери или кражи. Каждый раз, когда Everykey передает зашифро- ванное сообщение, его содержимое зашифровы- вается и изменяется, не давая злоумышленнику подделать Everykey-ключ. Пароли устройств также никогда не хранятся на серверах Everykey. Все эти особенности вместе делают Everykey безопасным и защищенным. Аппаратные ключи также способны работать в пределах локальной сети, а не только одной ра- бочей станции. Защищенное программное обе- спечение может самостоятельно определить и обратиться к ключу по внутренней сети. Таким образом, не обязательно покупать электронные ключи для каждого пользователя, чтобы, напри- мер, лицензировать защищенные приложения или открыть доступ к документам рабочей группы. Электронные ключи имеют множество при- менений. Они используются для подтверждения отсутствия изменений в файлах. Ключи можно применять для хранения электронных денег на смарт-карте или собственной электронной подписи. Без них не обойтись, когда требуется за- фиксировать состояние файла с момента его подписания. С помощью USB-донглов можно реализовать лицензирование программного обе- спечения, идентификацию владельца [4-6]. Принцип работы электронных ключей осно- вывается на электронной цифровой подписи, которая находится внутри ключа в защищенном виде. Если пользователь потеряет свой ключ, то он сможет это оперативно заметить и отозвать подпись. Для обеспечения еще большей надежности су- ществуют смарт-карты. Смарт-карты представля- ют собой пластиковые карты со встроенной ми- кросхемой. Они обладают множеством плюсов, таких как: отказоустойчивость, невозможность подделки, аутентификация пользователя на рабо- чей станции, что исключает возможность утечки данных. Единственным недостатком можно счи- тать только наличие карт-ридера для использова- ния смарт-карт. Иногда разработчики реализуют в смарт- картах двухфакторную аутентификацию. Для того чтобы использовать такой ключ, необходимо также знать и PIN-код, что повышает надежность хранения информации в разы. Как правило, аппаратные ключи используют- ся следующим образом. Сначала через специ- альный интерфейс ключ подключается к ком- пьютеру. В это время программа загружается в оперативную память и через драйвер посылает ключу запрос, который он должен обработать. Аппаратный ключ формирует код с помощью встроенного микропроцессора и отправляет его обратно в компьютер. Если ответ электронного ключа не совпал со значением в программе, то она выполнит действия по защите от несанкци- онированного доступа, которые предварительно задал программист. Как правило, это переход в режим демонстрации, который блокирует доступ к данным или определенным функциям програм- мы. Если же ответ оказался правильным, то про- грамма продолжает свою работу. Запросы также бывают нескольких типов в за- висимости от задачи. Они могут включать в себя просто проверку наличия ключа в интерфейсе компьютера или считывание с электронного клю- ча нужной программе информации в качестве параметра запуска. В электронный ключ можно встроить внутренний таймер и с его помощью выполнять запросы приложения. Программа может выполнить запрос на рас- шифровку предварительно зашифрованного кода или информации, которые нужны для работы Рисунок 1. Способы обхода технологии защиты программного обеспечения с электронным ключом программного обеспечения. Если аппаратный ключ не сможет этого сделать, то программа за- пустит зашифрованный код, который приведет к ошибке [7]. Также можно защитить программу путем вы- считывания контрольной суммы. Приложение проверяет целостность кода сравнением кон- трольной суммы, посчитанной на микропроцес- соре ключа, с контрольной суммой самой про- граммы. Это можно сделать, например, на основе выполнения электронной цифровой подписи кода и проверки этой подписи уже внутри программы (см. рисунок 1). В свою очередь хакеры придумали множество способов обхода защиты, но главная их задача была в том, чтобы заставить программу работать без настоящего электронного ключа. Чтобы про- грамма правильно работала и считала, что ра- ботает с ключом, необходимо либо эмулировать наличие ключа, либо взломать и переписать код самой программы. Несмотря на то что электронные ключи счи- таются аппаратным способом защиты программ от взлома, тем не менее существуют и кроссплат- форменные аппаратно-программные решения. Они существуют, потому что разработчики, про- ектирующие электронные ключи, также предо- ставляют и комплект разработчика программного обеспечения (SDK) к ним. С помощью SDK все средства защиты электронных ключей возмож- но реализовывать и в собственных программных продуктах компаний [8]. Например, средства раз- работки, защита фрагментов кода программы, разработка инструментов автоматической защи- ты и многое другое. Анализ отечественных разработок электронных ключей и технологий защиты ПО от нелегального копирования Созданием электронных ключей в России за- нимается множество компаний. Наиболее значи- мые из них - это «Аладдин Р.Д.» и «Актив». Компания «Актив» - это один из самых круп- ных разработчиков электронных ключей и дру- гих средств информационной безопасности. Ос- новными проектами компании «Актив» являются Guardant, Рутокен. Guardant - это пакет программно- аппаратных разработок для лицензирования и за- щиты ПО от нелегального копирования. Он дает возможность получить разработчикам достойные продажи с их программного продукта. В Guardant входят следующие решения: аппаратные ключи, инструменты для защиты исходного кода и сред- ства лицензирования программ. Уникальной чертой Guardant является возмож- ность программисту создавать и хранить во вну- тренней памяти ключа собственные алгоритмы шифрования и отдельные части исходного кода программы, под который создается электронный ключ. В Guardant также встроен собственный криптопроцессор, позволяющий безопасно ис- полнять код в самом ключе, не используя для это- го процессор компьютера [9; 10]. Этот подход к проектированию защиты силь- но осложняет работу взломщикам и помогает за- щитить исходный код программы от реверс-ин- жиниринга другими компаниями-конкурентами. Тем не менее разработчики также должны иметь Рисунок 2. Способы использования памяти ключа в HASP в виду, что опытный злоумышленник может лег- ко провести криптоанализ и взломать защиту, если программисты реализовали излишне про- стой алгоритм шифрования. Рутокен - это серия аппаратных ключей, ко- торые можно использовать для создания элек- тронной подписи и аутентификации. Эти ключи представляют собой личные устройства доступа к информационным ресурсам. Форм-факты элек- тронных ключей могут быть различны: от обыч- ных USB-донглов до беспроводных Bluetooth- устройств и смарт-карт. «Аладдин Р.Д.» - это отечественная компания, разрабатывающая различные системы защиты данных от злоумышленников и аутентификации пользователей. Наиболее известными продукта- ми этой компании являются HASP и eToken. HASP представляет собой комплекс программ и устройств, необходимых для защиты файлов и ПО от несанкционированного использования [11; 12]. Аббревиатура HASP расшифровывается как Hardware Against Software Piracy (аппарат- ные средства против программного пиратства) и включает в себя сам электронный ключ HASP, программу для «привязки» к этому ключу и мето- ды защиты и контроля целостности программно- го кода программ (см. рисунок 2). В основу успеха этой технологии легла микро- схема ASIC, которая имеет индивидуальный ал- горитм работы для каждого аппаратного ключа, что обеспечивает повышенную безопасность и надежность. Микросхема имеет собственную внутреннюю память, через которую разработчик может устанавливать каждому пользователю свой иденти- фикатор, управлять доступом к различному про- граммному обеспечению и хранить пароли или другие важные данные. eToken - это линейка персональных устройств проверки подлинности, представленных в форм- факторе USB-ключей. «Аладдин Р.Д.» разрабо- тали технологию, благодаря которой стало воз- можно применять USB-донглы как полноценный аналог смарт-карт и не тратить деньги на дорогие устройства считывания [13-15]. Для применения этой технологии необходимо только специальное ПО eToken PKI Client, которое обеспечивает ра- боту с eToken и USB-порт. Заключение Таким образом, особенностью персональных устройств проверки подлинности eToken является их надежность и функциональность. Они имеют энергонезависимую память и микропроцессор, что позволяет хранить в них множество данных и выполнять вычисления прямо в ключе. Они отли- чаются малым размером, позволяющим постоян- но носить их с собой. eToken выполнен в крепком корпусе, который защищает его от механических повреждений и воды. Аппаратно-программные средства защиты ин- формации необходимо не просто приобретать, но и правильно настраивать и поддерживать. В про- тивном случае если электронный ключ, который хранит в себе все пароли пользователя, получит злоумышленник, то ему достаточно будет подо- брать всего один пароль, чтобы получить полный доступ к этому ключу. Это приведет к огромным убыткам компании, и это надо иметь в виду при проектировании систем защиты с использовани- ем электронных ключей.×
Об авторах
К. А Василенко
Владивостокский государственный институт экономики и сервиса
Email: k2857@mail.ru
Владивосток, РФ
А. Л Золкин
Поволжский государственный университет телекоммуникаций и информатики
Email: alzolkin@list.ru
Самара, РФ
В. Н Ляпунов
Владивостокский государственный институт экономики и сервиса
Email: liapunov_vitalii_nikolaevich@vvsu.ru
Владивосток, РФ
В. А Семейкин
Морской государственный университет адм. Г.И. Невельского
Email: vlad_6653496@mail.ru
Владивосток, РФ
Список литературы
- HASP // Википедия - свободная энциклопедия. URL: https://ru.wikipedia.org/wiki/HASP (дата обращения: 19.05.2020)
- Конявская С. Защита информации с USB- интерфейсом // Журнал сетевых решений LAN. 2007. № 11. URL: http://www.osp.ru/lan/2007/11/4592946 (дата обращения: 10.06.2020)
- Оценка эффективности систем защиты программного обеспечения // CIT Forum. URL: http://citforum.ru/security/software/sereda1 (дата обращения: 29.09.2020)
- Скляров Д.В. Аппаратные ключи защиты // Искусство защиты и взлома информации. СПб.: БХВ-Петербург. 2020. 288 с
- Щеглов А.Ю. Защита компьютерной информации от несанкционированного доступа. СПб.: Наука и Техника. 2019. 384 с
- Платонов В.В. Программно-аппаратные средства защиты информации. М.: Академия, 2013. 336 с
- Рябко Б.Я., Фионов А.Н. Основы современной криптографии для специалистов в информационных технологиях. М.: Научный мир, 2004. 173 с
- Основы криптографии / А.П. Алферов [и др.]. М.: Гелиос АРВ, 2002. 480 с
- Касперский К. Техника внедрения кода в РЕ-файлы и методы его удаления // Хакер. 2004. № 7. 81 с
- Фергюсон Н., Шнайер Б. Практическая криптография. М.: Диалектика, 2018. 432 с
- Digitalization peculiarities of organizations - A case study / V.L. Vasilev [et al.] // Entrep. Sustain. 2020. № 7. Р. 3173-3190
- Дудукалов Е.В. Государственное регулирование развития национального сегмента интернета в России // Государственное и муниципальное управление. Ученые записки СКАГС. 2008. № 3. С. 155-164
- Дудукалов Е.В. Технологические парки в системе национальных приоритетов постиндустриального развития экономики // Экономические и гуманитарные науки. 2014. № 5 (268). С. 112-118
- Assessment of Modern Global Trends in Digital Trade and Finance / T. Ignatova [et al.] // Advances in Economics, Business and Management Research. 2020. Vol. 139. P. 363-366
- Игнатова Т.В., Дудукалов Е.В., Черкасова Т.П. Знаниевые экосистемы и рейтинги цифровизации национальных экономик // Цифровая экосистема экономики: Материалы VII Международной научно-практической видеоконференции. Ростов-на-Дону: ЮФУ, 2020. С. 391-397
Дополнительные файлы
![](/img/style/loading.gif)