...
Возможные компоненты идентификатора пути:
Компонент | Описание | ||
---|---|---|---|
manufacturer | ID производителя токена | ||
model | Модель токена | ||
serial | Серийный номер токена | ||
token | Метка токена( поле "label") | ||
object | Имя объекта(CKA_LABEL) | ||
id | Идентификатор объекта
|
Пример идентификатора ключевой пары на токене:
...
|
Описание параметров:
Параметр | Описание |
---|
‑algorithm | Алгоритм шифрования |
‑pkeyopt | Настройки алгоритма (размер ключа, тип эллиптической кривой, и т.д.). Задает для параметра алгоритма Может быть использован несколько раз, если у алгоритма есть несколько изменяемых параметров. Например:
|
‑out | Название файла, в который будет записана ключевая пара. По умолчанию создается в том же каталоге, откуда была вызвана команда. Чтобы сохранить файл в другой каталог, укажите в параметре
|
Генерация ключевой пары ГОСТ в файл
...
|
Значения параметров:
Параметр | Возможные значения |
---|
‑algorithm |
|
‑pkeyopt |
Параметры кривых, соответствующие значениям, описаны в Приложении 1. |
Генерация ключевой пары ECDSA в файл
...
|
Значения параметров:
Параметр | Возможные значения |
---|
‑algorithm |
|
‑pkeyopt |
|
Генерация ключевой пары RSA в файл
...
|
Значения параметров:
Параметр | Возможные значения |
---|
‑algorithm |
|
‑pkeyopt |
|
Генерация ключевой пары на Рутокене
...
Описание параметров:
Параметр | Описание | ||
---|---|---|---|
--‑‑module | Модуль или библиотека PKCS #11, которая будет использована для генерации ключевой пары | ||
--‑‑login, - ‑l | Параметр используется, чтобы потребовать аутентификацию на токене перед выполнением операции. Параметр --login не обязателен, если используется параметр --pin | ||
--‑‑pin, - ‑‑p | PIN-код, который будет использован для подтверждения генерации ключевой пары. Использование параметра --pin автоматически включает параметр --login | ||
--‑‑keypairgen, - ‑k | Тип операции (генерация новой ключевой пары) | ||
--‑‑key-‑type | Тип и параметры алгоритма шифрования (размер ключа, параметры эллиптической кривой, и т.д.). | ||
--‑‑id, - ‑d | Идентификатор объекта (CKA_ID) в виде двузначных номеров символов в hex из таблицы ASCII.
| ||
--‑‑usage-‑derive | Параметр указывает на то, что на сгенерированном ключе можно вырабатывать общий симметричный ключ, который может использоваться, например, для расшифрования CMS-сообщений. Если шифрование сообщений на генерируемой ключевой паре не планируется, этот параметр можно не использовать. |
...
|
Значения параметров:
Параметр | Возможные значения |
---|
‑‑module | Для Windows:
Для Linux:
|
‑‑key |
‑type |
Более подробно значения описаны в Приложении 1. |
ГОСТ-2012
Tip |
---|
Собирайте ветку pkcs11-tool с поддержкой ГОСТ-2012 или используйте релиз OpenSC 0.20.0 или новее. |
...
|
Значения параметров:
Параметр | Возможные значения |
---|
‑‑module | Для Windows:
Для Linux:
|
‑‑key |
‑type | Для алгоритма
Для алгоритма
Более подробно значения описаны в Приложении 1. |
Генерация ключевой пары ECDSA
...
Code Block |
---|
pkcs11-tool --module /путь/к/библиотеке/rtPKCS11ECP --login --pin 12345678 --keypairgen --key-type EC:secp256r1 --id 3132 --usage-derive |
Значения параметров:
Параметр | Возможные значения |
---|
‑‑module | Для Windows:
Для Linux:
|
‑‑key-type | Для Рутокен ЭЦП 3.0 3110 и 3220:
Для Рутокен ЭЦП 3.0 3120:
|
Генерация ключевой пары RSA
...
Code Block |
---|
pkcs11-tool --module /путь/к/библиотеке/rtPKCS11ECP --login --pin 12345678 --keypairgen --key-type RSA:2048 --id 3132 |
Значения параметров:
Параметр | Возможные значения |
---|
‑‑module | Для Windows:
Для Linux:
|
‑‑key |
‑type |
Для Рутокен ЭЦП 2.0:
Для Рутокен ЭЦП 3.0:
|
Просмотр объектов на токене
...
openssl cms -encrypt -binary -<cipher> -in data_to_encrypt -out encrypted_cms -outform DER|PEM|SMIME respondent.cer |
Описание параметров:
Параметр | Описание |
---|
‑encrypt | Тип операции (зашифрование) |
‑binary | По умолчанию, входное сообщение конвертируется в канонический формат, который использует CR и LF в качестве знака перевода строки (в соответствии со по спецификацией S/MIME). Параметр |
‑<cipher> | Алгоритм шифрования. Возможные значения зависят от типа ключа. Для ключей ГОСТ и rtengine версии 0.7:
Для ключей ГОСТ и rtengine версии 0.7 и выше:
Для RSA и ECDSA ключей:
|
‑in | Входное сообщение, которое нужно зашифровать |
‑out | Название файла, в который будет сохранено зашифрованное сообщение |
‑outform | Формат CMS-структуры. Значение по умолчанию: SMIME |
respondent.cer | Cертификат адресата, для которого шифруется сообщение |
Расшифрование на стороне адресата
...
openssl s_server -key filename|uri [-keyform format] [-engine id] -cert infile -Verify int -CAfile file -accept val -WWW -purpose purpose -4 |
Описание параметров:
Параметр | Описание |
---|
‑key | Название файла или URI закрытого ключа. Если параметр не задан, будет использован файл сертификата |
‑keyform | Формат файла закрытого ключа. Значение по умолчанию: PEM |
‑engine | Модуль для работы с криптографическими алгоритмами. Задается, если задан параметр |
‑cert | Путь к сертификату |
‑Verify | Глубина проверки цепочки сертификатов |
‑CAfile | Путь к доверенному сертификату |
‑accept | TCP-порт, который будет прослушиваться в ожидании запросов. Значение по умолчанию: 4433 |
‑WWW | Эмуляция простого веб-сервера |
‑purpose | Назначение сертификата. Возможные значения:
|
‑4 | Использовать только IPv4 |
Примеры команд:
Code Block | ||||
---|---|---|---|---|
| ||||
openssl s_server -key demoCA/private/cakey.pem -cert demoCA/cacert.pem -Verify 7 -CAfile demoCA/cacert.pem -accept 44330 -WWW -purpose any -4 |
...
openssl s_client -key filename|uri [-keyform format] [-engine id] -cert filename -host hostname -port port |
Описание параметров:
Параметр | Описание |
---|
‑key | Название файла или URI закрытого ключа. Если параметр не задан, будет использован файл сертификата |
‑keyform | Формат файла закрытого ключа. Значение по умолчанию: PEM |
‑engine | Модуль для работы с криптографическими алгоритмами. Задается, если задан параметр |
‑cert | Путь к сертификату |
‑host | Адрес сервера, с которым нужно установить соединение |
‑port | Порт сервера, с которым нужно установить соединение |
Примеры команд:
Code Block | ||||
---|---|---|---|---|
| ||||
openssl s_client -key privatekey.pem -cert cert.cer -host 127.0.0.1 -port 44330 |
...
Таблица значений -pkeyopt для OpenSSL
ГОСТ 34.10-2001 | ||
---|---|---|
Алгоритм | OID парамсета | Допустимое значение аргумента |
| 1.2.643.2.2.35.1 |
|
1.2.643.2.2.35.2 |
| |
1.2.643.2.2.35.3 |
| |
1.2.643.2.2.36.0 |
| |
1.2.643.2.2.36.1 |
| |
ГОСТ 34.10-2012-256 | ||
Алгоритм | OID парамсета | Допустимое значение аргумента |
| 1.2.643.7.1.2.1.1.1 |
|
1.2.643.7.1.2.1.1.2 |
| |
1.2.643.7.1.2.1.1.3 |
| |
1.2.643.7.1.2.1.1.4 |
| |
1.2.643.2.2.35.1 | id-GostR3410-2001-CryptoPro-A-ParamSet | |
1.2.643.2.2.35.2 | id-GostR3410-2001-CryptoPro-B-ParamSet | |
1.2.643.2.2.35.3 | id-GostR3410-2001-CryptoPro-C-ParamSet | |
1.2.643.2.2.36.0 | id-GostR3410-2001-CryptoPro-XchA-ParamSet | |
1.2.643.2.2.36.1 | id-GostR3410-2001-CryptoPro-XchB-ParamSet | |
ГОСТ 34.10-2012-512 | ||
Алгоритм | OID парамсета | Допустимое значение аргумента |
| 1.2.643.7.1.2.1.2.1 |
|
1.2.643.7.1.2.1.2.2 |
| |
1.2.643.7.1.2.1.2.3 |
|
Таблица значений --key-type для pkcs11-tool
...