mcToken
Одной из основных проблем практического применения современных криптографических систем является безопасное формирование, хранение и применение секретных ключей. Именно для решения этой проблемы используются аппаратные активные ключевые носители (АКН). Персональные АКН, как правило, выполняются в виде смарт-карт либо USB-токенов.
АКН часто используются не только для хранения ключей, но и для выполнения более сложных процедур удалённой аутентификации, поэтому их условно можно разделить на два класса:
- АКН общего назначения – обеспечивают только защищённое хранение, а также (опционально) формирование и применение секретных ключей.
- АКН системного применения – в дополнение к вышеуказанным функциям, поддерживает один или более криптографических протоколов, необходимых для реализации аутентификации и других процедур, соответствующих «роли» пользователя в системе.
АКН системного применения используются для создания распределённых систем аутентификации и конфиденциальной связи в «клиент-серверных» приложениях, где разделение «ролей» участников системы является необходимым условием системы безопасности.
Мы предлагаем собственное решение системного АКН, специализированное для применения в клиент-серверных приложениях и выполненое в виде USB-токена.
АКН cmToken допускает три независимых варианта использования:
- формирование действительно случайных последовательностей произвольного объёма, например, для реализации теоретически не дешифруемых (ТНДШ) систем;
- защищённое ПИН-кодом хранение секретных ключей локального применения, например, ключей доступа к локальным файловым хранилищам;
- аутентификация пользователей и обеспечение конфиденциального канала связи для клиент-серверных приложений.
Устройство имеет гибкую систему управления ключами, в рамках которой определены три типа ключей:
- «Локальные» (Local) – способ использования полностью определяется пользователем;
- «Мастер» (Master) – используется для выполнения удалённой авторизации на стороне «сервера»;
- «Ведомый» (Slave) – используется для выполнения удалённой авторизации на стороне «клиента».
Для каждого типа ключа определены права, необходимые для выполнения экспорта/импорта и уничтожения ключей этого типа. Права сопоставляются с профилем пользователя во время системной инициализации.
Функциональные характеристики устройства:
- Уникальный 64-битный серийный номер у каждого устройства.
- Использование физического источника случайности (внутренний двухканальный генератор шума) для формирования секретных ключей, векторов инициализации и просто случайных последовательностей.
- Непрерывный контроль генератора случайных чисел (ГСЧ) на удовлетворение критериям случайности FIPS 140-2 и блокирование устройства в случае их не выполнения.
- Максимальная скорость формирования действительно случайной последовательности – 50 Кбит/сек.
- Возможность криптографического «ускорения» ГСЧ с коэффициентами 4x, 8x, 16x.
- Весь транспорт ключевой информации между устройствами выполняется в защищённом виде.
- Запрет экспорта/импорта ключей между устройствами разных заказчиков.
- Поддержка протоколов динамической обоюдной аутентификации.
- Поддержка трёх профилей пользователей, защищённых отдельными PIN-кодами и одного профиля администратора, защищённого PUK-кодом.
- Блокирование PIN/PUK-кода после достижения заданного числа ошибочных попыток ввода PIN/PUK-кода (по умолчанию – 5 попыток).
- Возможность изменять PIN/PUK-код после успешной авторизации на соответствующем PIN/PUK-коде.
- Возможность разблокирования и переинициализации заблокированного PIN-кода после авторизации на PUK-коде.
- Пять стандартных ролей пользователя – определяются как совокупность прав доступа к соответствующему типу ключей.
- Возможность гибкой настройки прав доступа к ключам (т.е. ролей пользователя) для каждого профиля при системной инициализации (выполняется производителем по спецификации заказчика).
- Хранение всей ключевой информации в зашифрованном виде с контролем целостности.
- Одно устройство одновременно может содержать все три типа ключей (Local, Master, Slave) и работать с ними в соответствии с правами активного профиля пользователя.
- Возможность запрета экспорта (чтения) отдельного ключа.
- Возможность сопоставления с каждым ключом 8-байтного идентификатора.
- Поддержка секретных ключей длиной 256 и 257 бит.
- Поддерживаемые криптоалгоритмы: AES-256, ГОСТ28147‑89, ECDH, ДСТУ4145‑2002 (перечень поддерживаемых алгоритмов может быть адоптирован к требованиям заказчика).
- Количество ключей, которые АКН может хранить одновременно, определяется моделью устройства и дополнительным функционалом заказчика, но, как правило, находится в диапазоне 100–1000 ключей.
- Светодиодная индикация текущего состояния устройства.
Технические характеристики устройства:
- Интерфейс USB 2.0 (Full speed).
- Поддерживаемые ОС: Windows 2000/XP/2003/2008/Vista.
- Использование стандартных драйверов Windows.
- Программные библиотеки и документированный API для использования устройства из Managed и Unmanaged языков программирования.
Устройство существует в двух модификациях:
- «стандарт» – без PIN-клавиатуры (с одним двухцветным светодиодом);
- «PIN-pad» – с 5-кнопочной PIN-клавиатурой и двумя двухцветными светодиодами (предполагает использование USB-удлинителя).
В обоих случаях питание устройства осуществляется по кабелю USB, т.е. дополнительные источники питания не требуются. По желанию заказчика, устройство может поставляться в пластмассовом или металлическом корпусе.