Ключевая пара гост

Ключевая пара гост Электронная цифровая подпись
Содержание
  1. Что нужно для работы рутокен эцп 2.0 в системе мотп?
  2. Введение
  3. Gnu/linux¶
  4. Macos¶
  5. Microsoft windows¶
  6. Pin-код подписи¶
  7. Внимание!
  8. Встраивание через единую библиотеку pkcs #11¶
  9. Выбор хранилища
  10. Запрещаем экспортирование сертификата
  11. Интеграция в приложение¶
  12. Как настроить ключ егаис рутокен эцп 2.0 для работы в маркировке (честный знак)
  13. Как перенести нужный контейнер на рутокен из другого источника
  14. Как произвести копирование сертификата с рутокен
  15. Как скопировать эцп с рутокена
  16. Как установить сертификат с использованием rutoken или etoken
  17. Какие последствия повлечёт генерация не экспортируемого ключа?
  18. Копирование закрытого ключа через оснастку криптопро
  19. Криптопро csp ошибка 0x80090010 отказано в доступе
  20. Помогла статья? подписывайся на telegram канал автора
  21. Проведение копирования контейнера с помощью встроенных средств операционной системы windows
  22. Проверка наличия сертификата в контейнере
  23. Сборка примеров¶
  24. Строгий сеанс работы¶
  25. Установка драйвера для рутокен эцп 2.0
  26. Установка программ для работы электронной подписи
  27. Установка сертификата
  28. Часто задаваемые вопросы по теме статьи (faq)

Что нужно для работы рутокен эцп 2.0 в системе мотп?

Для работы ключа на сайте МОТП потребуется установка:

  • Программы КриптоПРО CSP
  • Плагина КриптоПРО ЭЦП browser plugin
  • Драйвера для ключа ЕГАИС Рутокен ЭЦП 2.0
  • Рутокена Плагин

Кроме это потребуется настройка:

  • Интернет-браузера
  • ключа для ЕГАИС

Введение

Мне постоянно приходится иметь дело с сертификатами, токенами, закрытыми ключами, криптопровайдерами и прочим. Сейчас все завязано на это – банкинг, сдача отчетности в разные гос органы, обращения опять же в эти органы, в том числе и физ лиц. В общем, с этой темой рано или поздно придется познакомиться многим.

  1. Перенести или скопировать контейнер закрытого ключа через стандартную оснастку CryptoPro в панели управления. Это самый простой и быстрый способ, если у вас не много сертификатов и ключей. Если же их несколько десятков, а это не такая уж и редкость, то такой путь вам не подходит.
  2. Скопировать сертификаты и ключи непосредственно через перенос самих исходных файлов и данных, где все это хранится. Объем работы одинаков и для 5 и для 50-ти сертификатов, но требуется больше усилий и знаний.

Я опишу оба этих способа, но подробно остановлюсь именно на втором способе. В некоторых ситуациях он является единственно возможным.

Важное замечание. Я буду переносить контейнеры закрытого ключа, которые хранятся в реестре. Если вы храните их только на токене, то переносить контейнеры вам не надо, только сертификаты.

Gnu/linux¶

Шаги по установке библиотеки:

  1. Проверить наличие пакетов и установить, если их нет:
    • для ОС семейства Debian – pcscd, libpcsclite1, libccid.
    • для ОС семейства CentOS – pcsc-lite.

Macos¶

Шаги по установке библиотеки:

    Отключить System Integrity Protection .

Перезагрузите компьютер. При включении зажмите на клавиатуре клавиши ⌘ R (Command R).

После загрузки ОС на экране появится меню восстановления. Откройте раздел “Утилиты” и запустите “Терминал”.

В открывшемся окне Терминала выполните команду:

Перезагрузите компьютер через меню, чтобы настройки вступили в силу.

Установить пакет pcsc-lite, если он не установлен.

Например, пакет можно установить при помощи пакетного менеджера Homebrew:

Запустите инсталлятор SDK/lib/macOS/jcPKCS11-2_x.x.x.x.pkg и следуйте инструкциям установщика.

Библиотека будет установлена в качестве Framework в /Library/Frameworks/jcPKCS11-2.framework .

Перезагрузите компьютер. При включении зажмите на клавиатуре клавиши ⌘ R (Command R).

После загрузки ОС на экране появится меню восстановления. Откройте раздел “Утилиты” и запустите “Терминал”.

В открывшемся окне Терминала выполните команду:

Перезагрузите компьютер через меню, чтобы настройки вступили в силу.

Microsoft windows¶

Для Microsoft Windows Единая библиотека PKCS #11 не требует установки в систему и входит в состав JaCarta-2 SDK в виде динамической библиотеки:

  • SDK/lib/Win32/jcPKCS11-2.dll – библиотека под 32–битную архитектуру;
  • SDK/lib/Win64/jcPKCS11-2.dll – библиотека под 64–битную архитектуру.
Читайте также:  Что такое смарт ключ гост rsa

Pin-код подписи¶

PIN-код подписи используется как дополнительный фактор для подтверждения операции подписи. Его использование не отменяет необходимость предъявления PIN-кода пользователя для работы в режиме пользователя.

Установка, смена и предъявление

PIN-код подписи устанавливается с помощью функции JC_KT2_SetSignaturePIN() . После установки PIN-код подписи пользователь уже не сможет его удалить, только изменить на новый.

Для изменения PIN-кода подписи необходимо вызвать функцию JC_KT2_ChangeSignaturePIN() .

PIN-код подписи может быть удалён только после инициализации устройства администратором с помощью ПО «АРМ администратора безопасности JaCarta-2 ГОСТ» или «АРМ разработчика JaCarta-2 ГОСТ».

Внимание!

Рекомендуется использовать данный способ в тех случаях, когда выполнение штатными средствами СКЗИ копирование не удалось.

Если вы желаете скопировать криптографический контейнер с требуемым нам сертификатом непосредственно из реестра компьютера, то сначала необходимо найти папку, где он располагается. В зависимости от версии Windows необходимо перейти по следующему адресу в ветке реестра:

Теперь достаточно для копирования выполнить действия в соответствии со следующим алгоритмом:

  • выделите интересующую папку и правой кнопкой мыши вызовите контекстное меню;
  • выполните команду «Экспортировать»;
  • введите название файла и сохраните его;
  • скопируйте полученный файл на жесткий диск компьютера, где планируете организовать рабочее место обычным способом;
  • откройте скопированный файл реестра (формат .reg,), через «Блокнот» или иное аналогичное приложение;
  • измените в открытом файле SID* пользователя (он имеет аналогичный формат и обычно расположен в третьей строке сверху);
  • добавьте после папки Software дополнительно Wow6432Node в случае, если копирование идет из Windows 32-бита в версию с 64-бита;
  • сохраните все изменения;
  • выберите опять файл реестра;
  • произведите «Слияние», выбрав этот пункт в контекстном меню.

Встраивание через единую библиотеку pkcs #11¶

Единая библиотека PKCS #11 предоставляет высокоуровневый интерфейс (см. API Единой библиотеки PKCS #11) для взаимодействия с JaCarta-2 ГОСТ по стандарту PKCS #11 v2.30.

Выбор хранилища

  1. В окне «Хранилище сертификатов» выберите режим «Поместить сертификаты в следующие хранилище», нажмите кнопку «Обзор»

Источник

Запрещаем экспортирование сертификата

Производим экспорт сертификата, в итоге у вас получится архив pfx. Он будет содержать как открытый, так и закрытый ключ. Теперь попробуйте произвести импорт сертификата. Обратите внимание, что в момент импорта, вам не нужно ставить галку “Разрешить экспорт закрытого ключа” именно ей мы не дадим его выгрузку.

Вводим пинкод (чаще всего он стандартный у рутокен, если вы его не меняли)

У вас может появиться в некоторых случаях ошибка “импортированы могут быть только сертификаты для ключей RSA”

Для ее решения нам нужно преобразовать сертификат pfx. Нам потребуется утилита OpenSSL. С помощью OpenSSL экспортируем закрытый ключ из PFX-файла:

Надеюсь вам поможет данный метод, запретить экспортирование приватного ключа с рутокен, если у вас есть дополнения или другие методы, то напишите о них в комментариях.

Интеграция в приложение¶

В документации по Единой библиотеке PKCS #11 в разделах:

    представлена полная реализация алгоритма; описаны общие принципы работы с библиотекой.
  • dll – для Microsoft Windows;
  • dylib – для macOS;
  • so – для GNU/Linux.

Для использования jcPKCS11-2 в проекте выполните следующие шаги:

Прилинкуйте библиотеку к проекту. Пути до библиотеки в зависимости от ОС:

  • библиотека под 32–битную архитектуру – SDK/lib/Win32/jcPKCS11-2.dll ;
  • библиотека под 64–битную архитектуру – SDK/lib/Win64/jcPKCS11-2.dll .
  • библиотека в качестве Framework установленная при помощи .pkg пакета – /Library/Frameworks/jcPKCS11-2.framework .
  • библиотека, установленная при помощи .deb пакета – /usr/lib/libjcPKCS11-2.so ;
  • библиотека, установленная при помощи .rpm пакета – /usr/lib/libjcPKCS11-2.so .
  • библиотека, установленная при помощи .deb пакета – /usr/lib/libjcPKCS11-2.so ;
  • библиотека, установленная при помощи .rpm пакета – /usr/lib64/libjcPKCS11-2.so .
Читайте также:  Список аккредитованных удостоверяющих центров в Екатеринбурге.

В примерах, входящих в состав JaCarta-2 SDK, путь до библиотеки ( PKCS_LIB_PATH ) устанавливается в SDK/sources/CMakeLists.sdk , а затем используется в SDK/sources/common/tools.make и SDK/sources/common/P11Loader.cpp .

В коде подключите заголовочный файл jcPKCS11.h .

Пример:

Если вы подключаете динамическую библиотеку в Runtime, то подгрузите из нее необходимые функции.

Вызовите функцию C_GetFunctionList() для получения функций стандарта PKCS #11, реализованных в библиотеке. Все они описаны в разделе Функции, входящие в стандарт PKCS #11.

Пример:

Вызовите функцию JC_GetFunctionList() для получения дополнительных функций, реализованных в библиотеке, но не входящих в стандарт PKCS #11. Все они описаны в разделе Функции, не входящие в стандарт PKCS #11.

Этот шаг следует выполнять, если Вам требуются функции расширения.

Пример:

В примерах, входящих в состав JaCarta-2 SDK, класс P11Loader демонстрирует использование библиотеки jcPKCS11-2 под Microsoft Windows, macOS и GNU/Linux.

Класс объявлен и реализован в SDK/sources/common/P11Loader.h и SDK/sources/common/P11Loader.cpp соответственно.

Проект готов для использования Единой библиотеки PKCS #11.

Как настроить ключ егаис рутокен эцп 2.0 для работы в маркировке (честный знак)

Для регистрации и работы в системе МОТП требуется усиленная квалифицированная электронная подпись.

У некоторых предпринимателей и организаций имеется электронная подпись для системы ЕГАИС-алкоголь, которую можно использовать в работе в системе МОТП.

Если у Вас нет электронной подписи для систем маркировки (Честный знак) или системы ЕГАИС-алкоголь, то можете ее заказать перейдя по ссылке.

Ниже описан пошаговый процесс настройки рабочего места для использования Рутокен ЭЦП в системе МОТП.

Как перенести нужный контейнер на рутокен из другого источника

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

  • переходим на вкладку «Сервис»;
  • нажимаем на кнопку «Скопировать»;
  • выбираем нужный нам контейнер с помощью кнопки «Обзор»;
  • нажимаем кнопку «Далее»;
  • вводим PIN-код;
  • указываем наименование контейнера, который будет находиться на токене;
  • выбираем актуальный носитель;
  • вводим пользовательский PIN-код Рутокена;
  • нажимаем для контроля копирования кнопку «Просмотреть сертификаты контейнера» во вкладке Сервис.

Для использования обновленного контейнера для подписи различных документов необходимо переместить сертификат с токена непосредственно в хранилище. В зависимости от вашей версии КриптоПро необходимо либо нажать на кнопку «Установить» либо сначала нажать «Свойства» и затем выбрав соответствующую операцию по установке нужного сертификата. В дальнейшем достаточно соблюдать рекомендации специального мастера.

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

  • запустите браузер Internet Explorer (версия, как минимум 8.0);
  • перейдите в настройках во вкладку «Свойства браузера» (раздел «Сервис»);
  • перейдите теперь на вкладку «Содержание»;
  • кликните по пункту «Сертификаты»;
  • выберите лишний сертификат и после этого нажмите на кнопку «Удалить»;
  • подтвердите действие.

Удалить также можно с помощью программы КриптоПро CSP, которое значительно упрощает действия с контейнерами. Для проведения операции сделайте ряд действий:

  • запустите программное обеспечение;
  • перейдите теперь на вкладку «Сервис»;
  • выберите раздел «Удалить» или «Удалить контейнер» (название зависит от конкретной версии программного обеспечения);
  • выберите в окне сертификат, от которого вы хотите избавиться;
  • подтвердите действие, нажав кнопку «Готово».
Читайте также:  КриптоПро не видит флешку

Подобным образом рекомендовано также удалять ненужные уже сертификаты или иные электронные подписи, которые уже недействительны, или если обновление ЭЦП запланировано в другом удостоверяющем центре. В этих случаях старый корневой сертификат больше не нужен, но одновременно вы не сможете открывать зашифрованные «старыми» ЭЦП документы.

При необходимости решить вопросы с копированием, организацией рабочих мест, где понадобится использование ЭЦП Рутокен любого типа, обращайтесь в компанию «Астрал-М». Мы специализируемся на внедрении в компаниях IT-решений по автоматизации электронного документооборота, выпуске электронных цифровых подписей любой степени сложности.

Источник

Как произвести копирование сертификата с рутокен

На одном накопителе Рутокен может находиться до 28 сертификатов ЭЦП (зависит от объема встроенной памяти). Этого достаточно для решения задач даже с учетом постепенного копирования на имеющийся носитель дополнительных ключей. На практике иногда приходится сталкиваться с необходимостью копирования сертификата с токена для переноса на другой или временного хранения на жестком диске, в облаке.

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

  • Рутокен;
  • съемный диск любого типа;
  • реестр компьютера.

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

Обратим внимание, что использование обычного USB-накопителя стоит рассматривать исключительно в качестве временной меры для хранения сертификатов и ключей из-за риска их хищения злоумышленниками. Исключением будет случай, когда подобное копирование используется для получения дополнительного комплекта файлов на случай выхода из строя Рутокен.

Как скопировать эцп с рутокена

Сертификат электронной цифровой подписи — электронный либо бумажный документ, дающий право проконтролировать достоверность текстового или иного файла, принадлежность операции конкретному владельцу. Его выдает специализированный удостоверяющий центр (УЦ), где идет оформление ЭЦП. В обязательном порядке в нем есть следующая информация:

  • наименование средства ЭЦП;
  • наименование УЦ, которое выпустило сертификат;
  • данные о датах начала и завершения действия ЭЦП;
  • ключ для выполнения проверки ЭЦП;
  • сведения об актуальной точке списка отозванных сертификатов (СОС).

Также в состав сертификата входит информация о владельце ЭЦП. Для физического (частного) лица — это фамилия имя и отчество, номер СНИЛС, ИНН при наличии. Для юрлица — это наименование компании, адрес расположения, ИНН. Дополнительно в сертификате могут находиться сведения о сфере применения, данные об издателе и иные данные.

В общем случае сертификат ЭЦП состоит из трех компонентов:

  • закрытый ключ (служит для формирования уникальной ЭЦП при подписи каждого документа);
  • открытый ключ (служит для контроля подлинности подписи автором);
  • внесенные в систему данные о владельце.

Как правило, срок действия сертификата составляет 1 год с момента выдачи, по истечение которого надо повторно получать новый. Сделано это для повышения общей надежности и предотвращения компрометации конфиденциальных данных.

Как установить сертификат с использованием rutoken или etoken

Данная инструкция поможет вам установить личный сертификат с использованием ruToken или eToken.

Если у вас установлена ОС Windows 7, воспользуйтесь данной инструкцией — Как установить сертификат с ruToken или eToken для Windows 7?.

Какие последствия повлечёт генерация не экспортируемого ключа?

Все вы помните, на портале заявителя или ФЗС — портале, как его  любят называть, есть раздел, где мы, пользователи портала, формируем так называемое заявление (запрос) на выпуск сертификата. Так вот… Там притаилась в самом конце формы страшная засада!

Проклятая галочка не экспортируемого ключа
Проклятая галочка не экспортируемого ключа

Собственно, если вы не разбираетесь, не обратили внимания на эту сиротливую галочку, и сгенерировали запрос с опцией «НЕТ» в графе экспортируемого ключа, а я напомню, что по умолчанию стоит именно опция «НЕТ», то вас ждёт жестокое наказание!

Дело в том, что при галочке «НЕТ», вам изготовят так называемый НЕ экспортируемый ключ. Это означает, что с такого ключа НЕВОЗМОЖНО будет сделать копию на другой носитель или даже в реестр ОС! Чем это чревато вы и сами догадались… Если в организации несколько рабочих мест, где планируется использование ЭЦП, то всё! ЖОПА!

Мало того! Когда мы по неосторожности сделали неэкспортируемый ключ, поняли роковую ошибку, и решили сделать новый, экспортируемый, то в УФК нам отказали с формулировкой: «сертификат с такими полномочиями уже выпущен!» Пришлось нам отзывать сертификат в связи с утерей!  И делать новый, экспортируемый!

Будьте внимательны и осторожны при генерации запросов на изготовление сертификатов  на ФЗС — портале заявителя! Это страшная засада!  Не забудьте поставить галочку именно там, где я показал на скрине! Зла не хватает на это казначейство..)

Копирование закрытого ключа через оснастку криптопро

Для того, чтобы скопировать контейнер для хранения закрытого ключа сертификата штатным средством, необходимо в Панели управления открыть оснастку CryptoPro, перейти в раздел Сервис и нажать Скопировать.

Далее вы выбираете текущий контейнер, который хотите скопировать. Это может быть либо токен, либо реестр компьютера. Затем новое имя и новое расположение контейнера. Опять же, это может быть как реестр, так и другой токен.

Криптопро csp ошибка 0x80090010 отказано в доступе

Иногда после переноса контейнеров закрытых ключей через экспорт – импорт ветки реестра с ключами можно увидеть ошибку доступа к контейнерам. Вроде бы все на месте, ключи есть в реестре. Их можно увидеть в останстке CryptoPro, но не получается прочитать. При попытке это сделать возникает ошибка:

Ошибка обращения к контейнеру закрытого ключа. Ошибка 0x80090010: Отказано в доступе. Связано это с тем, что у текущего пользователя, под которым вы хотите получить доступ к контейнеру, нет полных прав на ветку реестра с хранящимися ключами. Исправить это просто. Переходите в редактор реестра и выставляйте полные права к ветке Keys для текущего пользователя.

Убедитесь так же, что новые права наследовались на дочерние ветки с самими ключами. Обычно это так, но перепроверить на всякий случай непомешает. После этого ошибка с доступом к контейнеру закрытого ключа исчезнет. 

Помогла статья? подписывайся на telegram канал автора


Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Проведение копирования контейнера с помощью встроенных средств операционной системы windows

При использовании USB-накопителя либо дискеты все можно выполнить стандартными средствами Windows. Для этого достаточно скопировать папку с сертификатом на конкретный носитель. Внутри этой папки будет 6 файлов с одинаковым расширением .key. Также здесь может находиться ключ в виде файла типа keyName.cer, копировать который необязательно.

Файлы для электронной цифровой подписи имеют следующие наименования (все имеют расширение .key):

  • header:
  • masks;
  • masks2;
  • name;
  • primary;
  • primary2.

Файл primary.key включает в себя 32 байта ключа, представленного в формате ASN1. При этом данное значение представляет собой только 50% искомого ключа, так как полная его версия может быть получена при делении на маску с учетом модуля Q.

Файл masks.key включает 32 байта маски ключа, которая также представлена в формате ASN1. Также здесь есть 12 байт данных для генерации ключа при условии, что криптографический контейнер защищен от несанкционированного доступа паролем (последний также принимает участие при генерации уникального ключа хранения). Завершает перечень информации в файле контрольная сумма, занимающая 4 байта.

Файл header.key представляет собой набор параметров ЭЦП и другую общую информацию.

Проверка наличия сертификата в контейнере

  1. Перед установкой личного сертификата с носителя ruToken или eToken необходимо проверить наличие сертификата в контейнере, для этого:
  2. Запустите программу КриптоПро CSP: (Пуск — Настройка — Панель управления — КриптоПро CSP или Пуск — Панель управления — КриптоПро CSP )
  3. Откройте вкладку “Сервис” и нажмите кнопку «Просмотреть сертификаты в контейнере»Ключевая пара гост
  4. В открывшемся окне нажмите кнопку “Обзор”
    Pin-коды по умолчанию:
  • ruToken 12345678
  • eToken 1234567890

Если появится сообщение «В контейнере закрытого ключа **** отсутствует сертификат открытого ключа шифрования», значит в контейнере отсутствует личный сертификат.
Ключевая пара гост

Сборка примеров¶

Примеры JaCarta-2 SDK предназначены для сборки на платформах Microsoft Windows, GNU/Linux и macOS. Для сборки примеров необходима утилита CMake минимальной версии 2.8 (рекомендуется 3.6), генерирующая проектные файлы для сборки примеров (.sln, Makefile).

  • для Debian – gcc, g , make;
  • для CentOS – gcc, gcc-c , make;
  • для macOS – make, gcc.
  • под Microsoft Windows – запустите командный файл ./sources/make.bat (проекты будут располагаться в каталоге ./out , исполняемые файлы в ./bin );
  • под GNU/Linux и macOS запустите скрипт ./sources/make.sh (артефакты сборки будут располагаться в каталоге ./out , исполняемые файлы в ./bin ).

Дополнительные рекомендации указаны в комментариях к каждому примеру.

Строгий сеанс работы¶

  • все данные, передаваемые между библиотекой и токеном, шифруются;
  • устройство входит в эксклюзивный режим работы и отвергает попытки любых сторонних приложений получить доступ к его функциям.

Установка драйвера для рутокен эцп 2.0

Для работы в МОТП с ключом ЕГАИС-алкоголь требуется, чтобы у Вас была установлена свежая версия драйвера (рекомендуем версию 4.5 и выше). Посмотреть версию установленного драйвера можно в Панели управления Рутокен, которую можно найти тут: Пуск — Программы (или Все программы)

Если версия драйвера 4.5 и выше, то драйвер обновлять необязательно (но желательно), можете перейти к следующему пункту настройки.

Установка программ для работы электронной подписи

Для работы электронной подписи требуется наличие актуальной версии программы КриптоПРО CSP и плагина КриптоПРО ЭЦП browser plugin. Если эти программы уже установлены на вашем компьютере, то можете пропустить этот шаг инструкции.

Внимание!Установка программ для электронной подписи на ваш компьютер самому компьютеру не навредит, но может нарушить работу электронной подписи. Поэтому мы не рекомендуем самостоятельно заниматься установкой и настройкой компонентов электронной подписи, а доверить это специалистам! Наши специалисты оказывают услугу по настройке рабочего места для МОТП всего за 1000 рублей!

Установка сертификата

  1. Для установки сертификата нажмите кнопку «Свойства»

Часто задаваемые вопросы по теме статьи (faq)

Оцените статью
ЭЦП Эксперт
Добавить комментарий