Pull to refresh
72.8

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

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





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


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


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

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


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

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


Генерация ключа и формирование запроса на сертификат

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

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



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


После выбора токена отобразится меню:



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



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



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



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



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



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

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

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



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



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



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



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

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



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



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



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



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



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

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

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

Articles

Information

Website
aktiv-company.ru
Registered
Founded
1994
Employees
101–200 employees
Location
Россия