КриптоПро CSP 5.0: Облачный провайдер

Недавно нашей компанией был представлен новый криптопровайдер КриптоПро CSP 5.0. Он обладает довольно широкой функциональностью, поэтому мы решили выпустить серию небольших статей-инструкций, которые покажут, как можно потестировать наиболее существенные нововведения.

Начнем с самой крупной инновации  работы с "облачными токенами": удаленными хранилищами неизвлекаемых ключей. В качестве непосредственного хранилища ключей выступает защищенный сервер КриптоПро HSM, к которому подключен сервер удаленной подписи КриптоПро DSS. Использование КриптоПро CSP 5.0 позволяет получить доступ к ключам HSM через использование стандартного интерфейса CryptoAPI.

Данная инструкция покажет, как за пару кликов научить CSP "видеть" ваши ключи. В качестве примера мы будем пользоваться тестовым сервером dss.cryptopro.ru. Заранее заметим, что данный тестовый сервис поддерживает только ключи алгоритма ГОСТ Р 34.10-2001.

Создание тестового пользователя

Первым делом, заведем пользователя на тестовом сервере. Для этого зайдем в его веб-интерфейс и нажмем кнопку "Регистрация":

Заполним форму регистрации и подтвердим создание пользователя:

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

Копирование пользовательского контейнера

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

Для переноса ключа открываем системное хранилище сертификатов (Win-R – certmgr.msc – ОК), выбираем сертификат, нажимаем правой кнопкой – "Все задачи" – "Экспорт":

В Мастере экспорта сертификатов указываем, что хотим экспортировать сертификат с закрытым ключом и выполняем экспорт в формат pfx, установив произвольный пароль. 

Возвращаемся на экран управления DSS и нажимаем кнопку "Установить сертификат":

Здесь выбираем экспортированный pfx-контейнер и нажимаем кнопку "Загрузить сертификат". В результате в списке сертификатов должен появиться ваш скопированный сертификат, который можно просмотреть. 

Создание запроса через DSS

Второй путь получения сертификата — это создание запроса на УЦ, который непосредственно подключен к DSS.

Нажимаем "Создать запрос на сертификат", вводим данные (обязательно только поле CN) и создаём запрос. Во всплывающем окне ПИН-код можно оставить пустым. 

Выпущенный сертификат сразу попадает в список и также доступен для просмотра.

Подключение к CSP

Через эту же веб-форму можно напрямую подписывать и зашифровывать документы, проверять данные и т.д., но, если вам нужно использовать ключи во внешних приложениях, нужно зарегистрировать эти сертификаты в CSP. Самый простой способ — воспользоваться утилитой CryptoPro Tools (Инструменты КриптоПро), входящей в состав КриптоПро CSP 5.0.

Запускаем её из меню Пуск и выбираем пункт "Облачный провайдер":

В появившемся окне вбиваем адреса используемых сервисов авторизации и доступа к DSS. Для тестового сервиса пользуемся адресами по умолчанию.

Нажимаем кнопку "Установить сертификаты". Если вы правильно указали адреса, должно появиться браузерное окно аутентификации на DSS. Вводим учетные данные, указанные при регистрации: 

В процессе установки сертификатов с сервера будут скачаны и установлены цепочки сертификатов, что может приводить к окнам с предупреждениями:

Если все настроено корректно, приложение сообщит об успешной установке сертификатов и их можно будет просмотреть на вкладке "Контейнеры" или в любом приложении, использующем CryptoAPI:

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

 

Агафьин С.С.,

зам. начальника отдела разработки ФКН,

компания КриптоПро

Follow us