openssl

Инструмент командной строки для использования криптографической библиотеки OpenSSL

Синтаксис:

openssl команда [опции_команды] [аргументы_команды]

openssl [list-standard-commands |

list-message-digest-commands |

list-cipher-commands |

list-cipher-algorithms |

list-message-digest-algorithms |

list-public-key-algorithms]

openssl no-cmd [произвольные_опции]

Поддерживаемые платформы:

QNX Neutrino

Опции:

Нет.


Описание:

OpenSSL представляет собой криптографический инструментарий, реализующий сетевые протоколы Secure Sockets Layer (уровень защищенных сокетов) (SSL v2/v3) и Transport Layer Security (безопасность на транспортном уровне) (TLS v1) и соответствующие криптографические стандарты.

Программа openssl является инструментом командной строки для использования различных криптографических функций криптографической библиотеки OpenSSL из командного интерпретатора. Возможности применения:
Обзор команд

Программа openssl предоставляет большое разнообразие команд (см. команда в обзоре выше), каждая из которых изобилует опциями и агрументами (опции_команды и аргументы_команды).

Псевдокоманды list-standard-commands, list-message-digest-commands и list-cipher-commands выводят список (одна запись на строку) имен всех стандартных команд, команд профилей сообщений или команд шифрования соответственно, которые предусмотрены в текущей версии утилиты openssl.

Псевдокоманды list-cipher-algorithms and list-message-digest-algorithms выводят список всех имен алгоритмов шифрования и профилей сообщений, по одной записи на строку. Списки псевдонимов выводятся следующим образом:

от => до

Псевдокоманда list-public-key-algorithms выводит списки всех поддерживаемых алгоритмов открытого ключа.

Псевдокоманда no-команда проверяет доступность команды с указанным именем. Если команда с именем команда не существует, то утилита openssl выводит 0 (успешно) и no-команда; в противном случае она выводит 1 и команда. В обоих случаях, вывод направляется в стандартный поток вывода stdout, а вывод в стандартный поток ошибок stderr отсутствует. Дополнительные аргументы командной строки всегда игнорируются. Поскольку для каждого алгоритма предусмотрена команда с тем же именем, существует простой способ проверки сценариями командного интерпретатора доступности алгоритмов в программе openssl. (Псевдокоманда no-команда не может обнаружить псевдокоманды, например quit, list-...-commands и саму no-команда.)

Стандартные команды

asn1parse

Анализ последовательности ASN.1.

ca

Управление центром сертификации (Certificate Authority; CA).

ciphers

Определение описания набора алгоритмов шифрования.

crl

Управление списком аннулированных сертификатов (Certificate Revocation List; CRL).

crl2pkcs7

Преобразование CRL в PKCS#7.

dgst

Вычисление профиля сообщения.

dh

Управление параметрами алгоритма Диффи-Хеллмана; считается устаревшей в связи с использованием dhparam.

dsa

Управление данными DSA.

dsaparam

Создание и управление параметрами DSA. Заменена на genpkey и pkeyparam.

enc

Кодирование с помощью алгоритмов шифрования.

errstr

Преобразование номера ошибки в строку ошибки.

dhparam

Создание и управление параметрами алгоритма Диффи-Хеллмана. Заменена на genpkey и pkeyparam.

gendh

Создание параметров алгоритма Диффи-Хеллмана; считается устаревшей в связи с использованием dhparam.

gendsa

Создание секретного ключа DSA из параметров. Заменена на genpkey и pkey.

genpkey

Создание секретного ключа и параметров.

genrsa

Создание секретного ключа RSA. Заменена на genpkey.

ocsp

Протокол онлайн-проверки статуса сертификата.

passwd

Создание хешированных паролей.

pkcs12

Управление данными PKCS#12.

pkcs7

Управление данными PKCS#7.

pkey

Управление открытыми и секретными ключами.

pkeyutl

Утилита криптографических алгоритмов открытого ключа.

pkeyparam

Управление параметрами алгоритма открытого ключа.

rand

Создание псевдослучайных байтов.

req

Управление запросом на подпись сертификата (Certificate Signing Request; CSR) PKCS#10 X.509.

rsa

Управление ключами RSA.

rsautl

Утилита RSA для подписи, проверки, шифрования и дешифрования. Заменена на pkeyutl.

s_client

Эта команда реализует универсальный клиент SSL/TLS, который может установить прозрачное соединение с удаленным сервером по SSL/TLS. Она предназначена исключительно для тестирования и предоставляет только простейшие функциональные возможности интерфейса, но внутренне использует большую часть функциональных возможностей библиотеки ssl OpenSSL.

s_server

Эта команда реализует универсальный клиент SSL/TLS, который принимает соединения от удаленных серверов по SSL/TLS. Она предназначена исключительно для тестирования и предоставляет только простейшие функциональные возможности интерфейса, но внутренне использует большую часть функциональных возможностей библиотеки ssl OpenSSL. Эта команда предоставляет свой собственный ориентированный на командную строку протокол для тестирования функций SSL, а также простую функцию HTTP-отклика для эмуляции web-сервера с поддержкой SSL/TLS.

s_time

Таймер соединения SSL.

sess_id

Управление данными сеанса SSL.

smime

Обработка почты S/MIME.

speed

Измерение скорости алгоритма.

ts

Инструмент полномочий метки времени (клиент/сервер).

verify

Проверка сертификата X.509.

version

Информация о версии OpenSSL.

x509


Управление данными сертификата X.509.

Команды профилей сообщений

md2

Алгоритм MD2.

md5

Алгоритм MD5.

mdc2

Алгоритм MDC2.

rmd160

Алгоритм RMD-160.

sha

Алгоритм SHA.

sha1

Алгоритм SHA-1.

sha224

Алгоритм SHA-224.

sha256

Алгоритм SHA-256.

sha384

Алгоритм SHA-384.

sha512

Алгоритм SHA-512.

Команды кодирования и шифрования

base64

Кодирование Base64.

bf, bf-cbc, bf-cfb, bf-ecb, bf- ofb

Алгоритм Blowfish.

cast, cast-cbc

Алгоритм CAST.

cast5-cbc, cast5-cfb, cast5-ecb, cast5-ofb

Алгоритм CAST5.

des, des-cbc, des-cfb, des-ecb, des- ede, des-ede-cbc, des-ede-cfb, des-ede-ofb, des- ofb

Алгоритм DES.

des3, desx, des-ede3, des-ede3-cbc, des- ede3-cfb, des-ede3-ofb

Алгоритм Triple-DES.

idea, idea-cbc, idea-cfb, idea-ecb, idea- ofb

Алгоритм IDEA.

rc2, rc2-cbc, rc2-cfb, rc2-ecb, rc2- ofb

Алгоритм RC2.

rc4

Алгоритм RC4.

rc5, rc5-cbc, rc5-cfb, rc5-ecb, rc5- ofb

Алгоритм RC5.

Аргументы пароля

Несколько команд принимают аргументы пароля, как правило, с использованием -passin и -passout для паролей ввода и вывода соответственно. Они позволяют получить пароль из множества источников. Обе эти опции принимают единственный аргумент, формат которого описан ниже. Если аргумент пароля не предоставлен и требуется пароль, то выводится приглашение на ввод пароля, который, как правило, будет считан из текущего терминала с выключенным выводом.

pass:пароль

Фактический пароль – пароль. Так как пароль является видимым для утилит, эту форму следует использовать только в тех случаях, когда безопасность не важна.

env:переменная

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

file:путевое_имя

Первая строка значения путевое_имя является паролем. Если для аргументов -passin и - passout указан один и тот же аргумент путевое_имя, то первая строка используется в качестве пароля ввода, а следующая строка – в качестве пароля вывода. путевое_имя не обязательно должно ссылаться на обычный файл; например, оно может ссылаться на устройство или именованный канал.

fd:номер

Считывать пароль из заданного номера дескриптора файла. Эту опцию можно использовать, например, для передачи данных через канал.

stdin


Считывать пароль из стандартного потока ввода.

Статус завершения:

0

Успешно.

1

Возникла ошибка.