X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=doc%2Fapps%2Fciphers.pod;h=6f58a728f03fd82df87662330c56e2edde7fb446;hp=c961d2da64dd765bf19b95953cfa51ebb8bc3b54;hb=75d61b33bced6f42b55f8020b581d7b5608f778a;hpb=64287002ce4de3c8954a8bc9ccf6e82df695b69f diff --git a/doc/apps/ciphers.pod b/doc/apps/ciphers.pod index c961d2da64..6f58a728f0 100644 --- a/doc/apps/ciphers.pod +++ b/doc/apps/ciphers.pod @@ -8,6 +8,7 @@ ciphers - SSL cipher display and cipher list tool. B B [B<-v>] +[B<-V>] [B<-ssl2>] [B<-ssl3>] [B<-tls1>] @@ -15,7 +16,7 @@ B B =head1 DESCRIPTION -The B command converts OpenSSL cipher lists into ordered +The B command converts textual OpenSSL cipher lists into ordered SSL cipher preference lists. It can be used as a test tool to determine the appropriate cipherlist. @@ -25,9 +26,17 @@ the appropriate cipherlist. =item B<-v> -verbose option. List ciphers with a complete decsription of the authentication, -key exchange, encryption and mac algorithms used along with any key size +Verbose option. List ciphers with a complete description of +protocol version (SSLv2 or SSLv3; the latter includes TLS), key exchange, +authentication, encryption and mac algorithms used along with any key size restrictions and whether the algorithm is classed as an "export" cipher. +Note that without the B<-v> option, ciphers may seem to appear twice +in a cipher list; this is when similar ciphers are available for +SSL v2 and for SSL v3/TLS v1. + +=item B<-V> + +Like B<-V>, but include cipher suite codes in output (hex format). =item B<-ssl3> @@ -50,6 +59,8 @@ print a brief usage message. a cipher list to convert to a cipher preference list. If it is not included then the default cipher list will be used. The format is described below. +=back + =head1 CIPHER LIST FORMAT The cipher list consists of one or more I separated by colons. @@ -99,20 +110,31 @@ The following is a list of all permitted cipher strings and their meanings. =item B the default cipher list. This is determined at compile time and is normally -B. This must be the first cipher string specified. +B. This must be the first cipher string +specified. + +=item B + +the ciphers included in B, but not enabled by default. Currently +this is B. Note that this rule does not cover B, which is +not included by B (use B if necessary). =item B all ciphers suites except the B ciphers which must be explicitly enabled. +=item B + +the cipher suites not enabled by B, currently being B. + =item B "high" encryption cipher suites. This currently means those with key lengths larger -than 128 bits. +than 128 bits, and some cipher suites with 128-bit keys. =item B -"medium" encryption cipher suites, currently those using 128 bit encryption. +"medium" encryption cipher suites, currently some of those using 128 bit encryption. =item B @@ -141,7 +163,7 @@ included. the cipher suites offering no authentication. This is currently the anonymous DH algorithms. These cipher suites are vulnerable to a "man in the middle" -attack and so there use is normally discouraged. +attack and so their use is normally discouraged. =item B, B @@ -184,7 +206,11 @@ cipher suites using DH, including anonymous DH. =item B -anoymous DH cipher suites. +anonymous DH cipher suites. + +=item B + +cipher suites using AES. =item B<3DES> @@ -214,12 +240,18 @@ cipher suites using MD5. cipher suites using SHA1. +=item B + +cipher suites using Camellia. + =back =head1 CIPHER SUITE NAMES The following lists give the SSL or TLS cipher suites names from the -relevant specification and their OpenSSL equivalents. +relevant specification and their OpenSSL equivalents. It should be noted, +that several cipher suite names do not include the authentication used, +e.g. DES-CBC3-SHA. In these cases, RSA authentication is used. =head2 SSL v3.0 cipher suites. @@ -289,6 +321,42 @@ relevant specification and their OpenSSL equivalents. TLS_DH_anon_WITH_DES_CBC_SHA ADH-DES-CBC-SHA TLS_DH_anon_WITH_3DES_EDE_CBC_SHA ADH-DES-CBC3-SHA +=head2 AES ciphersuites from RFC3268, extending TLS v1.0 + + TLS_RSA_WITH_AES_128_CBC_SHA AES128-SHA + TLS_RSA_WITH_AES_256_CBC_SHA AES256-SHA + + TLS_DH_DSS_WITH_AES_128_CBC_SHA DH-DSS-AES128-SHA + TLS_DH_DSS_WITH_AES_256_CBC_SHA DH-DSS-AES256-SHA + TLS_DH_RSA_WITH_AES_128_CBC_SHA DH-RSA-AES128-SHA + TLS_DH_RSA_WITH_AES_256_CBC_SHA DH-RSA-AES256-SHA + + TLS_DHE_DSS_WITH_AES_128_CBC_SHA DHE-DSS-AES128-SHA + TLS_DHE_DSS_WITH_AES_256_CBC_SHA DHE-DSS-AES256-SHA + TLS_DHE_RSA_WITH_AES_128_CBC_SHA DHE-RSA-AES128-SHA + TLS_DHE_RSA_WITH_AES_256_CBC_SHA DHE-RSA-AES256-SHA + + TLS_DH_anon_WITH_AES_128_CBC_SHA ADH-AES128-SHA + TLS_DH_anon_WITH_AES_256_CBC_SHA ADH-AES256-SHA + +=head2 Camellia ciphersuites from RFC4132, extending TLS v1.0 + + TLS_RSA_WITH_CAMELLIA_128_CBC_SHA CAMELLIA128-SHA + TLS_RSA_WITH_CAMELLIA_256_CBC_SHA CAMELLIA256-SHA + + TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA Not implemented. + TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA Not implemented. + TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA Not implemented. + TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA Not implemented. + + TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA DHE-DSS-CAMELLIA128-SHA + TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA DHE-DSS-CAMELLIA256-SHA + TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA DHE-RSA-CAMELLIA128-SHA + TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA DHE-RSA-CAMELLIA256-SHA + + TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA ADH-CAMELLIA128-SHA + TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA ADH-CAMELLIA256-SHA + =head2 Additional Export 1024 and other cipher suites Note: these ciphers can also be used in SSL v3. @@ -311,7 +379,7 @@ Note: these ciphers can also be used in SSL v3. =head1 NOTES -The non ephemeral DH modes are currently unimplimented in OpenSSL +The non-ephemeral DH modes are currently unimplemented in OpenSSL because there is no support for DH certificates. Some compiled versions of OpenSSL may not include all the ciphers @@ -332,8 +400,23 @@ Include only 3DES ciphers and then place RSA ciphers last: openssl ciphers -v '3DES:+RSA' +Include all RC4 ciphers but leave out those without authentication: + + openssl ciphers -v 'RC4:!COMPLEMENTOFDEFAULT' + +Include all chiphers with RSA authentication but leave out ciphers without +encryption. + + openssl ciphers -v 'RSA:!COMPLEMENTOFALL' + =head1 SEE ALSO -s_client(1), s_server(1), ssl(3) +L, L, L + +=head1 HISTORY + +The B and B selection options +for cipherlist strings were added in OpenSSL 0.9.7. +The B<-V> option for the B command was added in OpenSSL 0.9.9. =cut