Меню Рубрики

Установка криптопро csp линукс

Работа с КриптоПро CSP

Назначение

Криптопровайдер КриптоПро CSP предназначен для:

  • авторизации и обеспечения юридической значимости электронных документов при обмене ими между пользователями, посредством использования процедур формирования и проверки электронной подписи (ЭП) в соответствии с отечественными стандартами ГОСТ Р 34.10-2001 / ГОСТ Р 34.10-2012 (с использованием ГОСТ Р 34.11-94 / ГОСТ Р 34.11-2012);
  • обеспечения конфиденциальности и контроля целостности информации посредством ее шифрования и имитозащиты, в соответствии с ГОСТ 28147-89;
  • обеспечения аутентичности, конфиденциальности и имитозащиты соединений по протоколу TLS;
  • контроля целостности системного и прикладного программного обеспечения для его защиты от несанкционированных изменений и нарушений правильности функционирования;
  • управления ключевыми элементами системы в соответствии с регламентом средств защиты.

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

Архив с программным обеспечением (КриптоПро CSP) можно загрузить c официального сайта www.cryptopro.ru, предварительно зарегистрировавшись на сайте.

Для ОС Astra Linux следует загрузить пакет:

Пробный период использования КриптоПро CSP составляет 3 месяца, по истечении которых необходимо приобрести полноценную лицензию.

К моменту написания статьи, была использована сертифицированная версия ПО «КриптоПро» «4.0 R4».

Для примера был проделан следующий алгоритм действий:

1) Загрузка архива с сертифицированной версией ПО «КриптоПро»:

Название полученного файла: «linux-amd64_deb.tgz».

2) Открыть «Терминал Fly» (alt+T)

3) Разархивируем скаченный архив в терминале командой:

tar -zxf linux-amd64_deb.tgz

5) Перейдем в директорию с ПО

cd linux-amd64_deb

6) выполним установку ПО с помощью запуска скрипта «install.sh» или «instal_gui.sh» командой:

sudo ./install_gui.sh

* Выбрать необходимые модули, библиотеки.

Описание необходимых пакетов КриптоПро

Пакет Описание
Базовые пакеты:
cprocsp-curl Библиотека libcurl с реализацией шифрования по ГОСТ
lsb-cprocsp-base Основной пакет КриптоПро CSP
lsb-cprocsp-capilite Интерфейс CAPILite и утилиты
lsb-cprocsp-kc1 Провайдер криптографической службы KC1
lsb-cprocsp-rdr Поддержка ридеров и RNG
Дополнительные пакеты:
cprocsp-rdr-gui-gtk Графический интерфейс для диалоговых операций
cprocsp-rdr-rutoken Поддержка карт Рутокен
cprocsp-rdr-jacarta Поддержка карт JaCarta
cprocsp-rdr-pcsc Компоненты PC/SC для ридеров КриптоПро CSP
lsb-cprocsp-pkcs11 Поддержка PKCS11

Для просмотра всех установленых пакетов Криптопро CSP, следует ввести команду:

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

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

Установка дополнительных пакетов с модулем поддержки для токена

Для корректной работы с токеном/смарт-картой обязательно требуется установить:

библиотека libccid, libgost-astra , пакеты pcscd

Пакеты с модулем поддержки для:

После установки пакетов с модулем поддержки токена следует перезагрузить службу pcscd:

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

/opt/cprocsp/sbin/amd64/cpconfig -license -view

Установка лицензии

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

Носители и контейнеры

Идентификация токена

Чтобы узнать модель подключенного токена, следует ввести команду:

/opt/cprocsp/bin/amd64/csptest -card -enum -v -v

После чего система выдаст информацию о подключенном устройстве:

Проверить наличие носителей с контейнерами можно с помощью команды:
/opt/cprocsp/bin/amd64/csptest -keyset -verifycontext -enum -unique

в формате FQCN, отображается имя носителя:

В этом случае будет выведен список носителей с контейнерами в следующем формате:

Где \\.\HDIMAGE — локальный носитель, \\.\HDIMAGE\TestCont123 — название контейнера, \\.\Aktiv Rutoken ECP 00 00 — название носителя (токена).

Информация о контейнерах

Для просмотра подробной информации о контейнерах воспользуйтесь командой:

/opt/cprocsp/bin/amd64/csptestf -keyset -container ‘ИМЯ’ -info

/opt/cprocsp/bin/amd64/csptestf -keyset -container ‘Shuhrat’ -info
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11233 OS:Linux CPU:AMD64 FastCode:READY:AVX.

AcquireContext: OK. HCRYPTPROV: 8981043
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP
Container name: «Shuhrat»
Signature key is available. HCRYPTKEY: 0x8f3b03
Exchange key is available. HCRYPTKEY: 0x8f9883
Symmetric key is not available.
UEC key is not available.

CSP algorithms info:
Type:Encrypt Name:’GOST 28147-89′(14) Long:’GOST 28147-89′(14)
DefaultLen:256 MinLen:256 MaxLen:256 Prot:0 Algid:00026142

Type:Hash Name:’GR 34.11-2012 256′(18) Long:’GOST R 34.11-2012 256′(22)
DefaultLen:256 MinLen:256 MaxLen:256 Prot:0 Algid:00032801

Type:Signature Name:’GR 34.10-2012 256′(18) Long:’GOST R 34.10-2012 256′(22)
DefaultLen:512 MinLen:512 MaxLen:512 Prot:0 Algid:00011849

Type:Exchange Name:’DH 34.10-2012 256′(18) Long:’GOST R 34.10-2012 256 DH'(25)
DefaultLen:512 MinLen:512 MaxLen:512 Prot:0 Algid:00043590

Type:Exchange Name:’DH 34.10-2012 256′(18) Long:’GOST R 34.10-2012 256 DH'(25)
DefaultLen:512 MinLen:512 MaxLen:512 Prot:0 Algid:00043591

Type:Hash Name:’GOST 28147-89 MAC'(18) Long:’GOST 28147-89 MAC'(18)
DefaultLen:32 MinLen:8 MaxLen:32 Prot:0 Algid:00032799

Type:Encrypt Name:’GR 34.12 64 M'(14) Long:’GOST R 34.12-2015 64 Magma'(27)
DefaultLen:256 MinLen:256 MaxLen:256 Prot:0 Algid:00026160

Type:Encrypt Name:’GR 34.12 128 K'(15) Long:’GOST R 34.12-2015 128 Kuznyechik'(33)
DefaultLen:256 MinLen:256 MaxLen:256 Prot:0 Algid:00026161

Type:Hash Name:’GR 34.13 64 M MAC'(18) Long:’GOST R 34.13-2015 64 Magma MAC'(31)
DefaultLen:64 MinLen:8 MaxLen:64 Prot:0 Algid:00032828

Type:Hash Name:’GR 34.13 128 K MAC'(19) Long:’GOST R 34.13-2015 128 Kuznyechik MAC'(37)
DefaultLen:128 MinLen:8 MaxLen:128 Prot:0 Algid:00032829

Type:Hash Name:’GR34.11-12 256 HMAC'(20) Long:’GOST R 34.11-2012 256 HMAC'(27)
DefaultLen:256 MinLen:256 MaxLen:256 Prot:0 Algid:00032820

Status:
Provider handles used: 6
Provider handles max: 1048576
CPU Usage: 6 %
CPU Usage by CSP: 0 %
Measurement interval: 119 ms

Virtual memory used: 15281652 KB
Virtual memory used by CSP: 116572 KB
Free virtual memory: 26053680 KB
Total virtual memory: 41335332 KB

Physical memory used: 14602360 KB
Physical memory used by CSP: 12576 KB
Free physical memory: 5857712 KB
Total physical memory: 20460072 KB

Key pair info:
HCRYPTKEY: 0x8f3b03
Alg > AlgClass: ALG_CLASS_SIGNATURE
AlgType: ALG_TYPE_GR3410
AlgSID: 73
KP_HASHOID:
1.2.643.7.1.1.2.2 (ГОСТ Р 34.11-2012 256 бит)
KP_DHOID:
1.2.643.2.2.35.1 (ГОСТ Р 34.10 256 бит, параметры по умолчанию)
KP_SIGNATUREOID:
1.2.643.2.2.35.1 (ГОСТ Р 34.10 256 бит, параметры по умолчанию)
Permissions:
CRYPT_READ
CRYPT_WRITE
CRYPT_IMPORT_KEY
0x800
0x2000
0x20000
0x100000
KP_CERTIFICATE:
Not set.

Key pair info:
HCRYPTKEY: 0x8f9883
Alg > AlgClass: ALG_CLASS_KEY_EXCHANGE
AlgType: ALG_TYPE_DH
AlgSID: 70
KP_HASHOID:
1.2.643.7.1.1.2.2 (ГОСТ Р 34.11-2012 256 бит)
KP_DHOID:
1.2.643.2.2.36.0 (ГОСТ Р 34.10 256 бит, параметры обмена по умолчанию)
KP_SIGNATUREOID:
1.2.643.2.2.36.0 (ГОСТ Р 34.10 256 бит, параметры обмена по умолчанию)
Permissions:
CRYPT_READ
CRYPT_WRITE
CRYPT_IMPORT_KEY
0x800
0x10000
0x20000
0x100000
KP_CERTIFICATE:
Subject: INN=007814508921, E=user@astralinux.ru, C=RU, CN=Махмадиев Шухрат, SN=Махмадиев
Valid : 18.10.2018 12:07:24 — 18.01.2019 12:17:24 (UTC)
Issuer : E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2

Читайте также:  Установка amd ahci driver

Container version: 2
Carrier flags:
This reader is removable.
This reader supports unique carrier names.
This carrier does not have embedded cryptography.
Keys in container:
signature key
exchange key
Extensions (maxLength: 1435):
ParamLen: 46
OID: 1.2.643.2.2.37.3.9
Critical: FALSE
Size: 19
Decoded size: 24
PrivKey: Not specified — 18.01.2020 07:31:07 (UTC)

ParamLen: 47
OID: 1.2.643.2.2.37.3.10
Critical: FALSE
Size: 19
Decoded size: 24
PrivKey: Not specified — 18.01.2020 07:31:12 (UTC)
Total: SYS: 0,020 sec USR: 0,180 sec UTC: 2,180 sec
[ErrorCode: 0x00000000]

Следует учесть про PIN-коды в контейнерах:

* если само устройство осуществляет аутентификацию (как к примеру токен), то PIN при создании не создаётся, а предъявляется, так как он — свойство устройства. Как следствие: у всех контейнеров на токене одинаковый PIN.

* если устройство не аутентифицирует (как HDIMAGE), то при создании контейнера, создаётся PIN-код. Следствие: у всех контейнеров, PIN-код на HDIAMGE может быть разным.

Проверка работы контейнера

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

/opt/cprocsp/bin/amd64/csptestf -keyset -container ИМЯ -check

/opt/cprocsp/bin/amd64/csptestf -keyset -container Shuhrat -check

CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11233 OS:Linux CPU:AMD64 FastCode:READY:AVX.

AcquireContext: OK. HCRYPTPROV: 28224051

GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP

Signature key is available. HCRYPTKEY: 0x1b53883

Exchange key is available. HCRYPTKEY: 0x1b57e23

Symmetric key is not available.

License: Cert without license

Check verify signature on private key passed.

Check verify signature on public key passed.

Check import passed (import restricted).

Check verify signature on private key passed.

Check verify signature on public key passed.

Certificate in container matches AT_KEYEXCHANGE key.

PrivKey: Not specified — 18.01.2020 07:31:07 (UTC)

PrivKey: Not specified — 18.01.2020 07:31:12 (UTC)

Total: SYS: 0,030 sec USR: 0,140 sec UTC: 2,430 sec

Удаление контейнера

Для удаления контейнера следует воспользоваться командой:

/opt/cprocsp/bin/amd64/csptestf -passwd -cont ‘\\.\Aktiv Rutoken ECP 00 00\TestCont’ -deletek

Копирование контейнера

Для примера скопируем контейнер из локального хранилища в хранилище Рутокена ЕЦП:

csptestf -keycopy -contsrc ‘\\.\HDIMAGE\Контейнер_оригинал’ -contdest ‘\\.\Aktiv Rutoken ECP 00 00\Контейнер_копия’

Смена пароля на контейнер (снятие паролей с контейнера)

/opt/cprocsp/bin/amd64/csptestf -passwd -cont ‘\\.\Aktiv Rutoken ECP 00 00\TestContainer’ -change ‘новый_пароль’ -passwd ‘старый_пароль

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

/opt/cprocsp/bin/amd64/csptestf -passwd -cont ‘\\.\Aktiv Rutoken ECP 00 00\TestContainer’ -change ‘Ваш_новый_пароль’

Менеджер сертификатов КриптоПРО в Linux

4 категории сертификатов

Они делятся на четыре категории:

* личные сертификаты (ставятся в хранилище umy, где u = User, my — имя хранилища) — как правило для них есть закрытый ключ (и они требуют особой установки, чтобы в хранилище появилась ссылка на этот закрытый ключ). В результате с их использованием можно, например, подписать файл.

* корневые сертификаты — краеугольнй камень безопасности, так как цепочки доверия строятся от них, то их надо добавлять в хранилища осознанно и внимательно (ставятся в uroot, также администратор может поставить их в mroot, где m = Machine, такие сертификаты будут видны в read only в root-хранилищах всех пользователей)

* промежуточные сертификаты — появляются, когда есть промежуточные УЦ (головной -> промежуточный -> пользовательский). Прямое доверие к ним не требуется (ставятся в uca, также администратор может поставить их в mca). В это же хранилище ставятся CRL-и. Обычно точки получения промежуточных сертификатов и CRL-ей правильно указаны в пользовательских сертификатах, поэтому они автоматом выкачиваются и попадают в хранилище ucache. В общем про них можно ничего особо не знать и ничего не делать.

* сертификаты партнёров по общению, чтобы проверять их подписи и зашифровывать для них сообщения. Ставятся либо в umy (это беспорядок, но популярный), либо в uAddressBook

Установка

Пример установки личного сертификата, выданного УЦ Министерства Обороны Российской Федерации

В опции -pattern >>> ‘rutoken’ может быть другим в зависимости от подключенного токена.

1) Имена хранилищ указаны в формате certmgr, у cryptcp похожий формат: -mroot и -uAddressBook

2) Из под учетной записи пользователя ставится в uca, из под учетной записи администратора ставить в mca:

3) В опции -pattern можно указать пустые чтобы установить все сертификаты в uMy. Пример:

4) В случае, если личный сертификат извлечен, следует изпользовать опцию -file :

certmgr -inst -file cert.cer -store uMy

5) Хранилища пользователей хранятся в /var/opt/cprocsp/users

Просмотр

Для просмотра выше установленных сертификатов можно воспользоваться :

Удаление

Удаление сертификата из хранилища КриптоПро:

certmgr -delete 1 (номер сертификата)

certmgr -del -all (удаление всех сертификатов)

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

Закрытые ключи к сертификатам находятся тут: /var/opt/cprocsp/keys .

Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.

/opt/cprocsp/bin/amd64/certmgr -export -dest cert.cer

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

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

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

Проверка цепочки сертификатов

Для примера: чтобы проверить цепочку сертификатов, можно скопировать персональный сертификат в файл:

Читайте также:  Установка круиза на педаль

/opt/cprocsp/bin/amd64/cryptcp -copycert -dn CN=Имя_вашего_сертификата -df /temp/сертификат.cer

Можно указать другое поле сертификата: CN, E, SN, OGRN, SNILS и тд.

Из вывода следует, что у нас отсутствует некий сертификат в цепочке сертификатов. Можно запустить вышеуказанную команду в режиме debug(отладки):

В нашем примере, из логов можно сделать вывод, что нам надо установить сертификат УЦ МО с CN=Министерство обороны Российской Федерации:

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

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

Подпись можно делать двумя способами:

* attached (присоединённая), тогда результирующий файл — это CMS-сообщение, внутрь которого упакованы данные и атрубуты (типа подписи). Формат сообщения соответствует международному стандарту, поэтому извлекать данные оттуда можно любыми утилитами, типа cryptcp / csptest / openssl / certutil (на windows).

* detached (отсоединённая), тогда результирующий файл — это CMS-сообщение БЕЗ исходных данных, но с атрибутами (типа подписи). В этом случае для проверки надо «принести» исходный файл. Разумеется он остаётся неизменным и его можно смотреть cat-ом

Про CMS-сообщения, есть хорошая статья на Хабре

источник

Как я настраивал новые утилиты по работе с электронной подписью в Linux

Поговорим немного про средства электронной подписи (ЭП) с использованием отечественных ГОСТ-алгоритмов в 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 с официального сайта КриптоПро — www.cryptopro.ru/downloads

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Воспользуемся тестовым УЦ компании «КриптоПро» по адресу — https://www.cryptopro.ru/certsrv/
Создаем запрос на сертификат с параметрами по умолчанию.

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

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

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

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

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

Читайте также:  Установка крана 2 дюйма

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

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

Подпись средствами «КриптоПро 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-сервисом по работе с подписью этой же компании.

Найти продукт на сайтах компании “Цифровые технологии” непросто. Небольшое описание есть в магазине http://www.cryptoarm.ru/shop/trusted_esign, продукт также можно скачать в разделе «Центр загрузки» на сайте trusted.ru — https://trusted.ru/support/downloads/?product=133

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

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

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

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

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

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

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

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

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

Резюме

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

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

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

источник