Особенности интеграции JaCarta-2 ГОСТ
JaCarta-2 ГОСТ — новое поколение USB-токенов и смарт-карт.
Администрирование JaCarta-2 ГОСТ
Согласно «Правилам пользования сертифицированного устройства JaCarta-2 ГОСТ»
администрирование такого устройства должно выполняться с использованием
СКЗИ «Криптотокен 2» в исполнении 13 (обозначение 46538383.425000.012) – АРМа Администратора безопасности JaCarta-2 ГОСТ.
- АРМ администратора безопасности необходим для:
- инициализации JaCarta-2 ГОСТ;
- импорта доверенного открытого ключа в JaCarta-2 ГОСТ;
- генерации собственной ключевой пары в JaCarta-2 ГОСТ;
- смены ключа администратора безопасности;
- установки PIN- и PUK-кодов пользователя в JaCarta-2 ГОСТ;
- разблокирования JaCarta-2 ГОСТ;
- управления файлами в JaCarta-2 ГОСТ;
- генерации и управления мастер-ключами;
- генерации ключей для HMAC, импорта и управления ими в JaCarta-2 ГОСТ;
- просмотра журналов операций СКЗИ «Криптотокен 2» при работе АРМа администратора безопасности.
Примечание
В состав JC-WebClient SDK входит “JaCarta-2 ГОСТ. АРМ разработчика”,
который также позволяет выполнять административные операции с JaCarta-2 ГОСТ,
но его использование допускается только в целях разработки
и тестирования прикладных программ, взаимодействующих с JaCarta-2 ГОСТ.
JaCarta-2 ГОСТ и JaCarta ГОСТ. Что нового?
- В JaCarta-2 ГОСТ в сравнении с JaCarta ГОСТ поддерживается:
- формирование (команды signData и signBase64EncodedData)
и проверка (команды verifyData и verifyBase64EncodedData)
электронной подписи (ЭП)
согласно ГОСТ Р 34.10-2012 (256 бит) с
быстрым программным хэшированием по ГОСТ Р 34.11-2012;
- быстрое программное хэширование по ГОСТ Р 34.11-2012,
скорость ограничивается только мощностью ПК
(команда digest);
- быстрое программное зашифрование/расшифрование (команды encryptData/decryptData)
сообщений и документов по ГОСТ 28147-89 в формате CMS согласно Рекомендациям Технического комитета 026;
- хранилище доверенных объектов JaCarta-2 ГОСТ, в которое
администратор безопасности JaCarta-2 ГОСТ записывает доверенные открытые ключи.
Указанные ключи выступают в роли открытых ключей доверенных Удостоверяющих центров и
предназначены для построения цепочек доверия при операциях проверки ЭП и
зашифрования/расшифрования документов.
Команды проверки ЭП (verifyData и verifyBase64EncodedData) работают только
после проверки всей цепочки сертификатов от сертификата подписанта до доверенного открытого ключа.
Команды зашифрования/расшифрования (encryptData/decryptData) также работают только
при условии проверки всей цепочки сертификатов от сертификата получателя/отправителя сообщения до доверенного открытого ключа.
- автоматическое построение защищённого канала между приложением JC-WebClient и USB-токеном или смарт-картой JaCarta-2 ГОСТ при
передаче PIN- и PUK-кодов в устройство. Это защищает от перехвата PIN- и PUK-кодов при их передаче между приложением JC-WebClient
и USB-токеном/смарт-картой JaCarta-2 ГОСТ.
- установка строгого сеанса работы
между приложением JC-WebClient и токеном JaCarta-2 ГОСТ (см. аргумент secureMessaging в команде bindToken).
- установка дополнительного PIN-код (PIN-код подписи)
для операций формирования ЭП при использовании JaCarta-2 ГОСТ.
Необходимость ввода дополнительного PIN-кода устанавливается
при создании ключевой пары (команда createKeyPair).
Таким образом, устройство может быть сконфигурировано так, что при входе в систему
для строгой двухфакторной аутентификации пользователь должен ввести один PIN-код,
а при проведении финансовых транзакций или
при подписании электронных документов (команды signData и signBase64EncodedData) —
другой PIN-код, разрешающий формирование ЭП.
Это защищает от попыток вредоносных скриптов из браузера
использовать состояние “залогиненности” JaCarta-2 ГОСТ для подписи поддельных документов.
- разблокировка PIN-кода пользователя по PUK-коду (команда unblockUserPIN),
позволяющая разблокировать устройство без обращений к администратору.
В JaCarta-2 ГОСТ обеспечена обратная совместимость с JaCarta ГОСТ
на уровне использования алгоритмов генерации ключевой пары,
формирования и проверки ЭП согласно ГОСТ Р 34.10-2001,
а также вычисления хэш-функции согласно ГОСТ Р 34.11-94.
Сроки действия криптографических ключей
При встраивании JaCarta-2 ГОСТ необходимо учитывать допустимые сроки
использования ключей согласно Правилам пользования СКЗИ “Криптотокен 2 ЭП”:
Вид ключей |
Срок действия |
Ключи ЭП (закрытые ключи) |
3 года |
Доверенные открытые ключи |
15 лет |
PIN-код подписи
PIN-код подписи используется как дополнительный фактор для подтверждения операции подписи.
Его использование не отменяет необходимость предъявления PIN-кода пользователя для работы в режиме пользователя.
Установка и смена
PIN-код подписи устанавливается для токена с помощью команды setSignaturePIN.
После установки PIN-код подписи пользователь уже не сможет его удалить, только изменить на новый.
Для изменения PIN-кода подписи необходимо вызвать команду changeSignaturePIN.
PIN-код подписи может быть удалён только после инициализации устройства администратором
с помощью АРМа администратора безопасности JaCarta-2 ГОСТ (или АРМа разработчика).
Использование PIN-кода подписи
Предъявление PIN-кода подписи является опциональным для каждой ключевой пары на устройстве.
Необходимость предъявления задаётся аргументом requireSignaturePin команды createKeyPair.
Атрибут неизменяемый, т.е. необходимость использования PIN-кода подписи
для каждой ключевой пары задаётся на этапе её создания.
- Подготовка PIN-кода подписи к использованию:
- установить PIN-код подписи на токен с помощью команды setSignaturePIN;
- создать ключевую пару при помощи команды createKeyPair
с аргументом requireSignaturePin, установленным в значение
true
.
Примечание
Если не установить PIN-код подписи, но при этом создать ключевую пару
с необходимостью его предъявления, то такой ключевой парой нельзя будет подписать
до установки PIN-кода подписи.
- Использование PIN-кода подписи:
-
- Проверка наличия PIN-кода подписи:
-
Строгий сеанс работы
JC-WebClient позволяет установить строгий сеанс работы с токеном JaCarta-2 ГОСТ,
при котором устройство отвергает попытки любых сторонних приложений получить доступ к его функциям.
Это защищает от попыток сторонних вредоносных приложений использовать состояние
“залогиненности” JaCarta-2 ГОСТ для подписи поддельных документов.
Для его включения необходимо установить аргумент secureMessaging в true
в команде bindToken.
Примечание
Строгий сеанс не поддерживается для смарт-карт JaCarta-2 ГОСТ, подключенных к Антифрод-терминалу.