OpenSL ciphers(1openssl)
NAME
ciphers - SL cipher display and cipher list tool.
SYNOPSIS
openssl ciphers [-v] [-ssl2] [-ssl3] [-tls1] [cipherlist]
DESCRIPTION
The cipherlist command converts OpenSL cipher lists into
ordered SL cipher preference lists. It can be used as a
test tool to determine the appropriate cipherlist.
COMAND OPTIONS
-v verbose option. List ciphers with a complete description
of protocol version (SLv2 or SLv3; 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 -v option, ciphers may seem to
appear twice in a cipher list; this is when similar
ciphers are available for SL v2 and for SL v3/TLS v1.
-ssl3
only include SL v3 ciphers.
-ssl2
only include SL v2 ciphers.
-tls1
only include TLS v1 ciphers.
-h, -?
print a brief usage message.
cipherlist
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.
CIPHER LIST FORMAT
The cipher list consists of one or more cipher strings
separated by colons. Commas or spaces are also acceptable
separators but colons are normally used.
The actual cipher string can take several different forms.
It can consist of a single cipher suite such as RC4-SHA.
It can represent a list of cipher suites containing a
certain algorithm, or cipher suites of a certain type. For
example SHA1 represents all ciphers suites using the digest
algorithm SHA1 and SLv3 represents all SL v3 algorithms.
OpenSL-0.9.8 Last change: Oct 11 2005 1
OpenSL ciphers(1openssl)
Lists of cipher suites can be combined in a single cipher
string using the ] character. This is used as a logical and
operation. For example SHA1]DES represents all cipher suites
containing the SHA1 and the DES algorithms.
Each cipher string can be optionally preceded by the
characters !, - or ].
If ! is used then the ciphers are permanently deleted from
the list. The ciphers deleted can never reappear in the
list even if they are explicitly stated.
If - is used then the ciphers are deleted from the list, but
some or all of the ciphers can be added again by later
options.
If ] is used then the ciphers are moved to the end of the
list. This option doesn't add any new ciphers it just moves
matching existing ones.
If none of these characters is present then the string is
just interpreted as a list of ciphers to be appended to the
current preference list. If the list includes any ciphers
already present they will be ignored: that is they will not
moved to the end of the list.
Additionally the cipher string @STRENGTH can be used at any
point to sort the current cipher list in order of encryption
algorithm key length.
CIPHER STRINGS
The following is a list of all permitted cipher strings and
their meanings.
DEFAULT
the default cipher list. This is determined at compile
time and is normally AL:!ADH:RC4]RSA:]SLv2:@STRENGTH.
This must be the first cipher string specified.
COMPLEMENTOFDEFAULT
the ciphers included in AL, but not enabled by default.
Currently this is ADH. Note that this rule does not
cover eNUL, which is not included by AL (use
COMPLEMENTOFAL if necessary).
AL all ciphers suites except the eNUL ciphers which must
be explicitly enabled.
COMPLEMENTOFAL
the cipher suites not enabled by AL, currently being
eNUL.
OpenSL-0.9.8 Last change: Oct 11 2005 2
OpenSL ciphers(1openssl)
HIGH
"high" encryption cipher suites. This currently means
those with key lengths larger than 128 bits.
MEDIUM
"medium" encryption cipher suites, currently those using
128 bit encryption.
LOW "low" encryption cipher suites, currently those using 64
or 56 bit encryption algorithms but excluding export
cipher suites.
EXP, EXPORT
export encryption algorithms. Including 40 and 56 bits
algorithms.
EXPORT40
40 bit export encryption algorithms
EXPORT56
56 bit export encryption algorithms.
eNUL, NUL
the "NUL" ciphers that is those offering no encryption.
Because these offer no encryption at all and are a
security risk they are disabled unless explicitly
included.
aNUL
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 their use is normally discouraged.
kRSA, RSA
cipher suites using RSA key exchange.
kEDH
cipher suites using ephemeral DH key agreement.
kDHr, kDHd
cipher suites using DH key agreement and DH certificates
signed by CAs with RSA and DS keys respectively. Not
implemented.
aRSA
cipher suites using RSA authentication, i.e. the
certificates carry RSA keys.
aDS, DS
cipher suites using DS authentication, i.e. the
certificates carry DS keys.
OpenSL-0.9.8 Last change: Oct 11 2005 3
OpenSL ciphers(1openssl)
aDH cipher suites effectively using DH authentication, i.e.
the certificates carry DH keys. Not implemented.
kFZA, aFZA, eFZA, FZA
ciphers suites using FORTEZA key exchange,
authentication, encryption or all FORTEZA algorithms.
Not implemented.
TLSv1, SLv3, SLv2
TLS v1.0, SL v3.0 or SL v2.0 cipher suites
respectively.
DH cipher suites using DH, including anonymous DH.
ADH anonymous DH cipher suites.
AES cipher suites using AES.
3DES
cipher suites using triple DES.
DES cipher suites using DES (not triple DES).
RC4 cipher suites using RC4.
RC2 cipher suites using RC2.
IDEA
cipher suites using IDEA.
MD5 cipher suites using MD5.
SHA1, SHA
cipher suites using SHA1.
CIPHER SUITE NAMES
The following lists give the SL or TLS cipher suites names
from the relevant specification and their OpenSL
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.
SL v3.0 cipher suites.
OpenSL-0.9.8 Last change: Oct 11 2005 4
OpenSL ciphers(1openssl)
SLRSAWITHNULMD5 NUL-MD5
SLRSAWITHNULSHA NUL-SHA
SLRSAEXPORTWITHRC440MD5 EXP-RC4-MD5
SLRSAWITHRC4128MD5 RC4-MD5
SLRSAWITHRC4128SHA RC4-SHA
SLRSAEXPORTWITHRC2CBC40MD5 EXP-RC2-CBC-MD5
SLRSAWITHIDEACBCSHA IDEA-CBC-SHA
SLRSAEXPORTWITHDES40CBCSHA EXP-DES-CBC-SHA
SLRSAWITHDESCBCSHA DES-CBC-SHA
SLRSAWITH3DESEDECBCSHA DES-CBC3-SHA
SLDHDSEXPORTWITHDES40CBCSHA Not implemented.
SLDHDSWITHDESCBCSHA Not implemented.
SLDHDSWITH3DESEDECBCSHA Not implemented.
SLDHRSAEXPORTWITHDES40CBCSHA Not implemented.
SLDHRSAWITHDESCBCSHA Not implemented.
SLDHRSAWITH3DESEDECBCSHA Not implemented.
SLDHEDSEXPORTWITHDES40CBCSHA EXP-EDH-DS-DES-CBC-SHA
SLDHEDSWITHDESCBCSHA EDH-DS-CBC-SHA
SLDHEDSWITH3DESEDECBCSHA EDH-DS-DES-CBC3-SHA
SLDHERSAEXPORTWITHDES40CBCSHA EXP-EDH-RSA-DES-CBC-SHA
SLDHERSAWITHDESCBCSHA EDH-RSA-DES-CBC-SHA
SLDHERSAWITH3DESEDECBCSHA EDH-RSA-DES-CBC3-SHA
SLDHanonEXPORTWITHRC440MD5 EXP-ADH-RC4-MD5
SLDHanonWITHRC4128MD5 ADH-RC4-MD5
SLDHanonEXPORTWITHDES40CBCSHA EXP-ADH-DES-CBC-SHA
SLDHanonWITHDESCBCSHA ADH-DES-CBC-SHA
SLDHanonWITH3DESEDECBCSHA ADH-DES-CBC3-SHA
SLFORTEZAKEAWITHNULSHA Not implemented.
SLFORTEZAKEAWITHFORTEZACBCSHA Not implemented.
SLFORTEZAKEAWITHRC4128SHA Not implemented.
TLS v1.0 cipher suites.
TLSRSAWITHNULMD5 NUL-MD5
TLSRSAWITHNULSHA NUL-SHA
TLSRSAEXPORTWITHRC440MD5 EXP-RC4-MD5
TLSRSAWITHRC4128MD5 RC4-MD5
TLSRSAWITHRC4128SHA RC4-SHA
TLSRSAEXPORTWITHRC2CBC40MD5 EXP-RC2-CBC-MD5
TLSRSAWITHIDEACBCSHA IDEA-CBC-SHA
TLSRSAEXPORTWITHDES40CBCSHA EXP-DES-CBC-SHA
TLSRSAWITHDESCBCSHA DES-CBC-SHA
TLSRSAWITH3DESEDECBCSHA DES-CBC3-SHA
OpenSL-0.9.8 Last change: Oct 11 2005 5
OpenSL ciphers(1openssl)
TLSDHDSEXPORTWITHDES40CBCSHA Not implemented.
TLSDHDSWITHDESCBCSHA Not implemented.
TLSDHDSWITH3DESEDECBCSHA Not implemented.
TLSDHRSAEXPORTWITHDES40CBCSHA Not implemented.
TLSDHRSAWITHDESCBCSHA Not implemented.
TLSDHRSAWITH3DESEDECBCSHA Not implemented.
TLSDHEDSEXPORTWITHDES40CBCSHA EXP-EDH-DS-DES-CBC-SHA
TLSDHEDSWITHDESCBCSHA EDH-DS-CBC-SHA
TLSDHEDSWITH3DESEDECBCSHA EDH-DS-DES-CBC3-SHA
TLSDHERSAEXPORTWITHDES40CBCSHA EXP-EDH-RSA-DES-CBC-SHA
TLSDHERSAWITHDESCBCSHA EDH-RSA-DES-CBC-SHA
TLSDHERSAWITH3DESEDECBCSHA EDH-RSA-DES-CBC3-SHA
TLSDHanonEXPORTWITHRC440MD5 EXP-ADH-RC4-MD5
TLSDHanonWITHRC4128MD5 ADH-RC4-MD5
TLSDHanonEXPORTWITHDES40CBCSHA EXP-ADH-DES-CBC-SHA
TLSDHanonWITHDESCBCSHA ADH-DES-CBC-SHA
TLSDHanonWITH3DESEDECBCSHA ADH-DES-CBC3-SHA
AES ciphersuites from RFC3268, extending TLS v1.0
TLSRSAWITHAES128CBCSHA AES128-SHA
TLSRSAWITHAES256CBCSHA AES256-SHA
TLSDHDSWITHAES128CBCSHA DH-DS-AES128-SHA
TLSDHDSWITHAES256CBCSHA DH-DS-AES256-SHA
TLSDHRSAWITHAES128CBCSHA DH-RSA-AES128-SHA
TLSDHRSAWITHAES256CBCSHA DH-RSA-AES256-SHA
TLSDHEDSWITHAES128CBCSHA DHE-DS-AES128-SHA
TLSDHEDSWITHAES256CBCSHA DHE-DS-AES256-SHA
TLSDHERSAWITHAES128CBCSHA DHE-RSA-AES128-SHA
TLSDHERSAWITHAES256CBCSHA DHE-RSA-AES256-SHA
TLSDHanonWITHAES128CBCSHA ADH-AES128-SHA
TLSDHanonWITHAES256CBCSHA ADH-AES256-SHA
Additional Export 1024 and other cipher suites
Note: these ciphers can also be used in SL v3.
TLSRSAEXPORT1024WITHDESCBCSHA EXP1024-DES-CBC-SHA
TLSRSAEXPORT1024WITHRC456SHA EXP1024-RC4-SHA
TLSDHEDSEXPORT1024WITHDESCBCSHA EXP1024-DHE-DS-DES-CBC-SHA
TLSDHEDSEXPORT1024WITHRC456SHA EXP1024-DHE-DS-RC4-SHA
TLSDHEDSWITHRC4128SHA DHE-DS-RC4-SHA
SL v2.0 cipher suites.
OpenSL-0.9.8 Last change: Oct 11 2005 6
OpenSL ciphers(1openssl)
SLCKRC4128WITHMD5 RC4-MD5
SLCKRC4128EXPORT40WITHMD5 EXP-RC4-MD5
SLCKRC2128CBCWITHMD5 RC2-MD5
SLCKRC2128CBCEXPORT40WITHMD5 EXP-RC2-MD5
SLCKIDEA128CBCWITHMD5 IDEA-CBC-MD5
SLCKDES64CBCWITHMD5 DES-CBC-MD5
SLCKDES192EDE3CBCWITHMD5 DES-CBC3-MD5
NOTES
The non-ephemeral DH modes are currently unimplemented in
OpenSL because there is no support for DH certificates.
Some compiled versions of OpenSL may not include all the
ciphers listed here because some ciphers were excluded at
compile time.
EXAMPLES
Verbose listing of all OpenSL ciphers including NUL
ciphers:
openssl ciphers -v 'AL:eNUL'
Include all ciphers except NUL and anonymous DH then sort
by strength:
openssl ciphers -v 'AL:!ADH:@STRENGTH'
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:!COMPLEMENTOFAL'
SEE ALSO
sclient(1), sserver(1), ssl(3)
HISTORY
The COMPLENTOFAL and COMPLEMENTOFDEFAULT selection options
were added in version 0.9.7.
OpenSL-0.9.8 Last change: Oct 11 2005 7
|