table of contents
OPENSSL(1SSL) | OpenSSL | 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¶
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.
2014-07-22 | 1.0.1i |