1С, Linux
Создание ГОСТ-контейнера и подписи для ЕГИСЗ на Linux
Author
NMitin
Date Published

Инструкция: Создание ГОСТ-контейнера и подписи для ЕГИСЗ на Linux (MX Linux 23.5)
Удаление старых контейнеров (если были)
Крипто-Про устанавливается в /opt/cprocsp
Прверяем наличие контейнеров :
1/opt/cprocsp/bin/amd64/csptestf -keyset -enum_containers
Если нужно удалить, удаляем командой:
1/opt/cprocsp/bin/amd64/csptestf -keyset -deletekeyset -container <Имя>
Создание контейнера с ключом (ОБЯЗАТЕЛЬНО ОТ ПОЛЬЗОВАТЕЛЯ, не sudo!)
1/opt/cprocsp/bin/amd64/csptestf -keyset -newkeyset \2-container MyEGISZKey \3-provtype 80 \4-provname "Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider" \5-keytype signature
Создание самоподписанного сертификата
1/opt/cprocsp/bin/amd64/csptestf -keyset -makecert \2-container MyEGISZKey \3-provtype 80 \4-provname "Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider"
Привязка сертификата к хранилищу
ШАГ 1. Экспорт сертификата из контейнера в файл:
1/opt/cprocsp/bin/amd64/csptestf -keyset -expcert MyEGISZKey.cer \2-container MyEGISZKey \3-keytype signature
ШАГ 2. Привязка через GUI:
Открыть "КриптоПро CSP" → Контейнеры → MyEGISZKey → кнопка "Установить сертификат"
Сертификат сразу будет установлен в хранилище пользователя (uMy). Выбор вручную не
требуется.
ИЛИ (если без GUI не работает):
1/opt/cprocsp/bin/amd64/certmgr -install -store uMy -file MyEGISZKey.cer2/opt/cprocsp/bin/amd64/csptestf -keyset -impcert MyEGISZKey.cer \3-container MyEGISZKey -keytype signature
Проверка
1/opt/cprocsp/bin/amd64/certmgr -list -store uMy
→ Должна появиться строка: "Ссылка на ключ: ...MyEGISZKey"
Подписание файла
1/opt/cprocsp/bin/amd64/cryptcp -sign -uMy -dn "MyEGISZKey" \2-pin 12345678 -detached -fext .sig /путь/к/файлу.cda
Кодировка подписи в base64
1base64 -w 0 /путь/к/файлу.cda.sig > /путь/к/файлу.cda.sig.b64
Готово. Подпись соответствует требованиям ЕГИСЗ.