OPENSSL(1SSL)

NAZWA
openssl - narzędzia wiersza poleceń do biblioteki OpenSSL

SKŁADNIA
openssl polecenie [ opcje_polecenia ] [ argumenty_polecenia ]

openssl [ list-standard-commands | list-message-digest-commands | list-cipher-commands | list-cipher-algorithms | list-message-digest-algorithms | list-public-key-algorithms]

openssl no-XXX [ dowolne opcje ]

OPIS
OpenSSL to zestaw narzędzi kryptograficznych implementujący protokoły sieciowe Secure Sockets Layer (SSL v2/v3) i Transport Layer Security (TLS v1) oraz wymagane przez nie standardy kryptograficzne.

Program openssl to narzędzie wiersza poleceń przeznaczone do używania różnych funkcji kryptograficznych biblioteki crypto OpenSSL z poziomu powłoki. Można go używać do:

 o Tworzenia i zarządzania kluczami prywatnymi, publicznymi i ich parametrami
 o Operacji kryptograficznych na kluczach publicznych
 o Wystawiania certyfikatów X.509, CSR oraz CRL
 o Obliczania skrótów wiadomości
 o Szyfrowania i deszyfrowania
 o Testowania klientów i serwerów SSL/TLS
 o Obsługi poczty z podpisem S/MIME lub zaszyfrowanej
 o Generowania i weryfikowania żądań Time Stamp

PODSUMOWANIE POLECEŃ
Program openssl dostarcza wielu różnych poleceń (polecenie w rozdziale SKŁADNIA powyżej), z których każde ma mnóstwo opcji i argumentów (opcje_polecenia i argumenty_polecenia w rozdziale SKŁADNIA).

Pseudopolecenia list-standard-commands, list-message-digest-commands oraz list-cipher-commands wypisują listę nazw (po jednym elemencie w wierszu) odpowiednio: wszystkich standardowych poleceń, poleceń skrótu wiadomości lub poleceń szyfrowania dostępnych w bieżącej aplikacji openssl.

Pseudopolecenia list-cipher-algorithms oraz list-message-digest-algorithms wyświetlają wszystkie algorytmy szyfrowania i funkcji skrótu, po jednym wpisie w linii. Aliasy są wyświetlane jako:

 z => do

Pseudopolecenie list-public-key-algorithms wyświetla wszystkie obsługiwane algorytmy klucza publicznego.

Pseudopolecenie no-XXX sprawdza obecność polecenia o podanej nazwie. Jeśli XXX nie jest dostępne, zwraca 0 (kod powodzenia) i wypisuje no-XXX; w przeciwnym razie zwraca 1 i wypisuje XXX. W obydwu przypadkach efekty są kierowane na stdout i nic nie pojawia się na stderr. Dodatkowe argumenty wiersza poleceń są zawsze ignorowane. Ponieważ każdy szyfr jest wywoływany przez polecenie o takiej samej nazwie jak on sam, łatwo sprawdzić dostępność szyfrów w openssl z poziomu powłoki. (no-XXX nie potrafi wykrywać pseudopoleceń takich jak quit, list-...-commands, czy samego no-XXX.)

  POLECENIA STANDARDOWE

asn1parse
    Analiza składni sekwencji ASN.1.

ca  Zarządzanie ośrodkami certyfikacji (CA).

ciphers
    Opis zestawu dostępnych szyfrów.

cms Narzędzie CMS (Cryptographic Message Syntax).

crl Zarządzanie listą unieważnionych certyfikatów (CRL).

crl2pkcs7
    Konwersja z CRL do PKCS#7.

dgst
    Obliczanie skrótu wiadomości.

dh  Zarządzanie parametrami Diffie-Hellmana. Przedawnione przez dhparam.

dhparam
    Tworzenie i zarządzanie parametrami Diffie-Hellmana. Zastąpione przez genpkey i pkeyparam.

dsa Zarządzanie danymi DSA.

dsaparam
    Tworzenie i zmienianie DSA. Zastąpione przez genpkey i pkeyparam.

ec  Procesowanie klucza EC (Elliptic curve)

ecparam
    Tworzenie i zmienianie parametru EC.

enc Szyfrowanie.

engine
    Informacja o silnikach (modułach ładowalnych) i zarządzanie nimi.

errstr
    Konwersja numeru błędu na komunikat błędu.

gendh
    Tworzenie parametrów Diffie-Hellmana. Przedawnione przez dhparam.

gendsa
    Tworzenie prywatnego klucza DSA na podstawie parametrów. Zastąpione przez genpkey i pkey.

genpkey
    Tworzenie kluczy prywatnych lub parametrów.

genrsa
    Tworzenie klucza prywatnego RSA. Zastąpione przez genpkey.

nseq
    Tworzenie lub sprawdzanie sekwencji certyfikatów nestscape.

ocsp
    Narzędzie użytkowe protokołu stanu certyfikatu

passwd
    Generowanie skrótu hasła.

pkcs12
    Zarządzanie danymi PKCS#12.

pkcs7
    Zarządzanie danymi w formacie PKCS#7.

pkey
    Zarządzanie kluczami publicznymi i prywatnymi

pkeyparam
    Zarządzanie parametrami algorytmu klucza publicznego.

pkeyutl
    Narzędzie użytkowe operacji algorytmu kryptograficznego klucza publicznego.

rand
    Tworzenie pseudolosowych bajtów.

req Zarządzanie żądaniami podpisu certyfikatu PKCS#10 X.509 (CSR).

rsa Zarządzanie kluczem RSA.

rsautl
    Narzędzie do podpisywania, weryfikowania, szyfrowania i deszyfrowania RSA. Zastąpione przez pkeyutl.

s_client
    Implementacja podstawowego klienta SSL/TLS mogącego nawiązywać przeźroczyste połączenia z odległym serwerem na SSL/TLS. Służy jedynie do testowania i dostarcza tylko podstawowej funkcjonalności interfejsu, ale wewnętrznie korzysta z niemal pełnych możliwości biblioteki OpenSSL ssl.

s_server
    Implementacja podstawowego serwera SSL/TLS przyjmującego połączenia od odległych klientów obsługujących SSL/TLS. Służy jedynie do testowania i dostarcza tylko podstawowej funkcjonalności interfejsu, ale wewnętrznie korzysta z niemal pełnych możliwości biblioteki OpenSSL ssl. Zawiera zarówno własny protokół wiersza poleceń do testowania funkcji SSL, jak i emuluje prosty serwer sieciowy SSL/TLS oparty na HTTP.

s_time
    Licznik czasu połączenia SSL.

sess_id
    Zarządzanie danymi sesji SSL.

smime
    Przetwarzanie poczty S/MIME.

speed
    Mierzenie szybkości algorytmu.

spkac
    Narzędzie wypisywania i generowania SPKAC.

ts  Narzędzie Time Stamping Authorit (klient i serwer).

verify
    Weryfikacja certyfikatu X.509.

version
    Informacja o wersji OpenSSL.

x509
    Zarządzanie certyfikatami X.509.

  POLECENIA SKRÓTU WIADOMOŚCI

md2 Skrót MD2

md5 Skrót MD5

mdc2
    Skrót MDC2

rmd160
    Skrót RMD-160

sha Skrót SHA

sha1
    Skrót SHA-1

sha224
    Skrót SHA-224

sha256
    Skrót SHA-256

sha384
    Skrót SHA-384

sha512
    Skrót SHA-512

  POLECENIA KODOWANIA I SZYFROWANIA

base64
    Kodowanie Base64

bf bf-cbc bf-cfb bf-ecb bf-ofb
    Szyfr Blowfish

cast cast-cbc
    Szyfr CAST

cast5-cbc cast5-cfb cast5-ecb cast5-ofb
    Szyfr CAST5

des des-cbc des-cfb des-ecb des-ede des-ede-cbc des-ede-cfb des-ede-ofb des-ofb
    Szyfr DES

des3 desx des-ede3 des-ede3-cbc des-ede3-cfb des-ede3-ofb
    Szyfr Triple-DES

idea idea-cbc idea-cfb idea-ecb idea-ofb
    Szyfr IDEA

rc2 rc2-cbc rc2-cfb rc2-ecb rc2-ofb
    Szyfr RC2

rc4 Szyfr RC4

rc5 rc5-cbc rc5-cfb rc5-ecb rc5-ofb
    Szyfr RC5

ARGUMENTY HASŁA
Niektóre polecenia przyjmują argumenty hasła, zazwyczaj przy pomocy odpowiednio -passin i -passout dla haseł wchodzących i wychodzących. Pozwala to przyjmować hasła z rozmaitych źródeł. Obie te opcje pobierają pojedynczy argument w formacie opisanym poniżej. Jeżeli wymagane hasło nie zostało podane, użytkownik jest monitowany o wpisanie go. Zwykle zostanie ono wczytane z bieżącego terminalu z wyłączonym wyświetlaniem.

pass:hasło
    właściwe hasło to hasło. Ponieważ jest ono widoczne dla aplikacji takich jak na przykład "ps" w Uniksie, tej formy należy używać tylko wtedy, kiedy nie zależy nam na bezpieczeństwie.

env:zmienna
    pobranie hasła ze zmiennej środowiskowej zmienna. Ponieważ środowisko innych procesów jest widzialne na niektórych platformach (na przykład przez "ps" w niektórych Uniksach) należy ostrożnie korzystać z tej opcji.

file:ścieżka
    pierwszy wiersz ścieżki stanowi hasło. Jeżeli ta sama nazwa ścieżki jest dołączona do argumentów -passin oraz -passout to pierwszy wiersz zostanie użyty w charakterze hasła wejściowego a następny w charakterze hasła wyjściowego. ścieżka nie musi się odnosić do zwykłego pliku: może się na przykład odnosić do urządzenia lub nazwanego potoku.

fd:numer
    czytanie hasła z deskryptora pliku numer. Można tego używać na przykład do wysyłania danych przez potok.

stdin
    czytanie hasła ze standardowego wejścia.

ZOBACZ TAKŻE
asn1parse(1), ca(1), config(5), crl(1), crl2pkcs7(1), dgst(1), dhparam(1), dsa(1), dsaparam(1), enc(1), gendsa(1), genpkey(1), genrsa(1), nseq(1), openssl(1), passwd(1), pkcs12(1), pkcs7(1), pkcs8(1), rand(1), req(1), rsa(1), rsautl(1), s_client(1), s_server(1), s_time(1), smime(1), spkac(1), verify(1), version(1), x509(1), crypto(3), ssl(3), x509v3_config(5)

HISTORIA
Strona podręcznika systemowego openssl(1) pojawiła się w OpenSSL 0.9.2. Pseudopolecenia list-XXX-commands dodano w OpenSSL 0.9.3; pseudopolecenia list-XXX-algorithms zostały dodane w OpenSSL 1.0.0; pseudopolecenia no-XXX zostały dodane w OpenSSL 0.9.5a. O dostępności pozostałych poleceń można przeczytać na ich własnych stronach podręcznika.

TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Daniel Koć (PTM) <kocio@linuxnews.pl> i Robert Luberda <robert@debian.org>.

Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 1.0.1i oryginału.