- PVSM.RU - https://www.pvsm.ru -

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Одному из сотрудников нашей компании понадобилось зарегистрироваться на портале Госуслуг. Как известно, на портале сейчас есть возможность входить в личный кабинет по логину/паролю, либо по электронной подписи. Вариант с логином/паролем был отброшен в силу профессиональной паранойи, и поехал сотрудник в УЦ Ростелекома — оператора системы -получать сертификат. В УЦ ему в качестве носителя электронной подписи/аппаратного СКЗИ не предложили Рутокен ЭЦП. В силу корпоративного патриотизма сотрудник решил не форсировать события, а попробовать-таки зайти на Госуслуги, используя для электронной подписи Рутокен ЭЦП.
Что из этого получилось, описано под катом.

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

  • На портале Госуслуг для проведения ЭП используется специальный браузерный плагин, который достаточно универсален. В качестве средств ЭП он умеет “подцеплять” как аппаратные СКЗИ, так и программные криптопровайдеры.
    Рутокен ЭЦП в этом плагине поддерживается.
  • Поддерживается Рутокен ЭЦП через нашу библиотеку, реализующую стандарт PKCS#11.
  • Процедура входа в личной кабинет на портале Госуслуг по ЭП представляет собой подпись случайных данных, отправляемых сервером. Подпись формируется в формате PKCS#7. Для аутентификации пользователя сервер использует информацию из сертификата X.509, а успешная проверка подписи подтверждает наличие у пользователя закрытого ключа, соответствующего сертификату.
  • Для того чтобы сервер принял пользовательский сертификат, тот должен быть усиленным квалифицированным.

Задача разбилась на подзадачи:

  • Сгенерировать ключ на Рутокен ЭЦП в формате, совместимом с форматом плагина Госуслуг, то есть через библиотеку PKCS#11
  • Узнать, какие аккредитованные УЦ выдают квалифицированные сертификаты для физлиц
  • Договориться с одним из этих УЦ, что он выдаст сертификат на основе запроса, сделанного удаленно.
  • Сформировать правильный запрос на квалифицированный сертификат.
  • Транспортировать запрос в УЦ.
  • Получить сертификат и записать его на Рутокен ЭЦП в формате, совместимом с форматом плагина Госуслуг, то есть через библиотеку PKCS#11.

С УЦ мы договорились довольно быстро. Один из основных наших партнеров, УЦ СКБ Контур, аккредитован в системе Госуслуг и согласился выдать нам сертификат по описанной схеме.
Для решения технических вопросов мы решили использовать Рутокен Плагин [1], который также работает через библиотеку PKCS#11 и совместим с плагином Госуслуг.

Центр регистрации

Для генерации ключа, создания запроса и записи сертификата мы сделали набор web-страниц, который условно назвали Центр регистрации. Этот Центр регистрации не требует серверной части, все операции осуществляются на клиенте. Для работы Центра регистрации требуется установка Рутокен Плагин.

Центр регистрации имеет позволяет:

  • Просматривать ключевые пары и сертификаты на подключенных устройствах Рутокен ЭЦП (под просмотром ключевых пар понимается просмотр информации о них)
  • Генерировать новую ключевую пару
  • Формировать запрос в формате PKCS#10 для выбранной ключевой пары
  • Формировать запросы по шаблону
  • Импортировать сертификат на устройство
  • Удалять сертификат с устройства
Генерация ключа и формирование запроса на сертификат

Ниже приведена инструкция по генерации ключа и формированию запроса на сертификат c помощью Центра регистрации:

1. Запустить Центр регистрации:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

2. Подключить Рутокен ЭЦП к компьютеру, выбрать токен, ввести PIN-код:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП
После выбора токена отобразится меню:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

3. Нажать кнопку “Создать ключ”:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Затем нажать «Создать запрос на этом ключе»

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

4. На странице создания запроса выбрать шаблон “СКБ Контур, для физлиц”, заполнить поля запроса, нажать кнопку “Создать запрос” (все поля должны быть заполнены, в данном случае реализован тестовый пример):

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

5. Скопировать запрос для отправки его в УЦ:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

6. Сгенерированный ключ появился в списке:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

После отправки запроса сотруднику пришло уведомление о необходимости явиться в офис УЦ для подтверждения личности.
После прохождения проверки наш сотрудник получил сертификат.

Импорт сертификата

1. Выбрать в списке токен, нажать кнопку “Импортировать сертификат”, полученный сертификат вставить в форму ввода, нажать кнопку “Импортировать”:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

2. При импорте выбрать тип сертификата “Пользовательский”:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

3. После этого появится окно с отображением сертификата и сообщением об успешном импорте на Рутокен ЭЦП (на картинке приведен пример импорта тестового сертификата, полученного в тестовом УЦ):

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

4. Сертификат отобразится в списке:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Вход на портал Госуслуг

Сотрудник установил плагин Госуслуг, и ему удалось войти на портал по ЭП.

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Выбираем “По электронной подписи”:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Выбираем сертификат:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Вводим PIN-код:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Попадаем в личный кабинет:

Авторизация на портале Госуслуг с помощью Рутокен ЭЦП

Вместо заключения

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

Для того, чтоб была возможность выдачи квалифицированных сертификатов на Рутокен ЭЦП, которые можно было бы использовать с плагином Госуслуг или с Рутокен Плагин, сделана локальная версия Центра регистрации, ее можно использовать непосредственно в точках выдачи сертификатов.

Автор: VicTun

Источник [2]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/e-lektronnoe-pravitel-stvo/59093

Ссылки в тексте:

[1] Рутокен Плагин: http://www.rutoken.ru/products/all/rutoken-plugin/

[2] Источник: http://habrahabr.ru/post/219071/