Evmctl: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
<b>evmctl</b> - программа для создания и проверки цифровых подписей, а также для добавления ключей в набор ключей ядра. Распространяется по лицензии GPL.
<b>evmctl</b> - программа для создания и проверки цифровых подписей для IMA/EVM, а также для добавления ключей в набор ключей ядра. Распространяется по лицензии GPL2.0+.
{{Памятка|ГОСТ алгоритмы поддерживаются в ima-evm-utils с версии v1.2 (2019-07-24), поддержка ГОСТ алгоритмов в ядре Линукс — хэш по ГОСТ 34.11 с версии 5.0 (2019-03-03), ЭЦП по ГОСТ 34.10 с версии 5.2 (2019-07-07).}}


== Установка ==
== Установка ==
Строка 5: Строка 6:
Установить пакет <i>ima-evm-utils</i>
Установить пакет <i>ima-evm-utils</i>
<source>apt-get install ima-evm-utils</source>
<source>apt-get install ima-evm-utils</source>
Для создания RSA-ключей также потребуется программа <i>openssl</i>
Для создания ключей также потребуется программа <i>openssl</i>
<source>apt-get install openssl</source>
<source>apt-get install openssl</source>


== Использование ==
== Использование ==


Описание <i>ima-evm-utils</i> находится в файле <code>/usr/share/doc/ima-evm-utils-1.0/README</code>.
Описание <i>ima-evm-utils</i> находится в файле <code>/usr/share/doc/ima-evm-utils-1.0/README</code>, а так же в <code>man evmctl</code>.


=== Простой вариант использования ima-evm-utils ===
=== Простой вариант использования ima-evm-utils ===
Импорт RSA-ключа, подпись файла с помощью этого ключа и проверка подписи файла:<br>
Импорт RSA-ключа, подпись файла с помощью этого ключа и проверка подписи файла:<br>
#Создание RSA-ключей и копирование их в каталог <code>/etc/keys</code>, в которой при подписи файлов (п.3) по-умолчанию ищутся ключи<source>openssl genrsa -out privkey_evm.pem 1024
#Создание RSA-ключей (для подписей типа v1) и копирование их в каталог <code>/etc/keys</code>, в котором находятся ключи используемые по-умолчанию <source>openssl genrsa -out privkey_evm.pem 1024
openssl rsa -pubout -in privkey_evm.pem -out pubkey_evm.pem
openssl rsa -pubout -in privkey_evm.pem -out pubkey_evm.pem
mkdir /etc/keys
mkdir /etc/keys
cp {pubkey_evm.pem,privkey_evm.pem} /etc/keys</source>
cp {pubkey_evm.pem,privkey_evm.pem} /etc/keys</source>
#Импорт созданного публичного ключа<source>evmctl import --rsa /etc/keys/pubkey_evm.pem $evm_id</source>
#Импорт созданного публичного ключа в набор ключей ядра (keyring): <source>evmctl import --rsa /etc/keys/pubkey_evm.pem $evm_id</source>
#Подпись файла созданным и помещённым в каталог <code>/etc/keys</code> ключом<source>evmctl sign --imasig --rsa <название файла></source>
#IMA + EVM подпись (типа v1) произвольного файла ключом <code>/etc/keys/privkey_evm.pem</code>: <source>evmctl sign --imasig --rsa <название файла></source>
#Проверка подписи<source>evmctl verify <название файла></source>В случае соответствия подписи будет выдано сообщение - <code>Verification is OK</code>.
#Проверка EVM подписи (IMA не проверяется) по публичному ключу <code>/etc/keys/pubkey_evm.pem</code>: <source>evmctl verify <название файла></source>В случае соответствия подписи будет выдано сообщение - <code>Verification is OK</code>.


== Ссылки ==
== Ссылки ==

Версия от 20:48, 14 сентября 2019

evmctl - программа для создания и проверки цифровых подписей для IMA/EVM, а также для добавления ключей в набор ключей ядра. Распространяется по лицензии GPL2.0+.

Памятка: ГОСТ алгоритмы поддерживаются в ima-evm-utils с версии v1.2 (2019-07-24), поддержка ГОСТ алгоритмов в ядре Линукс — хэш по ГОСТ 34.11 с версии 5.0 (2019-03-03), ЭЦП по ГОСТ 34.10 с версии 5.2 (2019-07-07).

Установка

Установить пакет ima-evm-utils

apt-get install ima-evm-utils

Для создания ключей также потребуется программа openssl

apt-get install openssl

Использование

Описание ima-evm-utils находится в файле /usr/share/doc/ima-evm-utils-1.0/README, а так же в man evmctl.

Простой вариант использования ima-evm-utils

Импорт RSA-ключа, подпись файла с помощью этого ключа и проверка подписи файла:

  1. Создание RSA-ключей (для подписей типа v1) и копирование их в каталог /etc/keys, в котором находятся ключи используемые по-умолчанию
    openssl genrsa -out privkey_evm.pem 1024
    openssl rsa -pubout -in privkey_evm.pem -out pubkey_evm.pem
    mkdir /etc/keys
    cp {pubkey_evm.pem,privkey_evm.pem} /etc/keys
  2. Импорт созданного публичного ключа в набор ключей ядра (keyring):
    evmctl import --rsa /etc/keys/pubkey_evm.pem $evm_id
  3. IMA + EVM подпись (типа v1) произвольного файла ключом /etc/keys/privkey_evm.pem:
    evmctl sign --imasig --rsa <название файла>
  4. Проверка EVM подписи (IMA не проверяется) по публичному ключу /etc/keys/pubkey_evm.pem:
    evmctl verify <название файла>
    В случае соответствия подписи будет выдано сообщение - Verification is OK.

Ссылки

Страница проекта на sourceforge.net