поиск по сайту
Идеальный токен

Идеальный токен

Конявская С. В.

Ключи, как и любые данные, существуют в трех процессах: хранятся, обрабатываются (в том числе – создаются и уничтожаются) и передаются.

Никаких других состояний у данных, и ключей (как явлений этой сущности) не бывает.

Ключи отличаются от других данных только одним – компрометация ключей заметно более критична. Это значит, что принципиально никаких специфичных приемов для защиты именно ключей – не требуется, просто обеспечиваться меры защиты должны несколько более тщательно, чем в отношении любых других данных. К сожалению, здравый смысл не всегда детерминирует безопасное поведение, потому более жесткие требования по защите ключей (хотя вернее было бы сказать – систем с ключом) предъявляются и регуляторами.

В свете требований к средствам электронной подписи (СЭП), в которых взаимоувязаны все три состояния ключа, это становится особенно наглядно: мы можем руководствоваться самыми разными соображениями, выбирая тип желательной для нас в тех или иных обстоятельствах ЭП, выбирая подходящее для нас СЭП, но как только мы выбрали усиленную ЭП (то есть «ЭП с ключом») мы попадаем в зону действия существенно более высоких требований.

Таким образом, с точки зрения безопасного существования криптографических ключей в Автоматизированной системе (АС) принципиальное значение имеют 2 фактора:

  • защищенное хранение ключа (и, соответственно, носитель ключа)
  • условия доступа к ключу и работы с ним (то есть среда функционирования криптографии (СФК)).

Очевидно и не нуждается в детализации, что второй фактор (условия доступа к ключу) касается и обработки, и передачи ключей – как части технологии, реализуемой СКЗИ (СЭП) при выполнении своих функций.

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

Эта статья посвящена средству хранения ключей (токену), которое позволяет решить несколько большее число задач, чем обычно применяемые в этом качестве устройства, не требуя серьезных инфраструктурных изменений АС. Поэтому оно называется – «Идеальный токен».

Сложившаяся практика

Сложившаяся практика применения ключей такова, что в качестве их носителей используются универсальные накопители (дискеты, флешки), идентификаторы пользователей, если они представляют собой устройства с доступной для записи/чтения памятью (ТМ-идентифкаторы) или специализированные устройства (смарт-карты, USB-токены).

Токены[1] предоставляют возможность использования хранимых на них ключей и сертификатов после предъявления PIN-кода (авторизации пользователя). Казалось бы, таким образом блокируются все уязвимости, связанные как с хранением, так и с доступом к ключу.

Однако очевидно, что ограничение доступа к ключу только использованием PIN-кода недостаточно. Ключ должен использоваться только в той системе, в которой обеспечена защита от несанкционированного доступа (а именно – обеспечена доверенная СФК), а PIN-код можно правильно ввести в любой среде. Токен не может определить, в какой системе производится попытка работы с ним, у него нет для этого никаких механизмов. Невозможность расширения функций токена проистекает не из лени программистов, а из ограниченности его архитектуры. Токен не идеален.

Чем же опасна невозможность контролировать внешнюю среду. Например, в ней могут быть программные закладки, предназначенные для перехвата криптографической информации или перехвата управления компьютером. При правильно введенном PIN-коде (а в некоторых случаях и до введения PIN-кода) все это вредоносное программное обеспечение получит доступ к ключам.

В части доступа к ключу очевидна необходимость учитывать как условия доступа пользователя (человека), так и условия доступа СКЗИ и другого системного и функционального программного обеспечения.

Отсюда вытекают требования к защищенному ключевому носителю. Защищенный носитель ключа в идеальном случае должен быть способен контролировать:

  • доступ к ключу через любые интерфейсы, в том числе и путем применения разрушающего программного воздействия (РПВ),
  • среду, в которой производится попытка доступа к ключу.

Естественно, задача «контроля» среды, из которой осуществляется доступ к ключу, сводится для токена к тому, чтобы доступ к ключу предоставлялся не просто исключительно легальному пользователю, но и исключительно на заданных рабочих местах (наличие «правильной» среды на которых обеспечивается в установленном в организации порядке).

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

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

Такой токен – Идеальный. Мы его сделали [1] и запатентовали [2].

  1. Идеальный токен [электронный ресурс]. URL: http://prosecret.ru/idealtoken.html (дата обращения 02.04.2019).
  2. Батраков А. Ю., Конявская С. В., Счастный Д. Ю. Съемный носитель ключевой и конфиденциальной информации. Патент на полезную модель № 147529. 10.11.2014, бюл. №31.

[1] Это слово используется в разных значениях, но в рамках этого текста условимся понимать токен только одном из них: как защищенное тем или иным способом хранилище ключей в виде объектов PKCS.