Как удалить криптопро на астра линукс

Обновлено: 04.07.2024

Пишу для себя, чтобы не забыть как делал. 95 % рабочее. На комментарии отвечаю, когда увижу.

суббота, 8 декабря 2018 г.

Astra Linux Орёл 2.12 установка КриптоПро

/
$ mkdir cades_linux_amd64
$ cd

/cades_linux_amd64
$ tar -zxf cades_linux_amd64.tar.gz
$ sudo alien *.rpm
$ sudo dpkg -i lsb-cprocsp-devel_*.deb cprocsp-pki-*.deb

Оригинальный контенер был без пинкода.

Если нужно добавить пинкод, копируем контейнер:

Или:
$ /opt/cprocsp/bin/amd64/csptest -keyset -enum -verifycontext -fqcn | iconv -f cp1251

Установить копированный контейнер:

$ /opt/cprocsp/bin/amd64/certmgr -inst -store uMy -cont '\\.\HDIMAGE\test'
Пример если нужно установить оригинальный контейнер:


Удалить:
$ /opt/cprocsp/bin/amd64/certmgr -delete

Для установки в uRoot админиских прав больше не нужно. Ради этого их с mRoot и разделили. Работает так: если ставить в uRoot - видно будет только текущему пользователю, даже если он root, но права не нужны и будет диалог с предупреждением. Если ставить в mRoot, то нужны права, видно будет всем и предупреждения не будет.

Просмотор личных сертификатов:

Установка головного сертификата удостверяющего центра (из сертификата Калуга-Астрал):
$ mkdir

/CAs $(/opt/cprocsp/bin/amd64/certmgr -list -store uMy | awk '/CA cert URL/ < print $5 >')
for cert in $(ls -1

/CAs/*.cer); do sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mRoot -file $cert; done

$ /opt/cprocsp/bin/amd64/certmgr -inst -cert -file 'Сертификат Головного удостоверяющего центра.cer' -store uRoot

$ /opt/cprocsp/bin/amd64/certmgr -inst -cert -file 'Сертификат Удостоверяющего центра Федерального казначейства.cer' -store uRoot

Удалить:
$ /opt/cprocsp/bin/amd64/certmgr -delete -store uRoot
$ /opt/cprocsp/bin/amd64/certmgr -delete -all -store uRoot

Проверка цепочек
$ /opt/cprocsp/bin/amd64/certmgr -list -store uMy
Смотрим:
CN='Фёдорова Галина Борисовна'

$ CP_PRINT_CHAIN_DETAIL=1 /opt/cprocsp/bin/amd64/cryptcp -copycert -dn CN='Фёдорова Галина Борисовна' -df

/t.cer
.
.
.
Certificate chains are checked.
Certificate's been copied.
[ReturnCode: 0]

Цепочки сертификатов проверены.
Копирование сертификатов завершено.
[ErrorCode: 0x00000000]


$ sudo apt install chromium
После установки закрыть и войти снова

$ unzip IFCPlugin-3.0.0-x86_64.deb.zip
$ sudo apt install libccid pcscd
$ sudo dpkg -i IFCPlugin-3.0.0-x86_64.deb

создаем симлинк для корректной работы связи расширения браузера с библиотекой установленного плагина

$ sudo ln -s /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts/ru.rtlabs.ifcplugin.json

Заходим в каталог куда скачали архив
$ unzip ifc.cfg.zip

Копируем конфигурационный файл

$ sudo cp ifc.cfg /etc/ifc.cfg

Перейти в меню - Дополнительные инструменты - Расширения и включить плагин

По информации разработчика, с ALT Linux совместимы следующие продукты КриптоПро:

  • КриптоПро CSP
  • КриптоПро JCP
  • КриптоПро HSM
  • КриптоПро TSP
  • КриптоПро OCSP
  • КриптоПро ЭЦП Browser plug-in
  • КриптоПро SSF
  • КриптоПро Stunnel
  • Браузер КриптоПро Fox
Примечание: В репозитории доступен пакет firefox-gost , аналогичный КриптоПро Fox, с патчем от КриптоПро.

Архив с программным обеспечением (КриптоПро CSP 4.0 R4 — сертифицированная версия, КриптоПро CSP 5.0 — несертифицированная) можно загрузить после предварительной регистрации:

Загрузка КриптоПро

Внимание! По умолчанию при скачивании с сайта КриптоПро выдаётся лицензия на три месяца

1. Установите пакет cryptopro-preinstall :

Этот пакет установит все требуемое для КриптоПро (включая инфраструктуру поддержки карт Рутокен S и Рутокен ЭЦП). Примечание: Пакет cryptopro-preinstall вытягивает зависимости libpangox-compat , opensc , pcsc-lite , pcsc-lite-rutokens , pcsc-lite-ccid , newt52 .


2. Распакуйте архив, скачанный с официального сайта КриптоПро:

Таблица 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 перейдите в папку с распакованным архивом:

Примечание: Для 32-битной версии вместо последнего пакета — lsb-cprocsp-rdr-4*
  • установите пакеты для поддержки токенов (Рутокен S и Рутокен ЭЦП):
Примечание: Если возникнут проблемы с отображением контейнеров на Рутокен S — удалите pcsc-lite-openct
  • установите пакет для поддержки токенов (JaCarta):
Примечание: Для установки cprocsp-rdr-jacarta может понадобиться предварительно удалить openct .
  • Для установки сертификатов Главного удостоверяющего центра:

Также можно выполнить установку КриптоПро, запустив ./install_gui.sh в распакованном каталоге и выбрав необходимые модули:

Установка пакетов КриптоПро

Примечания:

  • Для КриптоПро CSP 3.6 R2 потребуется установить пакет cprocsp-compat-altlinux-1.0.0-1.noarch.rpm
  • Для установки cprocsp-rdr-gui может понадобиться libXm.so.3 ( libopenmotif3 ) и для вывода кириллицы fonts-bitmap-cyr_rfx-iso8859-5 .
  • Для установки cprocsp-rdr-gui-gtk потребуется предварительно установить libpangox-compat .
  • В версии 4.0.0-alt5 пакета cryptopro-preinstall добавлены подпакеты:
    • cryptopro-preinstall-base для установки с cprocsp-compat-altlinux , «предоставляющим» lsb (в случае нежелательности «лишних» зависимостей вроде libqt3 ), и
    • cryptopro-preinstall-full для автоустановки зависимостей cprocsp-rdr-gui .
    Внимание! Пакеты КриптоПро после обновления утрачивают работоспособность, так что рекомендуется удалить все пакеты и установить их заново.

    Для обновления КриптоПро необходимо:

      Запомнить текущую конфигурацию: набор установленных пакетов:

    Утилиты КриптоПро расположены в директориях /opt/cprocsp/sbin/<название_архитектуры> и /opt/cprocsp/bin/<название_архитектуры> .

    Чтобы каждый раз не вводить полный путь к утилитам КриптоПро:

    • после установки пакета cryptopro-preinstall начните новый сеанс пользователя в консоли;
    Примечание: Не работает для суперпользователя.
    • выполните от имени пользователя, который будет запускать команды (будет действовать до закрытия терминала):
    Внимание! Если установлен пакет mono или mono4-devel , может быть конфликт по имени утилиты certmgr

    Проверить срок истечения лицензии можно командой (обратите внимание на строки Expires:):

    Примечание: Для версии КриптоПро CSP под Linux все лицензии считаются серверными, поэтому не смущайтесь строкой «License type: Server».


    Для установки другой лицензии выполните (под root):

    Примечание: Серийный номер следует вводить с соблюдением регистра символов.

    Проверить версию КриптоПро можно командой:

    Настройка устройств хранения (носителей) и считывания (считывателей) ключевой информации и датчиков случайных чисел.

    Примечание: Если не работает под обычным пользователем, то проверить правила polkit.

    Считыватели (readers) — устройства, предназначенные для чтения ключей. К считывателям относится считыватели дискет (FAT12), считыватели флеш-накопителей (FLASH), считыватели смарт-карт и токенов, считыватель образа дискеты на жестком диске (HDIMAGE) и др.

    Ключевые носители (media) являются местом хранения электронной подписи. В качестве носителя ключевой информации могут использоваться: защищенный флэш-накопитель (токен) (Рутокен, JaCarta, ESMART и др.), смарт-карта, флэш-накопитель, дискета.

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

    Встроенный в «КриптоПро CSP» датчик случайных чисел (далее ДСЧ) используется для генерации ключей.

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

    Примечание: Подробнее про работе с разными ключевыми носителями: Рутокен, JaCarta, ESMART

    Просмотр доступных (настроенных) считывателей:

    Инициализация считывателя HDIMAGE, если его нет в списке доступных считывателей (под правами root):

    Считыватель HDIMAGE размещается на /var/opt/cprocsp/keys/<имя пользователя>/ .

    Для работы со считывателем PC/SC требуется пакет cprocsp-rdr-pcsc. После подключения считывателя можно просмотреть список видимых считывателей (не зависимо от того, настроены ли они в КриптоПро как считыватели, зависит только от того, какие установлены драйверы для считывателей):

    Инициализация считывателя Aktiv Co. Rutoken S 00 00 (требуется, если считыватель есть в списке видимых считывателей и отсутствует в списке настроенных), в параметре -add указывается имя, которое было получено при просмотре видимых считывателей, в параметре -name — удобное для обращения к считывателю имя, например, Rutoken (под правами root):

    Современные аппаратные и программно-аппаратные хранилища ключей, такие как Рутокен ЭЦП или eSmart ГОСТ, поддерживаются через интерфейс PCSC. За реализацию этого интерфейса отвечает служба pcscd , которую необходимо запустить перед началом работы с соответствующими устройствами:

    вопросы

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

    Удаление стандартным способом

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

    • Откройте Панель управления.
    • Выберите Программы → Программы и компоненты (если включён просмотр по категориям, Удаление программы).
    • Выберите в списке КриптоПро CSP и нажмите Удалить.

    Если при удалении возникают ошибки или повторная установка невозможна, удалите программу через специальную утилиту (cleaner).

    Удаление с помощью утилиты CSPClean КриптоПро

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

    Чтобы удалить КриптоПро с помощью CSPClean, нужно сначала выполнить удаление стандартным способом через Панель управления, затем перезагрузить ПК. Чтобы выполнить очистку компьютера от неудаляемых элементов, нужно запустить файл cspclean.exe, затем снова перезагрузить ПК и повторно запустить CSPClean.

    В каких случаях CSPClean использовать не следует

    Утилита CSPClean подходит не для всех ситуаций, когда необходимо удалить КриптоПро. Её не рекомендуется использовать, если:

    • на компьютер установлены компоненты КриптоПро УЦ;
    • на ПК установлено приложение КриптоАРМ.

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


    Поговорим немного про средства электронной подписи (ЭП) с использованием отечественных ГОСТ-алгоритмов в Linux. Несмотря на то, что различные средства и интерфейсы по работе с ЭП в Linux развиты даже лучше, чем в Windows, использовать их не так просто.

    Такое положение вещей сохранялось последние несколько лет. Но с конца 2016 года ситуация изменилась в лучшую сторону. Появилось сразу два продукта, которые позволяют работать с электронной подписью по стандарту ГОСТ и шифрованием без использования консоли – это Rosa Crypto Tool и Trusted eSign. Оба эти продукта для работы с криптографией используют «КриптоПро CSP» для Linux. Поэтому, перед тем как обратиться к описанию самих продуктов, поговорим немного про «КриптоПро CSP».

    «КриптоПро CSP» под Linux — неоднозначный продукт. С одной стороны, это одно из самых распространенных и мощных сертифицированных средств по работе с криптографией как в Windows, так и в Linux. С другой стороны, для простого человека пользоватся его интерфейсами даже в Windows не так-то просто. А в Linux доступен только консольный интерфейс. Надеюсь, что компания «КриптоПро» в курсе этой ситуации, и в будущем нас ждут новые красивые и удобные интерфейсы, как для Windows, так и для Linux.

    Для настройки нам понадобится:

    • Любимый дистрибутив Linux. Я использовал Ubuntu Linux 16.04 LTS и ROSA Fresh GNOME R8;
    • Сертифицированная версия КриптоПро CSP 4.0 R2 для Windows, UNIX и macOS;
    • Рутокен ЭЦП 2.0.

    Настройка «КриптоПро» CSP

    Несмотря на то, что есть несколько неплохих статей по настройке «КриптоПро CSP» под Linux (например, тут или тут), я опишу здесь свой вариант. Основная причина в том, что большинство инструкций написаны для «Крипто Про CSP» версии 3.x. А современная версия «КриптоПро CSP» 4.0 не является 100% совместимой с 3.x. Дополнительная причина – всегда приятно иметь полную инструкцию по настройке в одном месте, а не переключаться с одного окна на другое.

    Приступаем к настройке.

    Распаковываем «КриптоПро CSP» для Linux:


    Далее у нас есть 2 варианта – автоматическая установка и установка вручную. Автоматическая установка запускается командой:


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

    Если что-то пошло не так, или вы по тем или иным причинам хотите использовать установку в ручном режиме, то вам необходимо выполнить:


    Для установки пакетов в ROSA используйте urpmi, вместо dpkg -i.

    Устанавливаем лицензию для «КриптоПро CSP» для Linux и проверяем, что все работает нормально:


    Мы должны получить что-то вроде:

    Настройка работы с Рутокен ЭЦП 2.0

    Сделаем небольшое отступление. Для работы с электронной подписью и шифрованием нам не обойтись без ключевых пар и сертификатов. Надежное хранение закрытых ключей – один из основных факторов безопасности. А более надежных средств хранения, чем токен или смарт-карта, человечество пока не придумало. Я буду использовать Рутокен ЭЦП 2.0, который имеет сертификат ФСБ и поддерживает работу как с новыми, так и со старыми ГОСТами.


    Для работы с токенами в ОС Linux есть масса различных средств и драйверов. Для описания всех этих средств понадобится отдельная статья. Поэтому я не буду подробно описывать, как это работает, и почему нам нужны именно эти пакеты.

    Устанавливаем пакеты для работы с Рутокен ЭЦП 2.0:


    Нам также необходимо установить пакеты КриптоПро CSP для поддержки работы с токенами:

    Получаем тестовый сертификат

    Перед тем как перейти непосредственно к работе с подписью, надо сгенерировать ключевую пару и создать сертификат электронной подписи. Если у вас уже есть Рутокен с контейнером «КриптоПро», то эту часть можно смело пропустить.


    Проверим, что сертификат получен успешно.

    Чтобы убедиться, что «КриптоПро CSP» успешно увидел токен, выполним:


    Мы должны получить что-то вроде:


    Теперь проверяем, что сертификат на токене видится успешно:


    Записываем в хранилище сертификатов КриптоПро информацию об этом сертификате:


    Проверим, что сертификат успешно сохранился в хранилище:


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

    Подпись средствами «КриптоПро CSP»

    В составе «КриптоПро CSP» есть утилита csptestf, позволяющая выполнять различные криптографические операции. Как я уже писал выше, у этой утилиты есть 2 недостатка:

    • Отсутствие хорошей документации;
    • Отсутствие графического интерфейса.


    Здесь,
    my — параметр, в котором надо указать часть Common Name сертификата для подписи;
    detached — позволяет создать открепленную подпись;
    alg GOST94_256 — задает алгоритм хэширования, который будет использоваться при создании подписи.

    Более подробную информацию о возможных параметрах вы можете получить, выполнив команду:


    Такой интерфейс отлично подходит для подготовленного пользователя или для автоматизации операций в скриптах.

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

    Rosa Crypto Tool

    Как следует из названия, это утилита для работы с электронной подписью и шифрованием для дистрибутива ROSA Linux. В данный момент утилита доступна в репозиториях Rosa Linux и Alt Linux.

    Эта утилита разрабатывается одним человеком – Михаилом Вознесенским. У нее простой, но удобный интерфейс. На данный момент утилита находится в активной разработке – с ноября 2016 года мне удалось протестировать три версии. Последняя версия, доступная на момент написание статьи — 0.2.2. Сейчас утилита поддерживает работу только с «КриптоПро CSP» для Linux, однако в ближайшее время будет добавлена поддержка других криптопровайдеров.

    Что внутри? Утилита написана на Python с использованием PyQt4 для графического интерфейса.

    Установить ее можно, использовав «Управление программами» в Rosa Linux.


    Вставляем токен и запускаем утилиту.


    Видим, что токен определился успешно и был найден наш сертификат.

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

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


    Нажимаем «OK» и получаем информацию о том, что файл был подписан успешно.


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

    По сравнению с использованием «КриптоПро CSP» из консоли:

    + На порядок проще использовать;
    — Отсутствуют различные параметры подписи.

    Исходный код программы доступен в публичном репозитории на ABF:
    abf.io/uxteam/rosa-crypto-tool-devel
    Система контроля версий, которую использует «НТЦ ИТ РОСА», интегрирована в сборочную среду и базируется на Git. Можно вполне использовать любой клиент git.

    Надеюсь, разработчики других отечественных дистрибутивов Linux, таких как Astra Linux, GosLinux и другие добавят в свои дистрибутивы пакеты с rosa-crypto-tool.

    Trusted eSign

    Второй продукт, про который мы поговорим, это Trusted eSign от компании “Цифровые технологии”. Она известна на российском рынке ИБ как разработчик средства по работе с подписью и шифрованием для ОС Windows – «КриптоАРМ».

    Главное, не путать этот продукт с Trusted.eSign – web-сервисом по работе с подписью этой же компании.

    К сожалению, продукт пока доступен только в виде deb пакета для 64-битных систем. С чем связано такое ограничение, непонятно. Будем надеяться, что в ближайшее время компания выпустит и rpm пакет, а также версии для 32-битных дистрибутивов Linux.

    Скачиваем с официального сайта deb-пакет и устанавливаем командой:


    Запускаем Trusted eSign.


    Сразу видно, что разработка не обошлась без дизайнера. Никакого сарказма. Все действия делаются просто и логично, а внешний вид радует глаз. К сожалению, большинство средств и программ в области ИБ от российских разработчиков разработаны без привлечения UX-специалистов и дизайнеров и заставляют своих пользователей страдать и плакать кровавыми слезами. Создается впечатление, что другими средства информационной безопасности просто не могут быть. “Цифровые технологии” опровергают это. Плата за красоту и удобство – необходимость платить за лицензию.

    Но вернемся к подписи.

    Выбираем раздел “Электронная подпись”:


    Выбираем «Сертификат для подписи»:


    Выбираем файлы для подписи и жмем «Подписать»:


    Что под капотом? Процитирую с сайта: “Приложение создано на современном движке Electron, для вызова криптографических операций применяется библиотека OpenSSL. Совместимо с СКЗИ “КриптоПро CSP 4.0” и поддерживает все криптографические алгоритмы, реализованные в нем.” Для тех, кто ещё не в курсе Electron — это фреймворк для создания десктопных приложений на платформе node.js.

    Сравним Trusted eSign с Rosa crypto tool:

    + Более удобный и красивый интерфейс
    — Платная лицензия

    Резюме

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

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

    Такое развитие не может не радовать, особенно когда это происходит под Linux.

    КриптоПро на debian ubuntu

    Скопировать в корень дискеты или флэшки сертификат и приватный ключ (из каталога 999996.000 , 999996 - название (alias) контейнера):

    Выполнить команду по копированию ключа с флэшки на диск, ключ попадет в пользовательское хранилище My .

    Необходимо выполнять под пользователем, который будет использовать данный контейнер для подписи.

    С жесткого диска

    Скопировать приватный ключ в хранилище (контейнер), где <username> - имя пользователя linux:

    Поставить «минимальные» права:

    Узнать реальное название контейнера:

    Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище My :

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

    Установить сертификат УЦ из-под пользователя root командой:

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

    PrivateKey Link

    Если выводится PrivateKey Link: Yes. Container: HDIMAGE\\999996.000\D7BB , то есть и сертификат, и приватный ключ, а если выводится PrivateKey Link: No - связи нет, и использовать такой контейнер для подписи не удастся.

    Добавление тестового сертификата

    Добавление работает только на той же машине, и в тот же контейнер, где был сформированы следующий запрос на добавление:

    Ввести пароль на контейнер test123 .

    Ввести пароль на контейнер. По-умолчанию: 12345678

    Удаление сертификата

    Проверка сертификата

    Подписание пустого файла (размер 0) проходит успешно, но при просмотре сертификатов этого файла выдается ошибка:

    Просмотр всех атрибутов сертификата

    В cryptcp нет необходимых инструментов для получения всех атрибутов сертификата. Поэтому следует использовать openssl , но настроив его.

    Получаем SHA 1 хеши:

    В цикле извлекаем сертификаты:

    Настройка openssl для поддержки ГОСТ:

    В файл /etc/ssl/openssl.cnf

    Экспорт сертификатов на другую машину

    Закрытые ключи к сертификатам находятся тут: /var/opt/cprocsp/keys . Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.

    Экспорт самих сертификатов (если их 14):

    Переносим эти файлы на машину и смотрим, какие контейнеры есть:

    И как обычно, связываем сертификат и закрытый ключ:

    Если закрытый ключ и сертификат не подходят друг к другу, будет выведена ошибка:

    Если все успешно:


    Если нет закрытого ключа, то просто ставим сертификат:

    Подписание документа ЭЦП

    Пример создания ЭЦП (по SHA1 Hash):

    [ReturnCode: x] Описание Возвращаемый код завершения в баше $?
    0 успешно 0
    0x8010006b Введен неправильный PIN 107
    0x2000012d Сертификат не найден 45
    0x20000065 Не удалось открыть файл 101

    Проверка подписи ЭЦП

    Для верифицирования сертификатов нужен сертификат удостоверяющего центра и актуальный список отзыва сертификатов, либо настроенный для этого revocation provider.

    Корневой сертификат УЦ, список отзыва сертификата является одним из реквизитов самого сертификата.

    Проверка конкретной подписи из локального хранилища по его хешу:

    Проверить, взяв сертификат из file1.sig , подпись файла file2.sig . Практически, надо использовать один и тот же файл:

    [ReturnCode: x] Текст Описание Возвращаемый код завершения в баше $?
    0 Успешно 0
    0x80091004 Invalid cryptographic message type Неправильный формат файла 4
    0x80091010 The streamed cryptographic message is not ready to return data Пустой файл 16

    Получение исходного файла

    Будет ругаться на сертификат (так как не будет проверки), но подпись удалит. Вариант с проверкой:

    Читайте также: