- Файл masks. key
- Управление сертификатами
- Читаем контейнер закрытого ключа КриптоПро средствами OpenSSL
- Правила использования материалов сайта ATI
- Установка КриптоПро CSP[править]
- Загрузка[править]
- Установка[править]
- Обновление[править]
- Прописывание путей к исполняемым файлам[править]
- Проверка лицензии[править]
- Проверка версии[править]
- Удаление КриптоПро[править]
- Где хранится сертификат ЭЦП в ОС Windows XP
- О КриптоПро[править]
- Как узнать, встроена ли лицензия на КриптоПро в электронную подпись?
- КриптоПро CSP Окно «Выбор ключевого контейнера» пустое либо в нем не отображается нужный контейнер
- ОСНОВНЫЕ ПОНЯТИЯ (если есть аббревиатуры, понятия и т
- КриптоПро CSP ошибка 0x80090010 Отказано в доступе
- Как узнать номер лицензии криптопро в составе сертификата ключа
- Возможные значения имени контейнера
- Управление сертификатами[править]
- Создание запроса на получение сертификата[править]
- Установка сертификата[править]
- Просмотр сертификатов[править]
- Получение сертификата в УЦ и его установка[править]
- Проверка цепочки сертификатов[править]
- Удаление сертификата[править]
- Экспорт контейнера и сертификата на другую машину[править]
- Экспорт сертификатов на другую машину[править]
- Импорт персонального сертификата[править]
- Инструменты КриптоПро — кроссплатформенный графический интерфейс (cptools)[править]
- Работа с сертификатами в token-manager[править]
- Установка и запуск[править]
- Проверка лицензии[править]
- Просмотр сертификатов[править]
- Установка сертификата[править]
- Поддержка и помощь
- Спасибо!
- Заказ обратного звонка
- Плагин для Линукс
- Установка КриптоПРО CSP в Linux
- Часто задаваемые вопросы¶
- Как скопировать ключи с дискеты/флешки на HDIMAGE?
- Как проверить, работоспособен ли контейнер с закрытыми ключами?
- Массовый перенос ключей и сертификатов CryptoPro с компьютера на компьютер
- Доступ к считываетлям (Calais)¶
- Где хранятся ключи(закрытый ключ сертификата) в реестре? [1739]¶
- Ссылки[править]
- Копирование сертификата
- Шаг 1. Открытие программы КриптоПро
- Шаг 2. Копирование контейнера закрытого ключа
- Шаг 3. Ввод ключевого контейнера
- Шаг 4. Ввод нового ключевого контейнера
- Шаг 5. Выбор носителя для скопированного контейнера
- Шаг 6. Установка пароля
- Файл masks. key
Файл masks. key
Содержит 32 байта маски ключа в формате Asn1, зашифрованного на ключе хранения pwd_key. Далее 12 байт «затравочной» информации для генерации ключа хранения pwd_key, если криптоконтейнер защищен паролем, то пароль также участвует в генерации ключа хранения.
Далее контрольная сумма (имитозащита) 4 байта. Контрольной информацией для простоты мы пользоваться не будем, общий контроль будет осуществляться путем генерации открытого ключа и сравнения первых 8 байт полученного ключа с соответствующим полем из файла header.key:
Управление сертификатами
Список команд для управления сертификатами электронной подписи:
- Просмотр сертификатов на подключённых токенах — /opt/cprocsp/bin/amd64/csptest -keyset-enum_cont -fqcn -verifyc;
- Импорт персональных сертификатов электронной подписи со всех ключевых USB-носителей — /opt/cprocsp/bin/amd64/csptestf -absorb-cert;
- Просмотр добавленных сертификатов в хранилище — /opt/cprocsp/bin/amd64/certmgr -list -store uMy;
- Удаление сертификата из реестра — /opt/cprocsp/bin/amd64/certmgr -delete -store umy.
Читаем контейнер закрытого ключа КриптоПро средствами OpenSSL
Речь пойдет о файлах primary.key, masks.key и header.key, которые лежат в директории ххххх.000 на флешке. Данные файлы входят в состав криптоконтейнера закрытого ключа электронной подписи криптопровайдера КриптоПро, формат которого нигде не опубликован. Целью данной статьи является чтение контейнера и преобразование закрытого ключа в формат, который может быть прочитан в библиотеке OpenSSL. Долгое время было распространено ошибочное суждение, что достаточно сделать нечто вида (primary_key XOR masks_key) и мы получим закрытый ключ в чистом (raw) виде, однако забегая вперед, можно утверждать, что в КриптоПро было применено более сложное преобразование, в худшем случае состоящее из более чем 2000 (двух тысяч) операций хеширования.
Правила использования материалов сайта ATI
Все права на любые материалы, опубликованные на сайте ATI.SU, защищены в соответствии с российским и международным законодательством об авторском праве и смежных правах. Вся информация, размещенная на данном веб-сайте, предназначена только для персонального использования. Запрещается ее воспроизведение, копирование и/или распространение в какой-либо форме, а также автоматизированное извлечение ее любыми сервисами без официального разрешения Админиcтрации сайта.
Установка КриптоПро CSP[править]
Загрузка[править]
Архив с программным обеспечением (КриптоПро CSP 4.0 R4 — сертифицированная версия, КриптоПро CSP 5.0 — несертифицированная) можно загрузить после предварительной регистрации:
linux-ia32.tgz (19,3 МБ, для i586) — для 32-разрядных систем (x86, rpm)
;linux-amd64.tgz (20,1 МБ, для x86_64) — для 64-разрядных систем (x64, rpm)
.
Внимание! По умолчанию при скачивании с сайта КриптоПро выдаётся лицензия на три месяца
Установка[править]
1. Установите пакет cryptopro-preinstall:
# apt-get install cryptopro-preinstall
- Этот пакет установит все требуемое для КриптоПро (включая инфраструктуру поддержки карт Рутокен S и Рутокен ЭЦП).
Примечание: Пакет cryptopro-preinstall вытягивает зависимости libpangox-compat, opensc, pcsc-lite, pcsc-lite-rutokens, pcsc-lite-ccid, newt52.
2. Распакуйте архив, скачанный с официального сайта КриптоПро:
$ tar -xf linux-amd64.tgz
Таблица 1. Описание необходимых пакетов КриптоПро.
Пакет | Описание |
---|---|
Базовые пакеты: | |
cprocsp-curl | Библиотека libcurl с реализацией шифрования по ГОСТ |
lsb-cprocsp-base | Основной пакет КриптоПро CSP |
lsb-cprocsp-capilite | Интерфейс CAPILite и утилиты |
lsb-cprocsp-kc1 | Провайдер криптографической службы KC1 |
lsb-cprocsp-kc2 | Провайдер криптографической службы KC2 (требует наличия аппаратного датчика случайных чисел или гаммы) |
lsb-cprocsp-rdr | Поддержка ридеров и RNG |
Дополнительные пакеты: | |
cprocsp-cptools-gtk | Инструменты КриптоПро – кроссплатформенный графический интерфейс |
cprocsp-rdr-gui-gtk | Графический интерфейс для диалоговых операций |
cprocsp-rdr-rutoken | Поддержка карт Рутокен |
cprocsp-rdr-jacarta | Поддержка карт JaCarta |
cprocsp-rdr-pcsc | Компоненты PC/SC для ридеров КриптоПро CSP |
lsb-cprocsp-pkcs11 | Поддержка PKCS11 |
ifd-rutokens | Конфигурация Рутокеновских карт (или можно взять pcsc-lite-rutokens из репозитория) |
3. Установите пакеты КриптоПро:
- под правами пользователя root перейдите в папку с распакованным архивом:
- установите базовые пакеты:
# apt-get install cprocsp-curl* lsb-cprocsp-base* lsb-cprocsp-capilite* lsb-cprocsp-kc1-64* lsb-cprocsp-rdr-64*
Примечание: Для 32-битной версии вместо последнего пакета — lsb-cprocsp-rdr-4*
- установите пакеты для поддержки токенов (Рутокен S и Рутокен ЭЦП):
# apt-get install cprocsp-rdr-gui-gtk* cprocsp-rdr-rutoken* cprocsp-rdr-pcsc* lsb-cprocsp-pkcs11* pcsc-lite-rutokens pcsc-lite-ccid
Примечание: Если возникнут проблемы с отображением контейнеров на Рутокен S — удалите pcsc-lite-openct
- установите пакет для поддержки токенов (JaCarta):
# apt-get install cprocsp-rdr-jacarta*
Примечание: Для установки cprocsp-rdr-jacarta может понадобиться предварительно удалить openct.
- установите пакет для поддержки носителей с неизвлекаемыми ключами:
# apt-get install cprocsp-rdr-cryptoki*
Примечание: Для корректной работы носителей с неизвлекаемыми ключами через интерфейс PKCS#11 был добавлен cprocsp-rdr-cryptoki ( с версии CSP 5.0 R2 12000). Подробнее в базе знаний КриптоПро CSP.
- Для установки сертификатов Главного удостоверяющего центра:
# apt-get install lsb-cprocsp-ca-certs*
- Если есть потребность в установке графических Инструментов КриптоПро:
# apt-get install cprocsp-cptools*
Также можно выполнить установку КриптоПро, запустив ./install_gui.sh в распакованном каталоге и выбрав необходимые модули:
Примечания:
- Для КриптоПро CSP 3.6 R2 потребуется установить пакет
- Для установки может понадобиться libXm.so.3 () и для вывода кириллицы .
- Для установки потребуется предварительно установить .
- В версии 4.0.0-alt5 пакета добавлены подпакеты:
- для установки с , «предоставляющим» (в случае нежелательности «лишних» зависимостей вроде ), и
- для автоустановки зависимостей .
Обновление[править]
Внимание! Пакеты КриптоПро после обновления утрачивают работоспособность, так что рекомендуется удалить все пакеты и установить их заново.
Для обновления КриптоПро необходимо:
- Запомнить текущую конфигурацию:
- набор установленных пакетов:
- настройки провайдера (для простоты можно сохранить ).
- набор установленных пакетов:
- Удалить штатными средствами ОС все пакеты КриптоПро:
# apt-get remove lsb-cprocsp-base
- Установить аналогичные новые пакеты КриптоПро.
- При необходимости внести изменения в настройки (можно просмотреть diff старого и нового ).
- Ключи и сертификаты сохраняются автоматически.
Прописывание путей к исполняемым файлам[править]
Утилиты КриптоПро расположены в директориях /opt/cprocsp/sbin/<название_архитектуры> и /opt/cprocsp/bin/<название_архитектуры>.
Чтобы каждый раз не вводить полный путь к утилитам КриптоПро:
- после установки пакета начните новый сеанс пользователя в консоли;
Примечание: Не работает для суперпользователя.
или
- выполните от имени пользователя, который будет запускать команды (будет действовать до закрытия терминала):
/bin/ls -d /opt/cprocsp/s,bin/*tr
Внимание! Если установлен пакет mono или mono4-devel, может быть конфликт по имени утилиты certmgr
Проверка лицензии[править]
Проверить срок истечения лицензии можно командой (обратите внимание на строки Expires:):
$ cpconfig -license -viewLicense validity:
4040E-G0037-EK8R3-C6K4U-HCXQG
Expires: 2 month(s) 23 day(s)
License type: Server.
Примечание: Для версии КриптоПро CSP под Linux все лицензии считаются серверными, поэтому не смущайтесь строкой «License type: Server».
Для установки другой лицензии выполните (под root):
# cpconfig -license -set <серийный_номер>
Примечание: Серийный номер следует вводить с соблюдением регистра символов.
Проверка версии[править]
Проверить версию КриптоПро можно командой:
4.0.9963
Удаление КриптоПро[править]
# apt-get remove lsb-cprocsp-base
Примечание: Если появляется
support_mutex_open("registry_lock") failed:: Permission denied
выполните после удаления
# rm -f /var/opt/cprocsp/tmp/.registry_lock
Где хранится сертификат ЭЦП в ОС Windows XP
К базовым компонентам ОС Windows XP относятся службы сертификации, а XP Professional уже поддерживает многоуровневые иерархии центра сертификации (ЦС) как с изолированными и интерактивными ЦС, так и сети ЦС с доверительными перекрестными отношениями.
Открытые ключи ЭЦП Windows XP хранит в личном хранилище, а т.к. они представляют собой общедоступную информацию, то хранятся в виде открытого текста. Сертификаты пользователя находятся по адресу:
Documents and Settings\ \ApplicationData\Microsoft\ SystemCertificates\My\Certificates. Они автоматически вносятся в локальный реестр при каждом входе в систему. Если профиль перемещаемый, то открытые ключи хранятся обычно не на ПК, а следуют за пользователем при каждом входе в систему с внешнего носителя.
Такие поставщики услуг криптографии, как Enchanced CSP и Base CSP хранят закрытые ключи электронной подписи в папке %SystemRoot%\Documents and Settings\ \ Application Data\Microsoft\Crypto\RSA. Если профиль перемещаемый, то они расположены в папке RSA на контроллере домена. В этом случае на ПК они загружаются только на время работы профиля. Все файлы в данной папке шифруются случайным симметричным ключом автоматически. Основной ключ пользователя имеет длину в 64 символа и создается проверенным генератором случайных чисел.
О КриптоПро[править]
КриптоПро — линейка криптографических утилит (вспомогательных программ), так называемых “криптопровайдеров”. Они используются во многих программах российских разработчиков для генерации ЭЦП, работы с сертификатами, организации структуры PKI и т.д. (см.сайт).
Как узнать, встроена ли лицензия на КриптоПро в электронную подпись?
Как узнать, встроена ли лицензия на КриптоПро в электронную подпись?
Если вы приобрели электронную подпись и думаете, что этого достаточно для того, чтобы войти по ней, например, на сайт налоговой или госуслуги, или торговую площадку – то вы ошибаетесь. Чтобы электронная подпись работала – на компьютере еще должно быть установлено СКЗИ (средство криптографической защиты информации). Самое распространенное СКЗИ на сегодняшний день – это КриптоПро CSP.
Для работы КриптоПро CSP необходима лицензия на его использование. Без лицензии оно работает ограниченное время в демонстрационном режиме. Компания “КРИПТО-ПРО”, как производитель данной программы, предоставляет бессрочные, годовые и встроенные лицензии.
Если вы захотите приобрести бессрочную или годовую лицензию на КриптоПро CSP (это можно сделать там же, где приобретали электронную подпись) – то вам выдадут бланк с серийным номером для активации лицензии вашей версии КриптоПро. Данный серийный номер вы введете вручную после установки СКЗИ на компьютер:
А что же такое встроенная в электронную подпись лицензия?
Если вы приобретете такую электронную подпись, то сможете использовать ее на любом компьютере с любой версией КриптоПро CSP. Вводить вручную серийный номер нигде не придется. И отслеживать срок действия такой лицензии не потребуется – она истечет тогда же, когда закончится срок действия самой электронной подписи.
Итак, предположим, что у вас есть флешка с электронной подписью. Как же определить, встроена ли в нее лицензия на КриптоПро?
Для этого вставляем ЭП в компьютер и запускаем программу КриптоПро CSP (если она у вас еще не установлена – то установите).
В открывшемся окне программы переходим во вкладку “Сервис” – жмем кнопку “Просмотреть сертификаты в контейнере”: Затем нажимаем “Обзор” – выделяем наш сертификат и жмем “ОК”:
Источник
КриптоПро CSP Окно «Выбор ключевого контейнера» пустое либо в нем не отображается нужный контейнер
ОСНОВНЫЕ ПОНЯТИЯ (если есть аббревиатуры, понятия и т
Ключевой носитель (Электронный идентификатор) — это компактное устройство в виде USB-брелка, которое служит для авторизации пользователя в сети или на локальном компьютере, защиты электронной переписки, безопасного удаленного доступа к информационным ресурсам, а также надежного хранения персональных данных.
Защищенный носитель — это компактное устройство, предназначенное для безопасного хранения электронной подписи. Представляет собой устройство в виде USB-флешки с защищенной паролем картой памяти, на которой хранится информация для создания электронной подписи. Обеспечивает двухфакторную аутентификацию пользователя: для работы необходимо вставить токен в USB-разъем компьютера и ввести пароль.
Рекомендации по решению проблемы зависят от типа ключевого носителя, на котором расположен контейнер:
Flash-накопитель
Если в качестве ключевого носителя используется flash-накопитель, необходимо выполнить следующие шаги:
1. Убедиться, что в что в корне носителя находится папка, содержащая файлы: header, masks, masks2, name, primary, primary2. Файлы должны иметь расширение.key, а формат названия папки должен быть следующим: xxxxxx.000
Если каких-либо файлов не хватает или их формат неверен, то, возможно, контейнер закрытого ключа был поврежден или удален.
Rutoken
Если в качестве ключевого носителя используется защищённый носитель Rutoken, необходимо выполнить следующие шаги:
1. Убедиться, что на рутокене горит лампочка. Если лампочка не горит, то следует воспользоваться следующими рекомендациями.
2. Обновить драйвер Rutoken (см. Как обновить драйвер Rutoken?).
3. Следует убедиться, что на Rutoken содержатся ключевые контейнеры. Для этого необходимо проверить количество свободной памяти на носителе, выполнив следующие шаги:
Если рутокен не виден в пункте «Считыватели» или при нажатии на кнопку «Информация» появляется сообщение «Состояние памяти ruToken не изменилось», значит, носитель был поврежден, необходимо обратиться к вашему менеджеру
В качестве ключевого носителя в сервисных центрах выдаются рутокены объемом памяти около 30000 байт. Один контейнер занимает объем порядка 4 Кб. Объем свободной памяти рутокена, содержащего один контейнер, составляет порядка 26 000 байт, двух контейнеров — 22 000 байт и т д.
Если объем свободной памяти рутокена составляет более 29-30 000 байт, то ключевые контейнеры на нем отсутствуют.
Реестр
Если в качестве ключевого носителя используется считыватель Реестр, необходимо выполнить следующие действия:
Убедиться, что в КриптоПро CSP настроен считыватель «Реестр». Для этого:
Если считыватель отсутствует, его необходимо добавить.
В качестве считывателей (устройств — носителей ключевой информации) могут использоваться flash-накопители, реестр, смарт-карты
Иногда некоторые считыватели могут быть отключены в КриптоПро CSP. Чтобы работать с такими носителями, нужно добавить соответствующие считыватели.
Чтобы добавить считыватели: 1. Запустите КриптоПро CSP от имени администратора.
2. На вкладке «Оборудование» нажмите кнопку «Настроить считыватели».
3. В появившемся окне нажмите «Добавить».
4. В Мастере установки считывателей выберите, какой считыватель добавить: «Все съемные диски», «Реестр», «Все считыватели смарт-карт».
5. Нажмите «Далее», задайте имя считывателя при необходимости, нажмите «Готово».
В некоторых случаях для корректной работы добавленного считывателя потребуется перезагрузка.
Если ни одно из предложенных выше решений не поможет устранить проблему, возможно, ключевой носитель был поврежден, вам необходимо будет обратиться к вашему менеджеру. Восстановить данные с поврежденного защищенного носителя или реестра невозможно.
Остались вопросы?
Отдел технической поддержки
Источник
КриптоПро CSP ошибка 0x80090010 Отказано в доступе
Иногда после переноса контейнеров закрытых ключей через экспорт – импорт ветки реестра с ключами можно увидеть ошибку доступа к контейнерам. Вроде бы все на месте, ключи есть в реестре. Их можно увидеть в останстке CryptoPro, но не получается прочитать. При попытке это сделать возникает ошибка:
Ошибка обращения к контейнеру закрытого ключа. Ошибка 0x80090010: Отказано в доступе. Связано это с тем, что у текущего пользователя, под которым вы хотите получить доступ к контейнеру, нет полных прав на ветку реестра с хранящимися ключами. Исправить это просто. Переходите в редактор реестра и выставляйте полные права к ветке Keys для текущего пользователя.
Убедитесь так же, что новые права наследовались на дочерние ветки с самими ключами. Обычно это так, но перепроверить на всякий случай непомешает. После этого ошибка с доступом к контейнеру закрытого ключа исчезнет.
Как узнать номер лицензии криптопро в составе сертификата ключа
Как ввести серийный номер для КриптоПро CSP?
Серийный номер для КриптоПро CSP указан на бланке лицензии, которую можно приобрести в компании «КриптоПро» или у дилеров.
Ввод серийного номера:
1) Во время установки КриптоПро CSP – одним из шагов мастера установки будет пункт с предложением ввода данных об организации и серийного номера:
2) После установки CSP во вкладке «Общие» панели КриптоПро CSP.
Или «Панель Управления» – КриптоПро CSP):
Необходимо выбрать КриптоПро CSP, затем нажать правой кнопкой мыши – Все задачи – Ввести серийный номер.
(Управление лицензиями КриптоПро PKI– Действие – Все задачи – Установить лицензионный файл).
5) Если срок действия вашей лицензии заканчивается (или уже закончился), то можно ввести серийный номер или приобрести лицензию онлайн во всплывающем окне:
— На ОС Unix (Linux, macOS):
С помощью утилиты командной строки cpconfig, запускаемой от пользователя с повышенными привилегиями (root).
Серийный номер следует вводить с соблюдением регистра символов.
Для дистрибутивов Linux x64:
Для дистрибутивов Linux x32:
Источник
Возможные значения имени контейнера
Значение | Описание |
---|---|
NULL | Контейнер по умолчанию. Если конфигурация «КриптоПро CSP» настроена на хранение ключей на диске, то именем контейнера по умолчанию является имя пользователя ОС, вызвавшего CSP. |
CONTAINER | Имя контейнера. |
MEDIA\UNIQUE | Контейнер по умолчанию на носителе (MEDIA\UNIQUE). |
MEDIA\UNIQUE\CONTAINER | Контейнер на заданном носителе (MEDIA\UNIQUE). Если носитель не поддерживает уникальных имен, то уникальное имя носителя отсутствует, но символ \ опускать в этом случае нельзя. Если носитель поддерживает длинные имена (например, реестр), то имя контейнера в этом случае совпадает FOLDER. |
MEDIA\UNIQUE\FOLDER\CRC | Контейнер на заданном носителе (MEDIA\UNIQUE) в папке FOLDER с именем CRC16 которого в нижнем регистре в кодировке UTF8 совпадает с CRC. Если носитель не поддерживает уникальных имен, то уникальное имя носителя отсутствует, но символ \ опускать в этом случае нельзя. Данный формат не может использоваться для создания контейнеров. |
\\.\READER\MEDIA\UNIQUE | Контейнер по умолчанию на носителе (MEDIA\UNIQUE), с заданным именем считывателя. |
\\.\READER\MEDIA\UNIQUE\CONTAINER | Контейнер на заданном носителе (MEDIA\UNIQUE), с заданным именем считывателя. Если носитель не поддерживает уникальных имен, то уникальное имя носителя отсутствует, но символ \ опускать в этом случае нельзя. |
\\.\READER\MEDIA\UNIQUE\FOLDER\CRC | Контейнер на заданном носителе (MEDIA\UNIQUE) в папке FOLDER, с заданным именем считывателя и CRC16 имени контейнера в нижнем регистре в кодировке UTF8 совпадает с CRC. Если носитель не поддерживает уникальных имен, то уникальное имя носителя отсутствует, но символ \ опускать в этом случае нельзя. Если носитель поддерживает длинные имена (например, реестр), то имя контейнера в этом случае совпадает с FOLDER. Данный формат не может использоваться для создания контейнеров. |
\\.\READER\CONTAINER | Имя контейнера на заданном считывателе. |
\\.\READER | Контейнер по умолчанию на заданном считывателе. |
Во всех перечисленных выше формах (кроме NULL), оконечный символ \ не влияет на смысл контейнера.
Полный список поддерживаемых считывателей и типов носителей можно найти в Формуляре к конкретной версии «КриптоПро CSP»
Источник
Управление сертификатами[править]
cryptcp — приложение командной строки для создания запросов на сертификаты, шифрования и расшифрования файлов, создания и проверки электронной подписи файлов с использованием сертификатов открытых ключей, хэширования файлов. Результатом работы приложения в большинстве случаев является файл с CMS-сообщением (PKCS#7) в кодировке DER или BASE64.
Создание запроса на получение сертификата[править]
Создание запроса на получение сертификата средствами КриптоПро:
cryptcp -creatrqst -dn "список имён полей" -cont 'путь к контейнеру' <название_файла>.csr
Для создания запроса на получение сертификата потребуется:
- DN — данные, которые будут храниться в поле Subject сертификата (cn=Test User5,[email protected]).
- Имя контейнера вместе со считывателем (например, в локальном хранилище hdimage: ).
- Имя файла, в котором следует сохранить запрос ().
Внимание! Для использования проверки подлинности клиента в браузере потребуется также указать, что запрос создается по ГОСТ 2001 и добавляется тип применения подлинности клиента: -provtype 75 -certusage “1.3.6.1.5.5.7.3.4,1.3.6.1.5.5.7.3.2”.
С помощью опции -certusage можно указать OID назначение сертификата.
Назначение сертификата представляется в сертификате объектным идентификатором, присвоенным этой политике, — OID. Если в сертификате указано несколько политик, то это означает, что сертификат соответствует всем этим политикам списка.
Таблица 2. Типы применения.
OID | Назначение |
---|---|
1.3.6.1.5.5.7.3.1 | Аутентификация сервера |
1.3.6.1.5.5.7.3.2 | Аутентификация клиента |
1.3.6.1.5.5.7.3.3 | Подписывание кода |
1.3.6.1.5.5.7.3.4 | Защищенная электронная почта |
1.3.6.1.5.5.7.3.8 | Простановка штампов времени |
1.3.6.1.4.1.311.10.5.1 | Цифровые права |
1.3.6.1.4.1.311.10.3.12 | Подписывание документа |
Таблица 3. Поле Subject сертификата
OID | Алиас | Назначение | Примечание |
---|---|---|---|
2.5.4.3 | CN | Общее имя | Наименование ЮЛ (если ИНН начинается с “00”) или ФИО владельца. Длина не более 64 символов |
2.5.4.4 | SN | Фамилия | |
2.5.4.42 | GN/G | Имя Отчество | Общая длина текста в полях SN и G должна быть не более 64 символов (с учетом одного пробела между текстом из Фамилии и текстом из Имени) |
1.2.840.113549.1.9.1 | emailAddress/E | Адрес электронной почты | [email protected] |
1.2.643.100.3 | SNILS | СНИЛС | Должно быть записано 11 цифр (допускается 11 нулей для иностранных граждан). |
1.2.643.3.131.1.1 | INN | ИНН | 12 цифр, для ЮЛ первые две цифры 00 |
2.5.4.6 | C | Страна | Двухсимвольный код страны (RU) |
2.5.4.8 | S | Регион | Наименование субъекта РФ ЮЛ: по адресу местонахождения, ФЛ: по адресу регистрации (39 Калининградская обл.) |
2.5.4.7 | L | Населенный пункт | Наименование населенного пункта (Калининград) |
2.5.4.9 | street | Название улицы, номер дома | Пр-т Победы 14 кв.3 |
2.5.4.10 | O | Организация | Полное или сокращенное наименование организации (только для ЮЛ) |
2.5.4.11 | OU | Подразделение | В случае выпуска СКПЭП на должностное лицо – соответствующее подразделение организации (только для ЮЛ) |
2.5.4.12 | T | Должность | В случае выпуска СКПЭП на должностное лицо – его должность (только для ЮЛ) |
1.2.643.100.1 | OGRN | ОГРН | ОГРН организации (только для ЮЛ) |
Создать запрос на субъект “cn=Test User5,[email protected]”, используя открытый ключ, сгенерированный в контейнере test текущего пользователя криптопровайдером «GOST R 34.10-2001» (тип — 75) и сохранить его в файл test5.req, назначение ключа — аутентификация и защита электронной почты:
CryptCP 4.0 (c) "КРИПТО-ПРО", 2002-2018. Утилита командной строки для подписи и шифрования файлов. Запрос успешно создан и сохранен в файле. [ErrorCode: 0x00000000]
Созданный запрос будет сохранен в файле test5.req. Эти данные нужны для получения сертификата в удостоверяющем центре.
Создать запрос на физическое лицо, используя открытый ключ, сгенерированный в контейнере test_2012 (тип — 80) текущего пользователя криптопровайдером «Crypto-Pro GOST R 34.10-2012 KC1 CSP» (тип — 80) и сохранить его в файл test2012.req, назначение ключа — аутентификация и защита электронной почты:
$ cryptcp -creatrqst \-provtype 80 -nokeygen \-cont '\\.\HDIMAGE\test_2012' \-certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.5.5.7.3.2" test2012.req
Тот же запрос, используя OID:
$ cryptcp -creatrqst \-provtype 80 -nokeygen -cont '\\.\HDIMAGE\test_2012' \-certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.5.5.7.3.2" test2012.req
Установка сертификата[править]
Добавление сертификата, без привязки к ключам (только проверка ЭЦП):
$ certmgr -inst -file cert.cer
Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище uMy:
$ certmgr -inst -file cert.cer -store uMy -cont '\\.\HDIMAGE\test'
Запись сертификата клиента в контейнер:
$ cryptcp -instcert -provtype 80 -cont '\\.\HDIMAGE\test' -ku -askpin cert.cer
Основные опции:
-provtype — указать тип криптопровайдера (по умолчанию 75);
-provname — указать имя криптопровайдера;
-cont — задать имя ключевого контейнера (по умолчанию выбор из списка);
-ku — использовать контейнер пользователя (CURRENT_USER);
-km — использовать контейнер компьютера (LOCAL_MACHINE);
-dm — установка в хранилище компьютера (LOCAL_MACHINE);
-du — установка в хранилище пользователя (CURRENT_USER);
-askpin — запросить пароль ключевого контейнера из с консоли;
<имя файла> — имя файла, содержащего сертификат.
Добавление сертификата УЦ из файла certne_ucw.cer в хранилище машины (для текущего пользователя):
$ certmgr -inst -file certne_ucw.cer -store uRoot
Добавление корневых сертификатов из файла cert.p7b (для текущего пользователя):
$ certmgr -inst -all -file cert.p7b -store uRoot
Необходимо последовательно добавить все сертификаты.
Примечание: Корневые сертификаты для всех пользователей ставятся в хранилище машины — т.е. с параметром -store mRoot. Например: # certmgr -inst -store mRoot -file /tmp/cert.cer
Просмотр сертификатов[править]
Для просмотра установленных сертификатов можно воспользоваться командой:
$ certmgr -listCertmgr 1.1 (c) "Crypto-Pro", 2007-2018. program for managing certificates, CRLs and stores ============================================================================= 1------- Issuer : [email protected], C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2 Subject : CN=Test User5, [email protected] Serial : 0x120012447FA7E652B76808CD7900000012447F SHA1 Hash : 0xcb8e7ca68bea0ffbbd84c326d565de68cd8a15f5 SubjKeyID : 6f7507353601d6d943f1406aae60c21ab65190e0 Signature Algorithm : ГОСТ Р 34.11/34.10-2001 PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits) Not valid before : 18/12/2018 13:41:38 UTC Not valid after : 18/03/2019 13:51:38 UTC PrivateKey Link : Yes Container : HDIMAGE\\test.000\2EF8 Provider Name : Crypto-Pro GOST R 34.10-2001 KC1 CSP Provider Info : ProvType: 75, KeySpec: 1, Flags: 0x0 CA cert URL : http://testca.cryptopro.ru/CertEnroll/test-ca-2014_CRYPTO-PRO%20Test%20Center%202.crt OCSP URL : http://testca.cryptopro.ru/ocsp/ocsp.srf CDP : http://testca.cryptopro.ru/CertEnroll/CRYPTO-PRO%20Test%20Center%202.crl Extended Key Usage : 1.3.6.1.5.5.7.3.4 1.3.6.1.5.5.7.3.2 ============================================================================= [ErrorCode: 0x00000000]
Просмотр сертификатов в локальном хранилище uMy:
$ certmgr -list -store uMy
Примечание: Если в списке сертификатов выводится PrivateKey Link: Yes. Container: HDIMAGE\\test.000\2EF8, то сертификат ассоциирован (связан) с приватным ключом, а если выводится PrivateKey Link: No — связи нет, и использовать такой контейнер для подписи не удастся:
Просмотр сертификатов в контейнере:
$ certmgr -list -container '\\.\Aktiv Rutoken ECP - CP 00 00\Rutoken'
Просмотр корневых сертификатов:
$ certmgr -list -store uRoot
Получение сертификата в УЦ и его установка[править]
Для получения сертификата в УЦ (на примере тестового удостоверяющего центра КриптоПро), необходимо выполнить следующие действия:
- Откройте в браузере ссылку http://www.cryptopro.ru/certsrv (тестовый удостоверяющий центр КриптоПро).
- Нажмите ссылку «Отправить готовый запрос PKCS#10 или PKCS#7 в кодировке Base64»:
- Вставьте в поле «Base-64-шифрованный запрос сертификата» содержимое файла test5.req и нажмите кнопку «Выдать»:
- Сохраните файл по ссылке «Загрузить цепочку сертификатов» (по умолчанию предлагается имя certnew.p7b):
Примечание: Просмотреть содержимое файла test5.req можно, выполнив команду:
$ cat test5.reqMIIBMDCB4AIBADA2MRMwEQYDVQQDDApUZXN0IFVzZXI1MR8wHQYJKoZIhvcNAQkBFhBjYXNAYWx0
bGludXgub3JnMGMwHAYGKoUDAgITMBIGByqFAwICJAAGByqFAwICHgEDQwAEQDq5IAql+tHfVT7r
oz+P5dPgOUVXc7dg91nzGM7fkUBSKlapGO2A2xUDRUBHLtW/hBCiZsxdH3ydhzlZ6nhcbNKgPjA8
BgorBgEEAYI3AgEOMS4wLDAdBgNVHSUEFjAUBggrBgEFBQcDBAYIKwYBBQUHAwIwCwYDVR0PBAQD
AgTwMAgGBiqFAwICAwNBAFYnhGI6SsCwFRSl5p6EVnM7y6Hx9JGM6BFS4U3xTEGvzMK7yzk9j1kG
EKU7YZO5cFluPuDdi0WuYskhdz4SEg4=
Просмотреть полученный сертификат можно, выполнив команду:
$ certmgr -list -file certnew.p7bCertmgr 1.1 (c) "CryptoPro", 2007-2018. program for managing certificates, CRLs and stores ============================================================================= 1------- Issuer : [email protected], C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2 Subject : [email protected], C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2 Serial : 0x2B6E3351FD6EB2AD48200203CB5BA141 SHA1 Hash : 0x046255290b0eb1cdd1797d9ab8c81f699e3687f3 SubjKeyID : 15317cb08d1ade66d7159c4952971724b9017a83 Signature Algorithm : ГОСТ Р 34.11/34.10-2001 PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits) Not valid before : 05/08/2014 13:44:24 UTC Not valid after : 05/08/2019 13:54:03 UTC PrivateKey Link : No 2------- Issuer : [email protected], C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2 Subject : CN=Test User5, [email protected] Serial : 0x120012447FA7E652B76808CD7900000012447F SHA1 Hash : 0xcb8e7ca68bea0ffbbd84c326d565de68cd8a15f5 SubjKeyID : 6f7507353601d6d943f1406aae60c21ab65190e0 Signature Algorithm : ГОСТ Р 34.11/34.10-2001 PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits) Not valid before : 18/12/2018 13:41:38 UTC Not valid after : 18/03/2019 13:51:38 UTC PrivateKey Link : No CA cert URL : http://testca.cryptopro.ru/CertEnroll/test-ca-2014_CRYPTO-PRO%20Test%20Center%202.crt OCSP URL : http://testca.cryptopro.ru/ocsp/ocsp.srf CDP : http://testca.cryptopro.ru/CertEnroll/CRYPTO-PRO%20Test%20Center%202.crl Extended Key Usage : 1.3.6.1.5.5.7.3.4 1.3.6.1.5.5.7.3.2 ============================================================================= [ErrorCode: 0x00000000]
Цепочка сертификатов содержит два сертификата:
- Сертификат удостоверяющего центра.
- Сертификат клиента.
Для установки сертификата удостоверяющего центра:
- выполните команду:
$ certmgr -inst -file certnew.p7b -store uRoot
- в ответ на запрос команды нажмите 1.
Для записи сертификата клиента в контейнер:
- выполните команду:
$ certmgr -inst -file certnew.p7b -store uMy -cont '\\.\HDIMAGE\test'
- в ответ на запрос команды нажмите 2.
- введите пароль на контейнер \\.\HDIMAGE\test при запросе:
Примечание: Корневые сертификаты для всех пользователей ставятся в хранилище машины — т.е. с параметром -store mRoot. Например: # certmgr -inst -store mRoot -file /tmp/cert.cer
CRL ставятся точно также только с параметром -crl. CRL ставить не обязательно, но нужно убедиться что в /etc/opt/cprocsp/config64.ini в секции apppath указан правильный путь для libcurl.so. По умолчанию там путь до библиотеки от КриптоПро и если curl от КриптоПро не установлен — загрузка CRL работать не будет. Установка параметра на 64-битных системах:
# cpconfig -ini \\config\\apppath -add string libcurl.so /opt/cprocsp/lib/amd64/libcpcurl.so
Проверка цепочки сертификатов[править]
Внимание! В кэше сертификатов для выпущенного сертификата должны присутствовать корневые сертификаты удостоверяющих центров. В противном случае он будет недоступен в плагине для браузера!
Таблица 4. Сертификаты популярных удостоверяющих центров.
Удостоверяющий Центр | Источник | Сертификаты |
---|---|---|
ПАК «Головной удостоверяющий центр» | https://e-trust.gosuslugi.ru/MainCA | https://e-trust.gosuslugi.ru/Shared/DownloadCert?thumbprint=8CAE88BBFD404A7A53630864F9033606E1DC45E2 |
ЗАО «Национальный удостоверяющий центр» | https://www.nucrf.ru/info/ | https://www.nucrf.ru/download/nucrf.p7b |
Удостоверяющий центр СКБ Контур | https://ca.kontur.ru/about/certificates (выбрать 2015 год) | http://cdp.skbkontur.ru/certificates/kontur-root-2015.crt |
Для проверки можно скопировать персональный сертификат в файл:
cryptcp -copycert -dn "CN=Иванов Иван Иванович" -df tt.cerCryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018. Утилита командной строки для подписи и шифрования файлов. Будет использован следующий сертификат: Субъект:11223344556, 102301111222, Пр-т Победы 14 кв.3, 39 Калининградская обл., Калининград, RU, [email protected], Иван Иванович, Иванов, Иванов Иван Иванович Действителен с 21.02.2019 13:16:38 по 21.05.2019 13:26:38 Цепочки сертификатов проверены. Копирование сертификатов завершено. [ErrorCode: 0x00000000]
Из вывода следует, что все сертификаты есть в цепочке сертификатов.
Если же команда возвращает «Цепочка сертификатов не проверена для следующего сертификата:» или другую ошибку:
CryptCP 4.0 (c) "Crypto-Pro", 2002-2015. Command prompt Utility for file signature and encryption. The following certificate will be used: RDN:****** Valid from 13.07.2016 12:03:00 to 13.07.2017 12:04:00 Certificate chain is not checked for this certificate: RDN:****** Valid from 13.07.2016 12:03:00 to 13.07.2017 12:04:00 The certificate or certificate chain is based on an untrusted root. Do you want to use this certificate ([Y]es, [N]o, [C]ancel)?
(нажмите C и Enter, чтобы выйти).
Можно запустить вышеуказанную команду с отладкой цепочки:
... ----------- Error chain ----------- Chain status:IS_UNTRUSTED_ROOT Revocation reason:unspecified 1. Subject:'[email protected], C=ru, L=:0B5@8=1C@3, O= �$ �!▒ ▒>=BC@�, CN=uc skb kontur (root)' Issuer:'[email protected], C=ru, L=:0B5@8=1C@3, O= �$ �!▒ ▒>=BC@�, CN=uc skb kontur (root)' Cert status:IS_UNTRUSTED_ROOT ...
То есть нам надо установить сертификат УЦ с CN=uc skb kontur (root):
$ certmgr -inst -store uRoot -file kontur-root-2015.crt
После этого:
CryptCP 4.0 (c) "Crypto-Pro", 2002-2015. Command prompt Utility for file signature and encryption. The following certificate will be used: RDN:****** Valid from 13.07.2016 12:03:00 to 13.07.2017 12:04:00 Certificate chains are checked. Certificate's been copied. [ReturnCode: 0]
Всё в порядке и сертификат виден в плагине Cades.
Удаление сертификата[править]
Удалить сертификат c “CN=Иванов Иван Иванович” из хранилища КриптоПро:
$ certmgr -delete -dn "CN=Иванов Иван Иванович"
Удалить сертификат c “CN=Иванов Иван Иванович” из контейнера:
Удалить все сертификаты из хранилища КриптоПро:
$ certmgr -delete -all$ certmgr -delete -store uRoot
Удалить все сертификаты установленные в хранилище машины:
# certmgr -delete -store mRoot
Экспорт контейнера и сертификата на другую машину[править]
Если при создании контейнера он был помечен как экспортируемый (ключ -exportable), то его можно экспортировать на USB-диск:
$ csptest -keycopy -contsrc '\\.\HDIMAGE\test_export' -contdest '\\.\FLASH\test_new'CryptAcquireContext succeeded.HCRYPTPROV: 36965843
CryptAcquireContext succeeded.HCRYPTPROV: 37297363
Total: SYS: 0,100 sec USR: 0,200 sec UTC: 13,420 sec
[ErrorCode: 0x00000000]
При этом потребуется ввести пароль от контейнера ‘\\.\HDIMAGE\test_export’ и задать пароль на новый контейнер ‘\\.\FLASH\test_new’.
Примечание: Будьте внимательны при операциях импорта/экспорта контейнера с использованием токена:
необходимо будет предъявлять pin токена.
Просмотр списка контейнеров:
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11319 OS:Linux CPU:AMD64 FastCode:READY:AVX. AcquireContext: OK. HCRYPTPROV: 41622371 \\.\FLASH\test_new \\.\HDIMAGE\test_export \\.\HDIMAGE\test OK. Total: SYS: 0,030 sec USR: 0,060 sec UTC: 0,160 sec [ErrorCode: 0x00000000]
Экспортировать сертификат из локального хранилища в файл:
$ certmgr -export -dn 'CN=Ли Александр Сергеевич' -dest test.cer
Скопировать сертификат на USB-диск:
Экспорт контейнера с USB-диска на жесткий диск:
$ csptest -keycopy -contsrc '\\.\FLASH\test_new' -contdest '\\.\HDIMAGE\test_export'CryptAcquireContext succeeded.HCRYPTPROV: 35778003
CryptAcquireContext succeeded.HCRYPTPROV: 36125907
Total: SYS: 0,050 sec USR: 0,240 sec UTC: 19,390 sec
[ErrorCode: 0x00000000]
Примечание: Экспорт сертификата на жесткий диск необходимо выполнять под пользователем, который будет использовать данный контейнер для подписи.
Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище My:
Экспорт сертификатов на другую машину[править]
Закрытые ключи к сертификатам находятся в /var/opt/cprocsp/keys.
Для экспорта сертификатов необходимо:
- Перенести ключи из на нужную машину в тот же каталог.
- Экспортировать сертификаты (их, количество можно определить, выполнив: certmgr -list, в примере сертификатов 3):
- Перенести файлы сертификатов (1.cer, 2.cer, 3.cer) на нужную машину.
- На машине, куда переносятся сертификаты, просмотреть какие контейнеры есть (должны появится контейнеры с первой машины):
$ csptest -keyset -enum_cont -verifycontext -fqcn
- Связать сертификат и закрытый ключ:
$ certmgr -inst -file 1.cer -cont '\\.\HDIMAGE\container.name'
- Если закрытый ключ и сертификат не подходят друг к другу, будет выведена ошибка:
Cannot install certificate Public keys in certificate and container are not identical
- Если закрытого ключа нет, то просто поставить сертификат:
$ certmgr -inst -file 1.cer
Импорт персонального сертификата[править]
Вы можете импортировать собственный сертификат в локальный считыватель HDIMAGE.
Если у вас нет сертификата, самое время его создать:
- Создание через cert-sh-functions (требует установки пакета cert-sh-functions)
- Создание сертификатов PKCS12 (достаточно только пакета openssl)
Допустим, мы пошли по первому пути и создали сертификат web-server (делать это строго под правами root):
# . cert-sh-functions# ssl_generate 'web-server'
Сертификат по умолчанию будет лежать в /var/lib/ssl/certs/web-server.cert, а ключ — в /var/lib/ssl/private/web-server.key
Для импорта потребуется файл сертификата и закрытый ключ в контейнере PKCS#12.
Создадим для нашего ключа и сертификата необходимый контейнер:
openssl pkcs12 -export -in /var/lib/ssl/certs/web-server.cert -inkey /var/lib/ssl/private/web-server.pem -out web-server.p12
Примечание: При создании контейнера будет дважды запрошен пароль для экспорта. По соображениям безопасности вводимые символы не показываются. После ввода каждого пароля нажимайте Enter.
Проверка созданного контейнера (при запросе введите пароль, введённый в предыдущей команде):
Enter Import Password: MAC verified OK -----BEGIN CERTIFICATE----- -----BEGIN PRIVATE KEY-----
И сертификат и ключ попали в контейнер.
После генерации сертификата проверим наличие считывателя:
Nick name: FLASH Nick name: HDIMAGE
Для импорта сертификата в КриптоПро используйте программу certmgr. В нашем случае:
$ certmgr -inst -file web-server.p12 -cont HDIMAGE
Если Вам необходимо импортировать сертификат с токена:
certmgr -inst -cont '\\.\Aktiv Co. Rutoken S 00 00\le-fb25d25d-23e9-4723-ae4c-fe0c95f2fcc1'
Если контейнер защищен паролем используйте ключ -pin <пароль>
Инструменты КриптоПро — кроссплатформенный графический интерфейс (cptools)[править]
В версии КриптоПРО 5 появилась графическая утилита для работы с сертификатами — cptools.
Для использования cptools необходимо установить пакет cprocsp-cptools-gtk из скачанного архива:
# apt-get install cprocsp-cptools-gtk*
После этого её можно запустить из консоли:
С её помощью можно установить сертификат из токена в хранилище uMy:
Работа с сертификатами в token-manager[править]
token-manager предоставляет графический интерфейс управления ключевыми носителями и сертификатами. С помощью этой программы можно:
- просматривать подключенные ключевые носители (токены);
- изменять PIN-код ключевого носителя;
- устанавливать, просматривать и удалять сертификаты;
- просматривать и устанавливать лицензию КриптоПро.
Установка и запуск[править]
Установка пакета token-manager:
# apt-get install token-manager
Запустить token-manager можно:
- из командной строки:
$ python /usr/bin/token-manager.py
- в рабочей среде Mate: ▷ ▷ Ключевые носители и сертификаты;
- в рабочей среде KDE5: Меню запуска приложений ▷ ▷ Ключевые носители и сертификаты.
Проверка лицензии[править]
Проверить срок истечения лицензии КриптоПРО можно выбрав в меню token-manager пункт Операции ▷ Просмотр лицензии КриптоПро CSP:
Для установки другой лицензии КриптоПРО выберите в меню token-manager пункт Операции ▷ Ввод лицензии КриптоПро CSP:
Просмотр сертификатов[править]
Просмотреть список сертификатов в хранилище или на ключевом носителе, можно выбрав соответствующий носитель:
Для просмотра сертификата, необходимо выбрать сертификат и нажать кнопку «Просмотр»:
Для просмотра корневых сертификатов, необходимо выбрать в меню token-manager пункт Операции ▷ Просмотр корневых сертификатов.
Установка сертификата[править]
Чтобы установить сертификат с токена в локальное хранилище, необходимо выбрать контейнер на токене и нажать кнопку «Установить»:
Сертификат будет установлен в локальное хранилище сертификатов и будет связан с закрытым ключом на токене.
Чтобы установить сертификат в локальное хранилище из файла, необходимо выбрать «Личное хранилище сертификатов», нажать кнопку «Установить», выбрать файл сертификата и нажать кнопку «Открыть». Появится сообщение об успешном импорте сертификата:
Сертификат будет установлен в локальное хранилище сертификатов, но не будет связан ни с каким закрытым ключом. Этот сертификат можно использовать для проверки подписи.
Поддержка и помощь
Спасибо!
Наш менеджер уже увидел Ваше обращение и спешит помочь Вам как можно скорее!
В рабочее время (пн – пт с 9:00 до 18:00) наши менеджеры очень активны и общительны и с радостью ответят Вам в течение дня.
В остальное время – дожидайтесь ответа на следующий рабочий день.
А пока предлагаем вам:
Заказ обратного звонка
Плагин для Линукс
Чтобы корректно работать с электронной подписью в интернете, понадобится плагин для браузера и специальная утилита alien. Для этого требуется выполнить следующие шаги:
- Активировать alien — sudo apt install alien;
- Бесплатно скачать модуль Browser plug-in на сайте КриптоПро;
- Распаковать сохранённый архив — cades_linux_amd64.zip;
- Перейти в папку с файлами;
- Открыть Терминал через контекстное меню и задать команду для преобразования rpm в deb-пакеты — sudo alien -kci cprocsp-pki-cades_2.0.0-2_amd64.deb;
- После данных действий установка будет завершена, а подпись готова к работе.
Купить подходящую лицензию продукта КриптоПро для Linux рекомендуем в нашем интернет-магазине. Оставьте короткую заявку, для бесплатной консультации специалиста.
Установка КриптоПРО CSP в Linux
Описание процесса установки приведено на примере дистрибутива семейства Debian (x64).Некоторые команды могут потребовать запуска с sudo.Названия файлов и директорий могут отличаться из-за различий в версиях.
Загрузите КриптоПро CSP версии 4.0 для Вашей платформы и распакуйте архив:
tar -xzvf linux-amd64_deb.tgz
Для установки выполните команды:
sudo chmod 777 -R linux-amd64_deb/ sudo linux-amd64_deb/install.sh
Проверьте отсутствие cprocsp-rdr-gui:
dpkg -l | grep cprocsp-rdr
Установите дополнительно cprocsp-rdr-gui-gtk:
sudo dpkg -i linux-amd64_deb/cprocsp-rdr-gui-gtk-64_4.0.0-4_amd64.deb
Установите лицензионный ключ командой:
sudo /opt/cprocsp/sbin/amd64/cpconfig -license -set XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Дополнительная информация по установке
Часто задаваемые вопросы¶
В данном разделе содержатся ответы на часто задаваемые вопросы. Все рассмотренные вопросы содержат ответы по сути, без лишней теории. За разъяснениями и дополнительной информацией обращайтесь к предыдущим разделам данного руководства.
Как скопировать ключи с дискеты/флешки на HDIMAGE?
Скопируйте ключи(директорию с именем в формате 8.3) из корня дискеты или флешки в директорию /var/opt/cprocsp/keys/имя_пользователя
При этом необходимо проследить чтобы: — владельцем файлов был пользователь, в диретории с именем которого расположен контейнер(от его имени будет осуществляться работа с ключами); — чтобы на директорию с ключами были выставлены права, разрешаюшие владельцу всё, остальным ничего; — чтобы на файлы были выставлены права, разершающие владельцу по крайней мере чтение и запись, остальным ничего.
Как проверить, работоспособен ли контейнер с закрытыми ключами?
Открыть(проверить) контейнер можно утилитой csptest. Она находится в директории /opt/cprocsp/bin/ :
где имя считывателя: HDIMAGE, если используете жесткий диск для хранения ключей FLASH, если используете флешку FAT12_0, если используете дискету
Массовый перенос ключей и сертификатов CryptoPro с компьютера на компьютер
В интернете достаточно легко находится способ переноса контейнеров закрытых ключей КриптоПро через копирование нужной ветки реестра, где это все хранится. Я воспользуюсь именно этим способом. А вот с массовым переносом самих сертификатов у меня возникли затруднения и я не сразу нашел рабочий способ. Расскажу о нем тоже. Для дальнейшей работы нам надо узнать SID текущего пользователя, у которого мы будем копировать или переносить сертификаты с ключами. Для этого в командной строке выполните команду:
wmic useraccount where name='user' get sid
В данном случай user – имя учетной записи, для которой узнаем SID. Далее скопируем контейнеры закрытых ключей в файл. Для этого на компьютере открываем редактор реестра (regedit.exe) и переходим в ветку:
\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users\S-1-5-21-4126888996-1677807805-1843639151-1000\Keys
где S-1-5-21-4126888996-1677807805-1843639151-1000 – SID пользователя, у которого копируем сертификаты. Выбираем папку Keys и экспортируем ее. Этот путь актуален для 64-х битных систем – Windows 7, 8, 10. В 32-х битных путь может быть немного другой. Я специально не проверял, но поиском по реестру вы при желании найдете его.
Сохраняем ветку реестра в файл. В ней хранятся закрытые ключи. Теперь нам нужно скопировать сразу все сертификаты. В Windows 7, 8 и 10 они живут в директории – C:\Users\user\AppData\Roaming\Microsoft\SystemCertificates\My. Сохраняйте эту директорию. Для переноса ключей и сертификатов нам надо скопировать на другой компьютер сохраненную ветку реестра и директорию с сертификатами My.
После того, как перенесли файлы со старого компьютера на новый, открываем файл с веткой реестра в текстовом редакторе и меняем там SID пользователя со старого компьютера на SID пользователя нового компьютера. Можно прям в блокноте это сделать поиском с заменой.
После этого запускаем .reg файл и вносим данные из файла в реестр. Теперь скопируйте папку My с сертификатами в то же место в профиле нового пользователя. На этом перенос сертификатов и контейнеров закрытых ключей КриптоПро завершен. Можно проверять работу. Я не раз пользовался этим методом, на текущий момент он 100% рабочий. Написал статью, чтобы помочь остальным, так как сам не видел в интернете подробной и понятной с первого раза статьи на эту тему. Надеюсь, моя таковой получилась.
Доступ к считываетлям (Calais)¶
Иногда возникает проблема с доступом к считывателям смарт-карт. Она может быть связана с тем, что у текущего пользователя недостаточно прав на следующие ветки:
\\\\ \\\\\
Подробнее о настройке прав доступа читайте в разделе Права доступа (Разрешения).
Примечание
Может возникнуть ситуация, когда текущий пользователь системы даже не будет являться владельцем данных веток реестра, следовательно, у него не будет прав на них. В таком случае, необходимо сначала добавить текущего пользователя во владельцы этих веток, а затем проставить ему соответствующие права, как описано в разделе Права доступа (Разрешения) данного руководства.
Где хранятся ключи(закрытый ключ сертификата) в реестре? [1739]¶
Реестр может использоваться в качестве ключевого носителя, другими словами, в него можно скопировать Квалифицированную электронную подпись (КЭП). После копирования закрытые ключи будут находиться:
- для 32-битной ОС:
\\\\ \ \\
- для 64-битной ОС:
\\\ \ \\ \\
- В некоторых случаях сертификат попадает сюда:
\\\\ \\ \\\\\
Где SID (идентификатор пользователя) (англ. Security Identifier (SID)) — структура данных переменной длины, которая идентифицирует учетную запись пользователя, группы, домена или компьютера.
Узнать SID пользователя можно через командную строку («Пуск → Выполнить → cmd»), введя команду WHOAMI /USER
.
Рис. 23 – Узнать SID пользователя через командную строку
Совет
Чтобы скопировать текст из командной строки Windows, необходимо нажать правой кнопкой мыши на заголовок окна консоли и в меню «Свойства» на вкладке «Общие» включить опцию «Выделение мышью».
Ссылки[править]
- ЖТЯИ.00050-03 90 02-02. СКЗИ «КриптоПро CSP». Руководство администратора безопасности. Использование СКЗИ под управлением ОС Linux (из электронной документации по КриптоПро; доступно для скачивания с демонстрационной версией)
- ЖТЯИ.00050-03 90 07. КриптоПро CSP. Приложение командной строки
- Инструкция по настройке IFCPlugin (сайт госуслуг) для работы с КриптоПро
- ЭЦП
- Набор скриптов для подписания и проверки ЭЦП КриптоПро на Linux
Копирование сертификата
Шаг 1. Открытие программы КриптоПро
Чтобы открыть программу проделайте следующий путь:
Нажмите меню Пуск, затем перейдите в Программы ⇒ КриптоПро ⇒ КриптоПро CSP и включите вкладку Сервис.
В открытом окне Сервис нажмите кнопку Скопировать контейнер.
Шаг 2. Копирование контейнера закрытого ключа
После нажатия кнопки Скопировать контейнер, система отобразит окно Копирование контейнера закрытого ключа.
В открытом окне необходимо заполнить поле Имя ключевого контейнера.
Шаг 3. Ввод ключевого контейнера
Существует 3 способа, как заполнить поле Имя ключевого контейнера:
Выбрать из списка посредством нажатия кнопки Обзор
Поиск по сертификату ЭЦП
Кроме заполнения поля Имя ключевого контейнера, необходимо заполнить оставшиеся опции поиска:
После того, как все поля заполнены, нажмите кнопку Далее.
Если на доступ к закрытому ключу установлен пароль, то система попросит ввести его. Введите пароль и нажмите кнопку ОК.
Шаг 4. Ввод нового ключевого контейнера
Система вновь отобразит окно Копирование контейнера закрытого ключа, в котором необходимо ввести имя нового ключевого контейнера и установить переключатель Введенное имя задает ключевой контейнер в положение Пользователь или Компьютер, в зависимости от того, в каком хранилище требуется разместить скопированный контейнер.
После ввода нажмите кнопку Готово.
Шаг 5. Выбор носителя для скопированного контейнера
На Вашем экране появится окно, в котором необходимо выбрать носитель для скопированного контейнера.
Вставьте носитель (токен, флешка, дискета) в считыватель и нажмите кнопку ОК.
Шаг 6. Установка пароля
Система отобразит окно установки пароля на доступ к закрытому ключу.
Введите пароль, подтвердите его, при необходимости установите флажок Запомнить пароль.
Если данный флажок будет установлен, то пароль сохранится в специальном хранилище на локальном компьютере, и при обращении к закрытому ключу пароль будет автоматически считываться из этого хранилища, а не вводиться пользователем.
После ввода необходимых данных нажмите кнопку ОК. Средство криптозащиты информации «КриптоПро CSP» скопирует контейнер закрытого ключа.
Если у Вас остались вопросы, Вы можете заказать консультацию специалиста.
Источник
Файл masks. key
Содержит 32 байта маски ключа в формате Asn1, зашифрованного на ключе хранения pwd_key. Далее 12 байт «затравочной» информации для генерации ключа хранения pwd_key, если криптоконтейнер защищен паролем, то пароль также участвует в генерации ключа хранения.
Далее контрольная сумма (имитозащита) 4 байта. Контрольной информацией для простоты мы пользоваться не будем, общий контроль будет осуществляться путем генерации открытого ключа и сравнения первых 8 байт полученного ключа с соответствующим полем из файла header.key: