Контейнер закрытого ключа что это

Читаем контейнер закрытого ключа КриптоПро средствами OpenSSL

Речь пойдет о файлах primary.key, masks.key и header.key, которые лежат в директории ххххх.000 на флешке. Данные файлы входят в состав криптоконтейнера закрытого ключа электронной подписи криптопровайдера КриптоПро, формат которого нигде не опубликован. Целью данной статьи является чтение контейнера и преобразование закрытого ключа в формат, который может быть прочитан в библиотеке OpenSSL. Долгое время было распространено ошибочное суждение, что достаточно сделать нечто вида (primary_key XOR masks_key) и мы получим закрытый ключ в чистом (raw) виде, однако забегая вперед, можно утверждать, что в КриптоПро было применено более сложное преобразование, в худшем случае состоящее из более чем 2000 (двух тысяч) операций хеширования.

Файл primary.key

Содержит 32 байта ключа в формате Asn1. Это только половина ключа, полный ключ получается при делении этого числа по модулю Q на маску. Поле, хранящее модуль Q в библиотеке OpenSSL имеет название order. Маска лежит в файле masks.key:

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Файл masks.key

Содержит 32 байта маски ключа в формате Asn1, зашифрованного на ключе хранения pwd_key. Далее 12 байт «затравочной» информации для генерации ключа хранения pwd_key, если криптоконтейнер защищен паролем, то пароль также участвует в генерации ключа хранения.

Далее контрольная сумма (имитозащита) 4 байта. Контрольной информацией для простоты мы пользоваться не будем, общий контроль будет осуществляться путем генерации открытого ключа и сравнения первых 8 байт полученного ключа с соответствующим полем из файла header.key:

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Файл header.key

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Читаем закрытый ключ и конвертируем

Основную работу выполняют следующие 3 функции:

1. Создаем ключ хранения исходя из 12-ти байтовой «соли» и пароля.

2. Расшифровываем основной ключ на ключе хранения.

3. Делим ключ с маской на маску.

Но так как в библиотеке OpenSLL операция деления по модулю традиционно отсутствует, пользуемся операцией взятия обратного числа и умножением.

Сборка утилиты конвертирования ключа

Далее сборка исходников описана для Linux версии.

Версию для Windows можно скачать отсюда там же есть сертификаты и закрытый ключ для тестирования, для сборки потребуется бесплатный компилятор Borland C++ 5.5

Компиляция OpenSSL библиотеки

После скачивания и распаковки исходных текстов openssl в целевой директории выполняем команды:

Получаем готовую библиотеку libcrypto.a в текущей директории.
Также потребуются заголовочные файлы из директорий engines/ccgost и include.

Компиляция privkey.c

Формирование файла закрытого ключа private.key

Тестовый закрытый ключ в криптоконтейнере lp-9a0fe.000, сертификат открытого ключа signer.cer и другие файлы для тестирования можно взять отсюда

Получаем результат работы:

Cохраняем в private.key

Пользуемся закрытым ключом private.key для подписывания файла file.txt

Проверяем подпись

Все работает просто замечательно!

Спасибо за внимание. Это была моя первая статья на хабре.

Источник

КриптоПро CSP: как создать хранилище сертификата и скопировать контейнер закрытого ключа

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

Чтобы воспользоваться данной услугой через сайт УЦ, заявителю потребуется маркер или карточка временного доступа. Это пара логин–пароль для авторизации в защищенной зоне интернет-портала центра сертификации, выдавшего своему клиенту текущий СКПЭП. Проапдейтить его можно непосредственно через веб-интерфейс УЦ. Если требуется новый сертификат, заявителю следует выбрать подходящий УЦ и сделать соответствующий запрос, воспользовавшись ссылкой типа «Мастер создания сертификатов», размещенной на официальном сайте учреждения.

Чтобы получить маркер временного доступа, пользователю нужно зарегистрировать личный кабинет и, скорее всего, понадобится заполнить электронный бланк заказа услуги. Он обязательно оформляется, если существует необходимость расширения области применения ЭП. Например, для подключения компании заявителя к процессу представления цифровой бухотчетности в ПФР, ФСС или Росстат.

Услугу удаленного создания нового или обновления текущего СКПЭП предлагают Федеральная служба по регулированию алкогольного рынка (ФСРАР), МТС-банк, УЦ Такском и другие организации. В следующих разделах мы расскажем, как с помощью КриптоПро CSP создать хранилище личного сертификата и скопировать контейнер закрытого ключа на подходящий носитель при использовании удаленных сервисов для запроса СКПЭП.

КриптоПро CSP: как создать ключевой контейнер

Ключевой контейнер – это «запароленный» каталог в хранилище (реестре) или системной библиотеке «операционки» (далее – ОС) или на защищенном ключевом USB-носителе: токене, смарт-карте. Он считается одним из инструментов защиты криптографических средств генерации и верификации ЭП, лицензий, сертификатов, паролей и другой личной информации.

Криптометод организации и иерархии персональных данных предусматривает обязательное использование защищенного каталога как части комплекса гарантий сохранности и конфиденциальности сведений, необходимых для активации ЭП. Фактически, создавая новую папку для хранения СКПЭП, доступ к которой обеспечивается путем ввода пароля, пользователь формирует новое хранилище.

Помимо выполнения основных функций – генерации и верификации ЭП – КриптоПро CSP «умеет» функционировать как зависимая компонента: приложение можно вызывать из сторонних программ. Например, через веб-интерфейс сайта УЦ, в который заявитель обратился за услугой обновления СКПЭП. КриптоПро CSP бывает необходим и для того, чтобы создать ключевой контейнер и установить в него сертификат ключа проверки ЭЦП, в том числе с обращением к службе сертификации ОС Microsoft (далее – MS) Windows Server.

Испытать работу генератора ключей и ознакомиться с процедурой запроса СКПЭП можно на странице тестового удостоверяющего центра разработчика программного модуля. Ниже мы пошагово опишем этот процесс.

Внимание! Если вы запрашиваете СКПЭП, который планируете использовать при работе с электронной почтой, указывайте «Область применения ключа». Также учитывайте: вы не получите доступа к криптофункциям для e-mail, если указанный адрес электронной почты не совпадает с зарегистрированным в MS Outlook Express.

Чтобы получить возможность применять выданный по удаленному запросу СКПЭП при обмене данными по протоколу TLS, перейдите к разделу «Область применения ключа» и укажите его тип: «Сертификат аутентификации клиента».

Источник

Установка сертификата и закрытого ключа

Мы опишем установку сертификата электронной подписи и закрытого ключа для ОС семейства Windows. В процессе настройки нам понадобятся права Администратора (поэтому нам может понадобится сисадмин, если он у вас есть).

Если вы еще не разобрались что такое Электронная подпись, то пожалуйста ознакомьтесь вот с этой инструкцией. Или если еще не получили электронную подпись, обратитесь в Удостоверяющий центр, рекомендуем СКБ-Контур.

Хорошо, предположим у вас уже есть электронная подпись (токен или флешка), но OpenSRO сообщает что ваш сертификат не установлен, такая ситуация может возникнуть, если вы решили настроить ваш второй или третий компьютер (разумеется подпись не «прирастает» только к одному компьютеру и ее можно использовать на нескольких компьютерах). Обычно первоначальная настройка осуществляется с помощью техподдержки Удостоверяющего центра, но допустим это не наш случай, итак поехали.

1. Убедитесь что КриптоПро CSP 4 установлен на вашем компьютере

Для этого зайдите в меню Пуск КРИПТО-ПРО КриптоПро CSP запустите его и убедитесь что версия программы не ниже 4-й.

Если ее там нет, то скачайте, установите и перезапустите браузер.

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

2. Если у вас токен (Рутокен например)

Прежде чем система сможет с ним работать понадобится установить нужный драйвер.

Алгоритм такой: (1) Скачиваем; (2) Устанавливаем.

Для токена может понадобиться стандартный (заводской) пин-код, здесь есть стандартные пин-коды носителей.

3. Если закрытый ключ в виде файлов

Тут есть тонкость если эти файлы записаны на жесткий диск вашего компьютера, то КриптоПро CSP не сможет их прочитать, поэтому все действия надо производить предварительно записав их на флешку (съемный носитель), причем нужно расположить их в папку первого уровня, например: E:\Andrey\ <файлики>, если расположить в E:\Andrey\keys\ <файлики>, то работать не будет.

(Если вы не боитесь командной строки, то съемный носитель можно сэмулировать примерно так: subst x: C:\tmp появится новый диск (X:), в нем будет содержимое папки C:\tmp, он исчезнет после перезагрузки. Такой способ можно использовать если вы планируете установить ключи в реестр)

Нашли файлы, записали на флешку, переходим к следующему шагу.

4. Установка сертификата из закрытого ключа

Теперь нам нужно получить сертификат, сделать это можно следующим образом:

5. Использование электронной подписи без токена или флешки (установка в реестр)

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

Чтобы для сертификата проставить ссылку на этот закрытый ключ выполните действия из пункта (4).

Важное замечание: портал OpenSRO не «увидит» сертификат, если вышел срок его действия.

Источник

Исправление ошибки отсутствия в контейнере закрытого ключа сертификата ЭП

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Из нашей статьи вы узнаете:

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

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

Что может послужить причиной такой ошибки

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

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

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

Решение ошибки: отсутствие электронного сертификата в контейнере закрытого ключа

Для начала запускаем «КриптоПро» нажатием кнопки «Пуск». Затем выбираем «Настройку», в возникающем на мониторе окне заходим в опцию панели управления, далее «сервис – установить личный сертификат».

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Далее, через кнопку «обзор» указываем путь, где сохранен открытый ключ – файл с расширением *.cert или *.crt

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Жмём «Далее», в мастере установки сертификата мы увидим путь, который указывали до нашего сертификата.

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Нам отображается информация, содержащаяся в открытом ключе на пользователя, жмём «далее»

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

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

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

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Самый простой вариант выбрать автоматический поиск, затем после «обнаружения» необходимого контейнера, мы увидим заполненную строчку с его именем и после жмём «Далее»

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Личный сертификат пользователя всегда устанавливается в хранилище «Личное», можно выбрать как вручную, так и КриптоПро может сделать это за вас по умолчанию, затем подтверждаем установку цепочки сертификатов и жмём «Далее»

В случае успешной установки КриптоПро выдаст окно с информацией об окончании процедуры и жмём «Готово»

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Затем появится окно с подтверждением данной операции, жмём «ДА»

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

В следующем окне увидим информацию о том, что процесс окончен успешно. Сертификат установлен в контейнер закрытого ключа.

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Особенности версий КриптоПро

С января 2019 года квалифицированные сертификаты могут выпускаться только по ГОСТ 2012, выпуск по другому ГОСТу прекращен. Мы об этом писали ранее в статье. Важно помнить, что версии криптопро на ГОСТ 2012 работают только с версии 4.0 и выше. Все старые версии КриптоПро, для нормальной работы, потребуется обновить или заменить на актуальную. Сделать это нужно не позднее 31 декабря 2019 года.

Источник

Установка корневого и личного сертификатов в КриптоПро

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Из нашей статьи вы узнаете:

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

Для корректной работы может потребоваться установка личного и корневого сертификата в КриптоПро. Чтобы это сделать придерживайтесь следующей инструкции.

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

Для того чтобы установить сертификат с помощью «КриптоПро CSP», выполните следующий алгоритм:

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

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

Как установить корневой сертификат КриптоПро

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

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Если процесс пройдёт корректно, то корневой сертификат появится в хранилище среди доверенных центров.

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

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

После успешного копирования контейнера личный сертификат нужно установить в хранилище «Личные».

Контейнер закрытого ключа что это. Смотреть фото Контейнер закрытого ключа что это. Смотреть картинку Контейнер закрытого ключа что это. Картинка про Контейнер закрытого ключа что это. Фото Контейнер закрытого ключа что это

Ошибки при установке

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

Для корректной работы рекомендуем использовать только лицензионное ПО. Приобрести его и получить комплексную техническую поддержку можно в компании «Астрал-М». Мы входим в число официальных дилеров компании «КриптоПро», что подтверждает информация на сайте разработчика. Обращаясь в «Астрал-М», вы получаете:

Для приобретения электронной подписи или криптопровайдера заполните форму обратной связи, чтобы наш специалист связался с вами.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *