X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=doc%2Fapps%2Fopenssl.pod;h=64a160c20a406fc450e3bd0babb4763bab70e6ef;hp=f6435bc6e47a708dfa409f58d9a253a41313b355;hb=095db6bdb81500857a0016b6284b9733c4cd547e;hpb=54a34aecc38b95115704565ac77a2715688be400 diff --git a/doc/apps/openssl.pod b/doc/apps/openssl.pod index f6435bc6e4..64a160c20a 100644 --- a/doc/apps/openssl.pod +++ b/doc/apps/openssl.pod @@ -12,6 +12,10 @@ I [ I ] [ I ] +B [ B | B | B | B | B | B] + +B BI [ I ] + =head1 DESCRIPTION OpenSSL is a cryptography toolkit implementing the Secure Sockets Layer (SSL @@ -22,12 +26,14 @@ The B program is a command line tool for using the various cryptography functions of OpenSSL's B library from the shell. It can be used for - o Creation of RSA, DH and DSA key parameters + o Creation and management of private keys, public keys and parameters + o Public key cryptographic operations o Creation of X.509 certificates, CSRs and CRLs o Calculation of Message Digests o Encryption and Decryption with Ciphers o SSL/TLS Client and Server Tests o Handling of S/MIME signed or encrypted mail + o Time Stamp requests, generation and verification =head1 COMMAND SUMMARY @@ -35,86 +41,178 @@ The B program provides a rich variety of commands (I in the SYNOPSIS above), each of which often has a wealth of options and arguments (I and I in the SYNOPSIS). +The pseudo-commands B, B, +and B output a list (one entry per line) of the names +of all standard commands, message digest commands, or cipher commands, +respectively, that are available in the present B utility. + +The pseudo-commands B and +B list all cipher and message digest names, one entry per line. Aliases are listed as: + + from => to + +The pseudo-command B lists all supported public +key algorithms. + +The pseudo-command BI tests whether a command of the +specified name is available. If no command named I exists, it +returns 0 (success) and prints BI; otherwise it returns 1 +and prints I. In both cases, the output goes to B and +nothing is printed to B. Additional command line arguments +are always ignored. Since for each cipher there is a command of the +same name, this provides an easy way for shell scripts to test for the +availability of ciphers in the B program. (BI is +not able to detect pseudo-commands such as B, +BI<...>B<-commands>, or BI itself.) + =head2 STANDARD COMMANDS =over 10 -=item B +=item L|asn1parse(1)> Parse an ASN.1 sequence. -=item B +=item L|ca(1)> Certificate Authority (CA) Management. -=item B +=item L|ciphers(1)> Cipher Suite Description Determination. -=item B +=item L|cms(1)> + +CMS (Cryptographic Message Syntax) utility + +=item L|crl(1)> Certificate Revocation List (CRL) Management. -=item B +=item L|crl2pkcs7(1)> CRL to PKCS#7 Conversion. -=item B +=item L|dgst(1)> Message Digest Calculation. =item B -Diffie-Hellman Data Management. +Diffie-Hellman Parameter Management. +Obsoleted by L|dhparam(1)>. -=item B +=item L|dhparam(1)> + +Generation and Management of Diffie-Hellman Parameters. Superseded by +L|genpkey(1)> and L|pkeyparam(1)> + + +=item L|dsa(1)> DSA Data Management. -=item B +=item L|dsaparam(1)> + +DSA Parameter Generation and Management. Superseded by +L|genpkey(1)> and L|pkeyparam(1)> -DSA Parameter Generation. +=item L|ec(1)> -=item B +EC (Elliptic curve) key processing + +=item L|ecparam(1)> + +EC parameter manipulation and generation + +=item L|enc(1)> Encoding with Ciphers. -=item B +=item L|engine(1)> + +Engine (loadble module) information and manipulation. + +=item L|errstr(1)> Error Number to Error String Conversion. =item B Generation of Diffie-Hellman Parameters. +Obsoleted by L|dhparam(1)>. + +=item L|gendsa(1)> + +Generation of DSA Private Key from Parameters. Superseded by +L|genpkey(1)> and L|pkey(1)> + +=item L|genpkey(1)> + +Generation of Private Key or Parameters. + +=item L|genrsa(1)> + +Generation of RSA Private Key. Superceded by L|genpkey(1)>. + +=item L|nseq(1)> + +Create or examine a netscape certificate sequence -=item B +=item L|ocsp(1)> -Generation of DSA Parameters. +Online Certificate Status Protocol utility. -=item B +=item L|passwd(1)> -Generation of RSA Parameters. +Generation of hashed passwords. -=item B +=item L|pkcs12(1)> + +PKCS#12 Data Management. + +=item L|pkcs7(1)> PKCS#7 Data Management. -=item B +=item L|pkey(1)> + +Public and private key management. + +=item L|pkeyparam(1)> + +Public key algorithm parameter management. + +=item L|pkeyutl(1)> + +Public key algorithm cryptographic operation utility. + +=item L|rand(1)> -X.509 Certificate Signing Request (CSR) Management. +Generate pseudo-random bytes. -=item B +=item L|req(1)> -RSA Data Management. +PKCS#10 X.509 Certificate Signing Request (CSR) Management. -=item B +=item L|rsa(1)> + +RSA key management. + + +=item L|rsautl(1)> + +RSA utility for signing, verification, encryption, and decryption. Superseded +by L|pkeyutl(1)> + +=item L|s_client(1)> This implements a generic SSL/TLS client which can establish a transparent connection to a remote server speaking SSL/TLS. It's intended for testing purposes only and provides only rudimentary interface functionality but internally uses mostly all functionality of the OpenSSL B library. -=item B +=item L|s_server(1)> This implements a generic SSL/TLS server which accepts connections from remote clients speaking SSL/TLS. It's intended for testing purposes only and provides @@ -123,31 +221,39 @@ functionality of the OpenSSL B library. It provides both an own command line oriented protocol for testing SSL functions and a simple HTTP response facility to emulate an SSL/TLS-aware webserver. -=item B +=item L|s_time(1)> SSL Connection Timer. -=item B +=item L|sess_id(1)> SSL Session Data Management. -=item B +=item L|smime(1)> S/MIME mail processing. -=item B +=item L|speed(1)> Algorithm Speed Measurement. -=item B +=item L|spkac(1)> + +SPKAC printing and generating utility + +=item L|ts(1)> + +Time Stamping Authority tool (client/server) + +=item L|verify(1)> X.509 Certificate Verification. -=item B +=item L|version(1)> OpenSSL Version Information. -=item B +=item L|x509(1)> X.509 Certificate Data Management. @@ -181,6 +287,22 @@ SHA Digest SHA-1 Digest +=item B + +SHA-224 Digest + +=item B + +SHA-256 Digest + +=item B + +SHA-384 Digest + +=item B + +SHA-512 Digest + =back =head2 ENCODING AND CIPHER COMMANDS @@ -229,22 +351,72 @@ RC5 Cipher =back +=head1 PASS PHRASE ARGUMENTS + +Several commands accept password arguments, typically using B<-passin> +and B<-passout> for input and output passwords respectively. These allow +the password to be obtained from a variety of sources. Both of these +options take a single argument whose format is described below. If no +password argument is given and a password is required then the user is +prompted to enter one: this will typically be read from the current +terminal with echoing turned off. + +=over 10 + +=item B + +the actual password is B. Since the password is visible +to utilities (like 'ps' under Unix) this form should only be used +where security is not important. + +=item B + +obtain the password from the environment variable B. Since +the environment of other processes is visible on certain platforms +(e.g. ps under certain Unix OSes) this option should be used with caution. + +=item B + +the first line of B is the password. If the same B +argument is supplied to B<-passin> and B<-passout> arguments then the first +line will be used for the input password and the next line for the output +password. B need not refer to a regular file: it could for example +refer to a device or named pipe. + +=item B + +read the password from the file descriptor B. This can be used to +send the data via a pipe for example. + +=item B + +read the password from standard input. + +=back + =head1 SEE ALSO L, L, L, L, L, L, L, L, L, -L, L, +L, L, L, L, L, L, +L, L, L, L, -L, L, L, -L, L, L, +L, L, L, +L, L, +L, L, +L, L, L, L, L, -L, L +L, L, L =head1 HISTORY -The openssl(1) document appeared in OpenSSL 0.9.2 +The openssl(1) document appeared in OpenSSL 0.9.2. +The BIB<-commands> pseudo-commands were added in OpenSSL 0.9.3; +The BIB<-algorithms> pseudo-commands were added in OpenSSL 1.0.0; +the BI pseudo-commands were added in OpenSSL 0.9.5a. +For notes on the availability of other commands, see their individual +manual pages. =cut -