xref: /freebsd/crypto/openssl/doc/man1/openssl-ciphers.pod.in (revision b077aed33b7b6aefca7b17ddb250cf521f938613)
1*b077aed3SPierre Pronchery=pod
2*b077aed3SPierre Pronchery{- OpenSSL::safe::output_do_not_edit_headers(); -}
3*b077aed3SPierre Pronchery
4*b077aed3SPierre Pronchery=head1 NAME
5*b077aed3SPierre Pronchery
6*b077aed3SPierre Proncheryopenssl-ciphers - SSL cipher display and cipher list command
7*b077aed3SPierre Pronchery
8*b077aed3SPierre Pronchery=head1 SYNOPSIS
9*b077aed3SPierre Pronchery
10*b077aed3SPierre ProncheryB<openssl> B<ciphers>
11*b077aed3SPierre Pronchery[B<-help>]
12*b077aed3SPierre Pronchery[B<-s>]
13*b077aed3SPierre Pronchery[B<-v>]
14*b077aed3SPierre Pronchery[B<-V>]
15*b077aed3SPierre Pronchery[B<-ssl3>]
16*b077aed3SPierre Pronchery[B<-tls1>]
17*b077aed3SPierre Pronchery[B<-tls1_1>]
18*b077aed3SPierre Pronchery[B<-tls1_2>]
19*b077aed3SPierre Pronchery[B<-tls1_3>]
20*b077aed3SPierre Pronchery[B<-s>]
21*b077aed3SPierre Pronchery[B<-psk>]
22*b077aed3SPierre Pronchery[B<-srp>]
23*b077aed3SPierre Pronchery[B<-stdname>]
24*b077aed3SPierre Pronchery[B<-convert> I<name>]
25*b077aed3SPierre Pronchery[B<-ciphersuites> I<val>]
26*b077aed3SPierre Pronchery{- $OpenSSL::safe::opt_provider_synopsis -}
27*b077aed3SPierre Pronchery[I<cipherlist>]
28*b077aed3SPierre Pronchery
29*b077aed3SPierre Pronchery=head1 DESCRIPTION
30*b077aed3SPierre Pronchery
31*b077aed3SPierre ProncheryThis command converts textual OpenSSL cipher lists into
32*b077aed3SPierre Proncheryordered SSL cipher preference lists. It can be used to
33*b077aed3SPierre Proncherydetermine the appropriate cipherlist.
34*b077aed3SPierre Pronchery
35*b077aed3SPierre Pronchery=head1 OPTIONS
36*b077aed3SPierre Pronchery
37*b077aed3SPierre Pronchery=over 4
38*b077aed3SPierre Pronchery
39*b077aed3SPierre Pronchery=item B<-help>
40*b077aed3SPierre Pronchery
41*b077aed3SPierre ProncheryPrint a usage message.
42*b077aed3SPierre Pronchery
43*b077aed3SPierre Pronchery{- $OpenSSL::safe::opt_provider_item -}
44*b077aed3SPierre Pronchery
45*b077aed3SPierre Pronchery=item B<-s>
46*b077aed3SPierre Pronchery
47*b077aed3SPierre ProncheryOnly list supported ciphers: those consistent with the security level, and
48*b077aed3SPierre Proncheryminimum and maximum protocol version.  This is closer to the actual cipher list
49*b077aed3SPierre Proncheryan application will support.
50*b077aed3SPierre Pronchery
51*b077aed3SPierre ProncheryPSK and SRP ciphers are not enabled by default: they require B<-psk> or B<-srp>
52*b077aed3SPierre Proncheryto enable them.
53*b077aed3SPierre Pronchery
54*b077aed3SPierre ProncheryIt also does not change the default list of supported signature algorithms.
55*b077aed3SPierre Pronchery
56*b077aed3SPierre ProncheryOn a server the list of supported ciphers might also exclude other ciphers
57*b077aed3SPierre Proncherydepending on the configured certificates and presence of DH parameters.
58*b077aed3SPierre Pronchery
59*b077aed3SPierre ProncheryIf this option is not used then all ciphers that match the cipherlist will be
60*b077aed3SPierre Proncherylisted.
61*b077aed3SPierre Pronchery
62*b077aed3SPierre Pronchery=item B<-psk>
63*b077aed3SPierre Pronchery
64*b077aed3SPierre ProncheryWhen combined with B<-s> includes cipher suites which require PSK.
65*b077aed3SPierre Pronchery
66*b077aed3SPierre Pronchery=item B<-srp>
67*b077aed3SPierre Pronchery
68*b077aed3SPierre ProncheryWhen combined with B<-s> includes cipher suites which require SRP. This option
69*b077aed3SPierre Proncheryis deprecated.
70*b077aed3SPierre Pronchery
71*b077aed3SPierre Pronchery=item B<-v>
72*b077aed3SPierre Pronchery
73*b077aed3SPierre ProncheryVerbose output: For each cipher suite, list details as provided by
74*b077aed3SPierre ProncheryL<SSL_CIPHER_description(3)>.
75*b077aed3SPierre Pronchery
76*b077aed3SPierre Pronchery=item B<-V>
77*b077aed3SPierre Pronchery
78*b077aed3SPierre ProncheryLike B<-v>, but include the official cipher suite values in hex.
79*b077aed3SPierre Pronchery
80*b077aed3SPierre Pronchery=item B<-tls1_3>, B<-tls1_2>, B<-tls1_1>, B<-tls1>, B<-ssl3>
81*b077aed3SPierre Pronchery
82*b077aed3SPierre ProncheryIn combination with the B<-s> option, list the ciphers which could be used if
83*b077aed3SPierre Proncherythe specified protocol were negotiated.
84*b077aed3SPierre ProncheryNote that not all protocols and flags may be available, depending on how
85*b077aed3SPierre ProncheryOpenSSL was built.
86*b077aed3SPierre Pronchery
87*b077aed3SPierre Pronchery=item B<-stdname>
88*b077aed3SPierre Pronchery
89*b077aed3SPierre ProncheryPrecede each cipher suite by its standard name.
90*b077aed3SPierre Pronchery
91*b077aed3SPierre Pronchery=item B<-convert> I<name>
92*b077aed3SPierre Pronchery
93*b077aed3SPierre ProncheryConvert a standard cipher I<name> to its OpenSSL name.
94*b077aed3SPierre Pronchery
95*b077aed3SPierre Pronchery=item B<-ciphersuites> I<val>
96*b077aed3SPierre Pronchery
97*b077aed3SPierre ProncherySets the list of TLSv1.3 ciphersuites. This list will be combined with any
98*b077aed3SPierre ProncheryTLSv1.2 and below ciphersuites that have been configured. The format for this
99*b077aed3SPierre Proncherylist is a simple colon (":") separated list of TLSv1.3 ciphersuite names. By
100*b077aed3SPierre Proncherydefault this value is:
101*b077aed3SPierre Pronchery
102*b077aed3SPierre Pronchery TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
103*b077aed3SPierre Pronchery
104*b077aed3SPierre Pronchery=item B<cipherlist>
105*b077aed3SPierre Pronchery
106*b077aed3SPierre ProncheryA cipher list of TLSv1.2 and below ciphersuites to convert to a cipher
107*b077aed3SPierre Proncherypreference list. This list will be combined with any TLSv1.3 ciphersuites that
108*b077aed3SPierre Proncheryhave been configured. If it is not included then the default cipher list will be
109*b077aed3SPierre Proncheryused. The format is described below.
110*b077aed3SPierre Pronchery
111*b077aed3SPierre Pronchery=back
112*b077aed3SPierre Pronchery
113*b077aed3SPierre Pronchery=head1 CIPHER LIST FORMAT
114*b077aed3SPierre Pronchery
115*b077aed3SPierre ProncheryThe cipher list consists of one or more I<cipher strings> separated by colons.
116*b077aed3SPierre ProncheryCommas or spaces are also acceptable separators but colons are normally used.
117*b077aed3SPierre Pronchery
118*b077aed3SPierre ProncheryThe actual cipher string can take several different forms.
119*b077aed3SPierre Pronchery
120*b077aed3SPierre ProncheryIt can consist of a single cipher suite such as B<RC4-SHA>.
121*b077aed3SPierre Pronchery
122*b077aed3SPierre ProncheryIt can represent a list of cipher suites containing a certain algorithm, or
123*b077aed3SPierre Proncherycipher suites of a certain type. For example B<SHA1> represents all ciphers
124*b077aed3SPierre Proncherysuites using the digest algorithm SHA1 and B<SSLv3> represents all SSL v3
125*b077aed3SPierre Proncheryalgorithms.
126*b077aed3SPierre Pronchery
127*b077aed3SPierre ProncheryLists of cipher suites can be combined in a single cipher string using the
128*b077aed3SPierre ProncheryB<+> character. This is used as a logical B<and> operation. For example
129*b077aed3SPierre ProncheryB<SHA1+DES> represents all cipher suites containing the SHA1 B<and> the DES
130*b077aed3SPierre Proncheryalgorithms.
131*b077aed3SPierre Pronchery
132*b077aed3SPierre ProncheryEach cipher string can be optionally preceded by the characters B<!>,
133*b077aed3SPierre ProncheryB<-> or B<+>.
134*b077aed3SPierre Pronchery
135*b077aed3SPierre ProncheryIf B<!> is used then the ciphers are permanently deleted from the list.
136*b077aed3SPierre ProncheryThe ciphers deleted can never reappear in the list even if they are
137*b077aed3SPierre Proncheryexplicitly stated.
138*b077aed3SPierre Pronchery
139*b077aed3SPierre ProncheryIf B<-> is used then the ciphers are deleted from the list, but some or
140*b077aed3SPierre Proncheryall of the ciphers can be added again by later options.
141*b077aed3SPierre Pronchery
142*b077aed3SPierre ProncheryIf B<+> is used then the ciphers are moved to the end of the list. This
143*b077aed3SPierre Proncheryoption doesn't add any new ciphers it just moves matching existing ones.
144*b077aed3SPierre Pronchery
145*b077aed3SPierre ProncheryIf none of these characters is present then the string is just interpreted
146*b077aed3SPierre Proncheryas a list of ciphers to be appended to the current preference list. If the
147*b077aed3SPierre Proncherylist includes any ciphers already present they will be ignored: that is they
148*b077aed3SPierre Proncherywill not moved to the end of the list.
149*b077aed3SPierre Pronchery
150*b077aed3SPierre ProncheryThe cipher string B<@STRENGTH> can be used at any point to sort the current
151*b077aed3SPierre Proncherycipher list in order of encryption algorithm key length.
152*b077aed3SPierre Pronchery
153*b077aed3SPierre ProncheryThe cipher string B<@SECLEVEL>=I<n> can be used at any point to set the security
154*b077aed3SPierre Proncherylevel to I<n>, which should be a number between zero and five, inclusive.
155*b077aed3SPierre ProncherySee L<SSL_CTX_set_security_level(3)> for a description of what each level means.
156*b077aed3SPierre Pronchery
157*b077aed3SPierre ProncheryThe cipher list can be prefixed with the B<DEFAULT> keyword, which enables
158*b077aed3SPierre Proncherythe default cipher list as defined below.  Unlike cipher strings,
159*b077aed3SPierre Proncherythis prefix may not be combined with other strings using B<+> character.
160*b077aed3SPierre ProncheryFor example, B<DEFAULT+DES> is not valid.
161*b077aed3SPierre Pronchery
162*b077aed3SPierre ProncheryThe content of the default list is determined at compile time and normally
163*b077aed3SPierre Proncherycorresponds to B<ALL:!COMPLEMENTOFDEFAULT:!eNULL>.
164*b077aed3SPierre Pronchery
165*b077aed3SPierre Pronchery=head1 CIPHER STRINGS
166*b077aed3SPierre Pronchery
167*b077aed3SPierre ProncheryThe following is a list of all permitted cipher strings and their meanings.
168*b077aed3SPierre Pronchery
169*b077aed3SPierre Pronchery=over 4
170*b077aed3SPierre Pronchery
171*b077aed3SPierre Pronchery=item B<COMPLEMENTOFDEFAULT>
172*b077aed3SPierre Pronchery
173*b077aed3SPierre ProncheryThe ciphers included in B<ALL>, but not enabled by default. Currently
174*b077aed3SPierre Proncherythis includes all RC4 and anonymous ciphers. Note that this rule does
175*b077aed3SPierre Proncherynot cover B<eNULL>, which is not included by B<ALL> (use B<COMPLEMENTOFALL> if
176*b077aed3SPierre Proncherynecessary). Note that RC4 based cipher suites are not built into OpenSSL by
177*b077aed3SPierre Proncherydefault (see the enable-weak-ssl-ciphers option to Configure).
178*b077aed3SPierre Pronchery
179*b077aed3SPierre Pronchery=item B<ALL>
180*b077aed3SPierre Pronchery
181*b077aed3SPierre ProncheryAll cipher suites except the B<eNULL> ciphers (which must be explicitly enabled
182*b077aed3SPierre Proncheryif needed).
183*b077aed3SPierre ProncheryAs of OpenSSL 1.0.0, the B<ALL> cipher suites are sensibly ordered by default.
184*b077aed3SPierre Pronchery
185*b077aed3SPierre Pronchery=item B<COMPLEMENTOFALL>
186*b077aed3SPierre Pronchery
187*b077aed3SPierre ProncheryThe cipher suites not enabled by B<ALL>, currently B<eNULL>.
188*b077aed3SPierre Pronchery
189*b077aed3SPierre Pronchery=item B<HIGH>
190*b077aed3SPierre Pronchery
191*b077aed3SPierre Pronchery"High" encryption cipher suites. This currently means those with key lengths
192*b077aed3SPierre Proncherylarger than 128 bits, and some cipher suites with 128-bit keys.
193*b077aed3SPierre Pronchery
194*b077aed3SPierre Pronchery=item B<MEDIUM>
195*b077aed3SPierre Pronchery
196*b077aed3SPierre Pronchery"Medium" encryption cipher suites, currently some of those using 128 bit
197*b077aed3SPierre Proncheryencryption.
198*b077aed3SPierre Pronchery
199*b077aed3SPierre Pronchery=item B<LOW>
200*b077aed3SPierre Pronchery
201*b077aed3SPierre Pronchery"Low" encryption cipher suites, currently those using 64 or 56 bit
202*b077aed3SPierre Proncheryencryption algorithms but excluding export cipher suites.  All these
203*b077aed3SPierre Proncherycipher suites have been removed as of OpenSSL 1.1.0.
204*b077aed3SPierre Pronchery
205*b077aed3SPierre Pronchery=item B<eNULL>, B<NULL>
206*b077aed3SPierre Pronchery
207*b077aed3SPierre ProncheryThe "NULL" ciphers that is those offering no encryption. Because these offer no
208*b077aed3SPierre Proncheryencryption at all and are a security risk they are not enabled via either the
209*b077aed3SPierre ProncheryB<DEFAULT> or B<ALL> cipher strings.
210*b077aed3SPierre ProncheryBe careful when building cipherlists out of lower-level primitives such as
211*b077aed3SPierre ProncheryB<kRSA> or B<aECDSA> as these do overlap with the B<eNULL> ciphers.  When in
212*b077aed3SPierre Proncherydoubt, include B<!eNULL> in your cipherlist.
213*b077aed3SPierre Pronchery
214*b077aed3SPierre Pronchery=item B<aNULL>
215*b077aed3SPierre Pronchery
216*b077aed3SPierre ProncheryThe cipher suites offering no authentication. This is currently the anonymous
217*b077aed3SPierre ProncheryDH algorithms and anonymous ECDH algorithms. These cipher suites are vulnerable
218*b077aed3SPierre Proncheryto "man in the middle" attacks and so their use is discouraged.
219*b077aed3SPierre ProncheryThese are excluded from the B<DEFAULT> ciphers, but included in the B<ALL>
220*b077aed3SPierre Proncheryciphers.
221*b077aed3SPierre ProncheryBe careful when building cipherlists out of lower-level primitives such as
222*b077aed3SPierre ProncheryB<kDHE> or B<AES> as these do overlap with the B<aNULL> ciphers.
223*b077aed3SPierre ProncheryWhen in doubt, include B<!aNULL> in your cipherlist.
224*b077aed3SPierre Pronchery
225*b077aed3SPierre Pronchery=item B<kRSA>, B<aRSA>, B<RSA>
226*b077aed3SPierre Pronchery
227*b077aed3SPierre ProncheryCipher suites using RSA key exchange or authentication. B<RSA> is an alias for
228*b077aed3SPierre ProncheryB<kRSA>.
229*b077aed3SPierre Pronchery
230*b077aed3SPierre Pronchery=item B<kDHr>, B<kDHd>, B<kDH>
231*b077aed3SPierre Pronchery
232*b077aed3SPierre ProncheryCipher suites using static DH key agreement and DH certificates signed by CAs
233*b077aed3SPierre Proncherywith RSA and DSS keys or either respectively.
234*b077aed3SPierre ProncheryAll these cipher suites have been removed in OpenSSL 1.1.0.
235*b077aed3SPierre Pronchery
236*b077aed3SPierre Pronchery=item B<kDHE>, B<kEDH>, B<DH>
237*b077aed3SPierre Pronchery
238*b077aed3SPierre ProncheryCipher suites using ephemeral DH key agreement, including anonymous cipher
239*b077aed3SPierre Proncherysuites.
240*b077aed3SPierre Pronchery
241*b077aed3SPierre Pronchery=item B<DHE>, B<EDH>
242*b077aed3SPierre Pronchery
243*b077aed3SPierre ProncheryCipher suites using authenticated ephemeral DH key agreement.
244*b077aed3SPierre Pronchery
245*b077aed3SPierre Pronchery=item B<ADH>
246*b077aed3SPierre Pronchery
247*b077aed3SPierre ProncheryAnonymous DH cipher suites, note that this does not include anonymous Elliptic
248*b077aed3SPierre ProncheryCurve DH (ECDH) cipher suites.
249*b077aed3SPierre Pronchery
250*b077aed3SPierre Pronchery=item B<kEECDH>, B<kECDHE>, B<ECDH>
251*b077aed3SPierre Pronchery
252*b077aed3SPierre ProncheryCipher suites using ephemeral ECDH key agreement, including anonymous
253*b077aed3SPierre Proncherycipher suites.
254*b077aed3SPierre Pronchery
255*b077aed3SPierre Pronchery=item B<ECDHE>, B<EECDH>
256*b077aed3SPierre Pronchery
257*b077aed3SPierre ProncheryCipher suites using authenticated ephemeral ECDH key agreement.
258*b077aed3SPierre Pronchery
259*b077aed3SPierre Pronchery=item B<AECDH>
260*b077aed3SPierre Pronchery
261*b077aed3SPierre ProncheryAnonymous Elliptic Curve Diffie-Hellman cipher suites.
262*b077aed3SPierre Pronchery
263*b077aed3SPierre Pronchery=item B<aDSS>, B<DSS>
264*b077aed3SPierre Pronchery
265*b077aed3SPierre ProncheryCipher suites using DSS authentication, i.e. the certificates carry DSS keys.
266*b077aed3SPierre Pronchery
267*b077aed3SPierre Pronchery=item B<aDH>
268*b077aed3SPierre Pronchery
269*b077aed3SPierre ProncheryCipher suites effectively using DH authentication, i.e. the certificates carry
270*b077aed3SPierre ProncheryDH keys.
271*b077aed3SPierre ProncheryAll these cipher suites have been removed in OpenSSL 1.1.0.
272*b077aed3SPierre Pronchery
273*b077aed3SPierre Pronchery=item B<aECDSA>, B<ECDSA>
274*b077aed3SPierre Pronchery
275*b077aed3SPierre ProncheryCipher suites using ECDSA authentication, i.e. the certificates carry ECDSA
276*b077aed3SPierre Proncherykeys.
277*b077aed3SPierre Pronchery
278*b077aed3SPierre Pronchery=item B<TLSv1.2>, B<TLSv1.0>, B<SSLv3>
279*b077aed3SPierre Pronchery
280*b077aed3SPierre ProncheryLists cipher suites which are only supported in at least TLS v1.2, TLS v1.0 or
281*b077aed3SPierre ProncherySSL v3.0 respectively.
282*b077aed3SPierre ProncheryNote: there are no cipher suites specific to TLS v1.1.
283*b077aed3SPierre ProncherySince this is only the minimum version, if, for example, TLSv1.0 is negotiated
284*b077aed3SPierre Proncherythen both TLSv1.0 and SSLv3.0 cipher suites are available.
285*b077aed3SPierre Pronchery
286*b077aed3SPierre ProncheryNote: these cipher strings B<do not> change the negotiated version of SSL or
287*b077aed3SPierre ProncheryTLS, they only affect the list of available cipher suites.
288*b077aed3SPierre Pronchery
289*b077aed3SPierre Pronchery=item B<AES128>, B<AES256>, B<AES>
290*b077aed3SPierre Pronchery
291*b077aed3SPierre Proncherycipher suites using 128 bit AES, 256 bit AES or either 128 or 256 bit AES.
292*b077aed3SPierre Pronchery
293*b077aed3SPierre Pronchery=item B<AESGCM>
294*b077aed3SPierre Pronchery
295*b077aed3SPierre ProncheryAES in Galois Counter Mode (GCM): these cipher suites are only supported
296*b077aed3SPierre Proncheryin TLS v1.2.
297*b077aed3SPierre Pronchery
298*b077aed3SPierre Pronchery=item B<AESCCM>, B<AESCCM8>
299*b077aed3SPierre Pronchery
300*b077aed3SPierre ProncheryAES in Cipher Block Chaining - Message Authentication Mode (CCM): these
301*b077aed3SPierre Proncherycipher suites are only supported in TLS v1.2. B<AESCCM> references CCM
302*b077aed3SPierre Proncherycipher suites using both 16 and 8 octet Integrity Check Value (ICV)
303*b077aed3SPierre Proncherywhile B<AESCCM8> only references 8 octet ICV.
304*b077aed3SPierre Pronchery
305*b077aed3SPierre Pronchery=item B<ARIA128>, B<ARIA256>, B<ARIA>
306*b077aed3SPierre Pronchery
307*b077aed3SPierre ProncheryCipher suites using 128 bit ARIA, 256 bit ARIA or either 128 or 256 bit
308*b077aed3SPierre ProncheryARIA.
309*b077aed3SPierre Pronchery
310*b077aed3SPierre Pronchery=item B<CAMELLIA128>, B<CAMELLIA256>, B<CAMELLIA>
311*b077aed3SPierre Pronchery
312*b077aed3SPierre ProncheryCipher suites using 128 bit CAMELLIA, 256 bit CAMELLIA or either 128 or 256 bit
313*b077aed3SPierre ProncheryCAMELLIA.
314*b077aed3SPierre Pronchery
315*b077aed3SPierre Pronchery=item B<CHACHA20>
316*b077aed3SPierre Pronchery
317*b077aed3SPierre ProncheryCipher suites using ChaCha20.
318*b077aed3SPierre Pronchery
319*b077aed3SPierre Pronchery=item B<3DES>
320*b077aed3SPierre Pronchery
321*b077aed3SPierre ProncheryCipher suites using triple DES.
322*b077aed3SPierre Pronchery
323*b077aed3SPierre Pronchery=item B<DES>
324*b077aed3SPierre Pronchery
325*b077aed3SPierre ProncheryCipher suites using DES (not triple DES).
326*b077aed3SPierre ProncheryAll these cipher suites have been removed in OpenSSL 1.1.0.
327*b077aed3SPierre Pronchery
328*b077aed3SPierre Pronchery=item B<RC4>
329*b077aed3SPierre Pronchery
330*b077aed3SPierre ProncheryCipher suites using RC4.
331*b077aed3SPierre Pronchery
332*b077aed3SPierre Pronchery=item B<RC2>
333*b077aed3SPierre Pronchery
334*b077aed3SPierre ProncheryCipher suites using RC2.
335*b077aed3SPierre Pronchery
336*b077aed3SPierre Pronchery=item B<IDEA>
337*b077aed3SPierre Pronchery
338*b077aed3SPierre ProncheryCipher suites using IDEA.
339*b077aed3SPierre Pronchery
340*b077aed3SPierre Pronchery=item B<SEED>
341*b077aed3SPierre Pronchery
342*b077aed3SPierre ProncheryCipher suites using SEED.
343*b077aed3SPierre Pronchery
344*b077aed3SPierre Pronchery=item B<MD5>
345*b077aed3SPierre Pronchery
346*b077aed3SPierre ProncheryCipher suites using MD5.
347*b077aed3SPierre Pronchery
348*b077aed3SPierre Pronchery=item B<SHA1>, B<SHA>
349*b077aed3SPierre Pronchery
350*b077aed3SPierre ProncheryCipher suites using SHA1.
351*b077aed3SPierre Pronchery
352*b077aed3SPierre Pronchery=item B<SHA256>, B<SHA384>
353*b077aed3SPierre Pronchery
354*b077aed3SPierre ProncheryCipher suites using SHA256 or SHA384.
355*b077aed3SPierre Pronchery
356*b077aed3SPierre Pronchery=item B<aGOST>
357*b077aed3SPierre Pronchery
358*b077aed3SPierre ProncheryCipher suites using GOST R 34.10 (either 2001 or 94) for authentication
359*b077aed3SPierre Pronchery(needs an engine supporting GOST algorithms).
360*b077aed3SPierre Pronchery
361*b077aed3SPierre Pronchery=item B<aGOST01>
362*b077aed3SPierre Pronchery
363*b077aed3SPierre ProncheryCipher suites using GOST R 34.10-2001 authentication.
364*b077aed3SPierre Pronchery
365*b077aed3SPierre Pronchery=item B<kGOST>
366*b077aed3SPierre Pronchery
367*b077aed3SPierre ProncheryCipher suites, using VKO 34.10 key exchange, specified in the RFC 4357.
368*b077aed3SPierre Pronchery
369*b077aed3SPierre Pronchery=item B<GOST94>
370*b077aed3SPierre Pronchery
371*b077aed3SPierre ProncheryCipher suites, using HMAC based on GOST R 34.11-94.
372*b077aed3SPierre Pronchery
373*b077aed3SPierre Pronchery=item B<GOST89MAC>
374*b077aed3SPierre Pronchery
375*b077aed3SPierre ProncheryCipher suites using GOST 28147-89 MAC B<instead of> HMAC.
376*b077aed3SPierre Pronchery
377*b077aed3SPierre Pronchery=item B<PSK>
378*b077aed3SPierre Pronchery
379*b077aed3SPierre ProncheryAll cipher suites using pre-shared keys (PSK).
380*b077aed3SPierre Pronchery
381*b077aed3SPierre Pronchery=item B<kPSK>, B<kECDHEPSK>, B<kDHEPSK>, B<kRSAPSK>
382*b077aed3SPierre Pronchery
383*b077aed3SPierre ProncheryCipher suites using PSK key exchange, ECDHE_PSK, DHE_PSK or RSA_PSK.
384*b077aed3SPierre Pronchery
385*b077aed3SPierre Pronchery=item B<aPSK>
386*b077aed3SPierre Pronchery
387*b077aed3SPierre ProncheryCipher suites using PSK authentication (currently all PSK modes apart from
388*b077aed3SPierre ProncheryRSA_PSK).
389*b077aed3SPierre Pronchery
390*b077aed3SPierre Pronchery=item B<SUITEB128>, B<SUITEB128ONLY>, B<SUITEB192>
391*b077aed3SPierre Pronchery
392*b077aed3SPierre ProncheryEnables suite B mode of operation using 128 (permitting 192 bit mode by peer)
393*b077aed3SPierre Pronchery128 bit (not permitting 192 bit by peer) or 192 bit level of security
394*b077aed3SPierre Proncheryrespectively.
395*b077aed3SPierre ProncheryIf used these cipherstrings should appear first in the cipher
396*b077aed3SPierre Proncherylist and anything after them is ignored.
397*b077aed3SPierre ProncherySetting Suite B mode has additional consequences required to comply with
398*b077aed3SPierre ProncheryRFC6460.
399*b077aed3SPierre ProncheryIn particular the supported signature algorithms is reduced to support only
400*b077aed3SPierre ProncheryECDSA and SHA256 or SHA384, only the elliptic curves P-256 and P-384 can be
401*b077aed3SPierre Proncheryused and only the two suite B compliant cipher suites
402*b077aed3SPierre Pronchery(ECDHE-ECDSA-AES128-GCM-SHA256 and ECDHE-ECDSA-AES256-GCM-SHA384) are
403*b077aed3SPierre Proncherypermissible.
404*b077aed3SPierre Pronchery
405*b077aed3SPierre Pronchery=item B<CBC>
406*b077aed3SPierre Pronchery
407*b077aed3SPierre ProncheryAll cipher suites using encryption algorithm in Cipher Block Chaining (CBC)
408*b077aed3SPierre Proncherymode. These cipher suites are only supported in TLS v1.2 and earlier. Currently
409*b077aed3SPierre Proncheryit's an alias for the following cipherstrings: B<SSL_DES>, B<SSL_3DES>, B<SSL_RC2>,
410*b077aed3SPierre ProncheryB<SSL_IDEA>, B<SSL_AES128>, B<SSL_AES256>, B<SSL_CAMELLIA128>, B<SSL_CAMELLIA256>, B<SSL_SEED>.
411*b077aed3SPierre Pronchery
412*b077aed3SPierre Pronchery=back
413*b077aed3SPierre Pronchery
414*b077aed3SPierre Pronchery=head1 CIPHER SUITE NAMES
415*b077aed3SPierre Pronchery
416*b077aed3SPierre ProncheryThe following lists give the SSL or TLS cipher suites names from the
417*b077aed3SPierre Proncheryrelevant specification and their OpenSSL equivalents. It should be noted,
418*b077aed3SPierre Proncherythat several cipher suite names do not include the authentication used,
419*b077aed3SPierre Proncherye.g. DES-CBC3-SHA. In these cases, RSA authentication is used.
420*b077aed3SPierre Pronchery
421*b077aed3SPierre Pronchery=head2 SSL v3.0 cipher suites
422*b077aed3SPierre Pronchery
423*b077aed3SPierre Pronchery SSL_RSA_WITH_NULL_MD5                   NULL-MD5
424*b077aed3SPierre Pronchery SSL_RSA_WITH_NULL_SHA                   NULL-SHA
425*b077aed3SPierre Pronchery SSL_RSA_WITH_RC4_128_MD5                RC4-MD5
426*b077aed3SPierre Pronchery SSL_RSA_WITH_RC4_128_SHA                RC4-SHA
427*b077aed3SPierre Pronchery SSL_RSA_WITH_IDEA_CBC_SHA               IDEA-CBC-SHA
428*b077aed3SPierre Pronchery SSL_RSA_WITH_3DES_EDE_CBC_SHA           DES-CBC3-SHA
429*b077aed3SPierre Pronchery
430*b077aed3SPierre Pronchery SSL_DH_DSS_WITH_3DES_EDE_CBC_SHA        DH-DSS-DES-CBC3-SHA
431*b077aed3SPierre Pronchery SSL_DH_RSA_WITH_3DES_EDE_CBC_SHA        DH-RSA-DES-CBC3-SHA
432*b077aed3SPierre Pronchery SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA       DHE-DSS-DES-CBC3-SHA
433*b077aed3SPierre Pronchery SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA       DHE-RSA-DES-CBC3-SHA
434*b077aed3SPierre Pronchery
435*b077aed3SPierre Pronchery SSL_DH_anon_WITH_RC4_128_MD5            ADH-RC4-MD5
436*b077aed3SPierre Pronchery SSL_DH_anon_WITH_3DES_EDE_CBC_SHA       ADH-DES-CBC3-SHA
437*b077aed3SPierre Pronchery
438*b077aed3SPierre Pronchery SSL_FORTEZZA_KEA_WITH_NULL_SHA          Not implemented.
439*b077aed3SPierre Pronchery SSL_FORTEZZA_KEA_WITH_FORTEZZA_CBC_SHA  Not implemented.
440*b077aed3SPierre Pronchery SSL_FORTEZZA_KEA_WITH_RC4_128_SHA       Not implemented.
441*b077aed3SPierre Pronchery
442*b077aed3SPierre Pronchery=head2 TLS v1.0 cipher suites
443*b077aed3SPierre Pronchery
444*b077aed3SPierre Pronchery TLS_RSA_WITH_NULL_MD5                   NULL-MD5
445*b077aed3SPierre Pronchery TLS_RSA_WITH_NULL_SHA                   NULL-SHA
446*b077aed3SPierre Pronchery TLS_RSA_WITH_RC4_128_MD5                RC4-MD5
447*b077aed3SPierre Pronchery TLS_RSA_WITH_RC4_128_SHA                RC4-SHA
448*b077aed3SPierre Pronchery TLS_RSA_WITH_IDEA_CBC_SHA               IDEA-CBC-SHA
449*b077aed3SPierre Pronchery TLS_RSA_WITH_3DES_EDE_CBC_SHA           DES-CBC3-SHA
450*b077aed3SPierre Pronchery
451*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA        Not implemented.
452*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA        Not implemented.
453*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA       DHE-DSS-DES-CBC3-SHA
454*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA       DHE-RSA-DES-CBC3-SHA
455*b077aed3SPierre Pronchery
456*b077aed3SPierre Pronchery TLS_DH_anon_WITH_RC4_128_MD5            ADH-RC4-MD5
457*b077aed3SPierre Pronchery TLS_DH_anon_WITH_3DES_EDE_CBC_SHA       ADH-DES-CBC3-SHA
458*b077aed3SPierre Pronchery
459*b077aed3SPierre Pronchery=head2 AES cipher suites from RFC3268, extending TLS v1.0
460*b077aed3SPierre Pronchery
461*b077aed3SPierre Pronchery TLS_RSA_WITH_AES_128_CBC_SHA            AES128-SHA
462*b077aed3SPierre Pronchery TLS_RSA_WITH_AES_256_CBC_SHA            AES256-SHA
463*b077aed3SPierre Pronchery
464*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_AES_128_CBC_SHA         DH-DSS-AES128-SHA
465*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_AES_256_CBC_SHA         DH-DSS-AES256-SHA
466*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_AES_128_CBC_SHA         DH-RSA-AES128-SHA
467*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_AES_256_CBC_SHA         DH-RSA-AES256-SHA
468*b077aed3SPierre Pronchery
469*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_AES_128_CBC_SHA        DHE-DSS-AES128-SHA
470*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_AES_256_CBC_SHA        DHE-DSS-AES256-SHA
471*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_AES_128_CBC_SHA        DHE-RSA-AES128-SHA
472*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_AES_256_CBC_SHA        DHE-RSA-AES256-SHA
473*b077aed3SPierre Pronchery
474*b077aed3SPierre Pronchery TLS_DH_anon_WITH_AES_128_CBC_SHA        ADH-AES128-SHA
475*b077aed3SPierre Pronchery TLS_DH_anon_WITH_AES_256_CBC_SHA        ADH-AES256-SHA
476*b077aed3SPierre Pronchery
477*b077aed3SPierre Pronchery=head2 Camellia cipher suites from RFC4132, extending TLS v1.0
478*b077aed3SPierre Pronchery
479*b077aed3SPierre Pronchery TLS_RSA_WITH_CAMELLIA_128_CBC_SHA      CAMELLIA128-SHA
480*b077aed3SPierre Pronchery TLS_RSA_WITH_CAMELLIA_256_CBC_SHA      CAMELLIA256-SHA
481*b077aed3SPierre Pronchery
482*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA   DH-DSS-CAMELLIA128-SHA
483*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA   DH-DSS-CAMELLIA256-SHA
484*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA   DH-RSA-CAMELLIA128-SHA
485*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA   DH-RSA-CAMELLIA256-SHA
486*b077aed3SPierre Pronchery
487*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA  DHE-DSS-CAMELLIA128-SHA
488*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA  DHE-DSS-CAMELLIA256-SHA
489*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA  DHE-RSA-CAMELLIA128-SHA
490*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA  DHE-RSA-CAMELLIA256-SHA
491*b077aed3SPierre Pronchery
492*b077aed3SPierre Pronchery TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA  ADH-CAMELLIA128-SHA
493*b077aed3SPierre Pronchery TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA  ADH-CAMELLIA256-SHA
494*b077aed3SPierre Pronchery
495*b077aed3SPierre Pronchery=head2 SEED cipher suites from RFC4162, extending TLS v1.0
496*b077aed3SPierre Pronchery
497*b077aed3SPierre Pronchery TLS_RSA_WITH_SEED_CBC_SHA              SEED-SHA
498*b077aed3SPierre Pronchery
499*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_SEED_CBC_SHA           DH-DSS-SEED-SHA
500*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_SEED_CBC_SHA           DH-RSA-SEED-SHA
501*b077aed3SPierre Pronchery
502*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_SEED_CBC_SHA          DHE-DSS-SEED-SHA
503*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_SEED_CBC_SHA          DHE-RSA-SEED-SHA
504*b077aed3SPierre Pronchery
505*b077aed3SPierre Pronchery TLS_DH_anon_WITH_SEED_CBC_SHA          ADH-SEED-SHA
506*b077aed3SPierre Pronchery
507*b077aed3SPierre Pronchery=head2 GOST cipher suites from draft-chudov-cryptopro-cptls, extending TLS v1.0
508*b077aed3SPierre Pronchery
509*b077aed3SPierre ProncheryNote: these ciphers require an engine which including GOST cryptographic
510*b077aed3SPierre Proncheryalgorithms, such as the B<gost> engine, which isn't part of the OpenSSL
511*b077aed3SPierre Proncherydistribution.
512*b077aed3SPierre Pronchery
513*b077aed3SPierre Pronchery TLS_GOSTR341094_WITH_28147_CNT_IMIT GOST94-GOST89-GOST89
514*b077aed3SPierre Pronchery TLS_GOSTR341001_WITH_28147_CNT_IMIT GOST2001-GOST89-GOST89
515*b077aed3SPierre Pronchery TLS_GOSTR341094_WITH_NULL_GOSTR3411 GOST94-NULL-GOST94
516*b077aed3SPierre Pronchery TLS_GOSTR341001_WITH_NULL_GOSTR3411 GOST2001-NULL-GOST94
517*b077aed3SPierre Pronchery
518*b077aed3SPierre Pronchery=head2 GOST cipher suites, extending TLS v1.2
519*b077aed3SPierre Pronchery
520*b077aed3SPierre ProncheryNote: these ciphers require an engine which including GOST cryptographic
521*b077aed3SPierre Proncheryalgorithms, such as the B<gost> engine, which isn't part of the OpenSSL
522*b077aed3SPierre Proncherydistribution.
523*b077aed3SPierre Pronchery
524*b077aed3SPierre Pronchery TLS_GOSTR341112_256_WITH_28147_CNT_IMIT GOST2012-GOST8912-GOST8912
525*b077aed3SPierre Pronchery TLS_GOSTR341112_256_WITH_NULL_GOSTR3411 GOST2012-NULL-GOST12
526*b077aed3SPierre Pronchery
527*b077aed3SPierre ProncheryNote: GOST2012-GOST8912-GOST8912 is an alias for two ciphers ID
528*b077aed3SPierre Proncheryold LEGACY-GOST2012-GOST8912-GOST8912 and new IANA-GOST2012-GOST8912-GOST8912
529*b077aed3SPierre Pronchery
530*b077aed3SPierre Pronchery
531*b077aed3SPierre Pronchery=head2 Additional Export 1024 and other cipher suites
532*b077aed3SPierre Pronchery
533*b077aed3SPierre ProncheryNote: these ciphers can also be used in SSL v3.
534*b077aed3SPierre Pronchery
535*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_RC4_128_SHA            DHE-DSS-RC4-SHA
536*b077aed3SPierre Pronchery
537*b077aed3SPierre Pronchery=head2 Elliptic curve cipher suites
538*b077aed3SPierre Pronchery
539*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_NULL_SHA             ECDHE-RSA-NULL-SHA
540*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_RC4_128_SHA          ECDHE-RSA-RC4-SHA
541*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA     ECDHE-RSA-DES-CBC3-SHA
542*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA      ECDHE-RSA-AES128-SHA
543*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA      ECDHE-RSA-AES256-SHA
544*b077aed3SPierre Pronchery
545*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_NULL_SHA           ECDHE-ECDSA-NULL-SHA
546*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_RC4_128_SHA        ECDHE-ECDSA-RC4-SHA
547*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA   ECDHE-ECDSA-DES-CBC3-SHA
548*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA    ECDHE-ECDSA-AES128-SHA
549*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA    ECDHE-ECDSA-AES256-SHA
550*b077aed3SPierre Pronchery
551*b077aed3SPierre Pronchery TLS_ECDH_anon_WITH_NULL_SHA             AECDH-NULL-SHA
552*b077aed3SPierre Pronchery TLS_ECDH_anon_WITH_RC4_128_SHA          AECDH-RC4-SHA
553*b077aed3SPierre Pronchery TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA     AECDH-DES-CBC3-SHA
554*b077aed3SPierre Pronchery TLS_ECDH_anon_WITH_AES_128_CBC_SHA      AECDH-AES128-SHA
555*b077aed3SPierre Pronchery TLS_ECDH_anon_WITH_AES_256_CBC_SHA      AECDH-AES256-SHA
556*b077aed3SPierre Pronchery
557*b077aed3SPierre Pronchery=head2 TLS v1.2 cipher suites
558*b077aed3SPierre Pronchery
559*b077aed3SPierre Pronchery TLS_RSA_WITH_NULL_SHA256                  NULL-SHA256
560*b077aed3SPierre Pronchery
561*b077aed3SPierre Pronchery TLS_RSA_WITH_AES_128_CBC_SHA256           AES128-SHA256
562*b077aed3SPierre Pronchery TLS_RSA_WITH_AES_256_CBC_SHA256           AES256-SHA256
563*b077aed3SPierre Pronchery TLS_RSA_WITH_AES_128_GCM_SHA256           AES128-GCM-SHA256
564*b077aed3SPierre Pronchery TLS_RSA_WITH_AES_256_GCM_SHA384           AES256-GCM-SHA384
565*b077aed3SPierre Pronchery
566*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_AES_128_CBC_SHA256        DH-RSA-AES128-SHA256
567*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_AES_256_CBC_SHA256        DH-RSA-AES256-SHA256
568*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_AES_128_GCM_SHA256        DH-RSA-AES128-GCM-SHA256
569*b077aed3SPierre Pronchery TLS_DH_RSA_WITH_AES_256_GCM_SHA384        DH-RSA-AES256-GCM-SHA384
570*b077aed3SPierre Pronchery
571*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_AES_128_CBC_SHA256        DH-DSS-AES128-SHA256
572*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_AES_256_CBC_SHA256        DH-DSS-AES256-SHA256
573*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_AES_128_GCM_SHA256        DH-DSS-AES128-GCM-SHA256
574*b077aed3SPierre Pronchery TLS_DH_DSS_WITH_AES_256_GCM_SHA384        DH-DSS-AES256-GCM-SHA384
575*b077aed3SPierre Pronchery
576*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_AES_128_CBC_SHA256       DHE-RSA-AES128-SHA256
577*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_AES_256_CBC_SHA256       DHE-RSA-AES256-SHA256
578*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_AES_128_GCM_SHA256       DHE-RSA-AES128-GCM-SHA256
579*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_AES_256_GCM_SHA384       DHE-RSA-AES256-GCM-SHA384
580*b077aed3SPierre Pronchery
581*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_AES_128_CBC_SHA256       DHE-DSS-AES128-SHA256
582*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_AES_256_CBC_SHA256       DHE-DSS-AES256-SHA256
583*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_AES_128_GCM_SHA256       DHE-DSS-AES128-GCM-SHA256
584*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_AES_256_GCM_SHA384       DHE-DSS-AES256-GCM-SHA384
585*b077aed3SPierre Pronchery
586*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256     ECDHE-RSA-AES128-SHA256
587*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384     ECDHE-RSA-AES256-SHA384
588*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256     ECDHE-RSA-AES128-GCM-SHA256
589*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384     ECDHE-RSA-AES256-GCM-SHA384
590*b077aed3SPierre Pronchery
591*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256   ECDHE-ECDSA-AES128-SHA256
592*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384   ECDHE-ECDSA-AES256-SHA384
593*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256   ECDHE-ECDSA-AES128-GCM-SHA256
594*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384   ECDHE-ECDSA-AES256-GCM-SHA384
595*b077aed3SPierre Pronchery
596*b077aed3SPierre Pronchery TLS_DH_anon_WITH_AES_128_CBC_SHA256       ADH-AES128-SHA256
597*b077aed3SPierre Pronchery TLS_DH_anon_WITH_AES_256_CBC_SHA256       ADH-AES256-SHA256
598*b077aed3SPierre Pronchery TLS_DH_anon_WITH_AES_128_GCM_SHA256       ADH-AES128-GCM-SHA256
599*b077aed3SPierre Pronchery TLS_DH_anon_WITH_AES_256_GCM_SHA384       ADH-AES256-GCM-SHA384
600*b077aed3SPierre Pronchery
601*b077aed3SPierre Pronchery RSA_WITH_AES_128_CCM                      AES128-CCM
602*b077aed3SPierre Pronchery RSA_WITH_AES_256_CCM                      AES256-CCM
603*b077aed3SPierre Pronchery DHE_RSA_WITH_AES_128_CCM                  DHE-RSA-AES128-CCM
604*b077aed3SPierre Pronchery DHE_RSA_WITH_AES_256_CCM                  DHE-RSA-AES256-CCM
605*b077aed3SPierre Pronchery RSA_WITH_AES_128_CCM_8                    AES128-CCM8
606*b077aed3SPierre Pronchery RSA_WITH_AES_256_CCM_8                    AES256-CCM8
607*b077aed3SPierre Pronchery DHE_RSA_WITH_AES_128_CCM_8                DHE-RSA-AES128-CCM8
608*b077aed3SPierre Pronchery DHE_RSA_WITH_AES_256_CCM_8                DHE-RSA-AES256-CCM8
609*b077aed3SPierre Pronchery ECDHE_ECDSA_WITH_AES_128_CCM              ECDHE-ECDSA-AES128-CCM
610*b077aed3SPierre Pronchery ECDHE_ECDSA_WITH_AES_256_CCM              ECDHE-ECDSA-AES256-CCM
611*b077aed3SPierre Pronchery ECDHE_ECDSA_WITH_AES_128_CCM_8            ECDHE-ECDSA-AES128-CCM8
612*b077aed3SPierre Pronchery ECDHE_ECDSA_WITH_AES_256_CCM_8            ECDHE-ECDSA-AES256-CCM8
613*b077aed3SPierre Pronchery
614*b077aed3SPierre Pronchery=head2 ARIA cipher suites from RFC6209, extending TLS v1.2
615*b077aed3SPierre Pronchery
616*b077aed3SPierre ProncheryNote: the CBC modes mentioned in this RFC are not supported.
617*b077aed3SPierre Pronchery
618*b077aed3SPierre Pronchery TLS_RSA_WITH_ARIA_128_GCM_SHA256          ARIA128-GCM-SHA256
619*b077aed3SPierre Pronchery TLS_RSA_WITH_ARIA_256_GCM_SHA384          ARIA256-GCM-SHA384
620*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256      DHE-RSA-ARIA128-GCM-SHA256
621*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384      DHE-RSA-ARIA256-GCM-SHA384
622*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256      DHE-DSS-ARIA128-GCM-SHA256
623*b077aed3SPierre Pronchery TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384      DHE-DSS-ARIA256-GCM-SHA384
624*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256  ECDHE-ECDSA-ARIA128-GCM-SHA256
625*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384  ECDHE-ECDSA-ARIA256-GCM-SHA384
626*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256    ECDHE-ARIA128-GCM-SHA256
627*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384    ECDHE-ARIA256-GCM-SHA384
628*b077aed3SPierre Pronchery TLS_PSK_WITH_ARIA_128_GCM_SHA256          PSK-ARIA128-GCM-SHA256
629*b077aed3SPierre Pronchery TLS_PSK_WITH_ARIA_256_GCM_SHA384          PSK-ARIA256-GCM-SHA384
630*b077aed3SPierre Pronchery TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256      DHE-PSK-ARIA128-GCM-SHA256
631*b077aed3SPierre Pronchery TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384      DHE-PSK-ARIA256-GCM-SHA384
632*b077aed3SPierre Pronchery TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256      RSA-PSK-ARIA128-GCM-SHA256
633*b077aed3SPierre Pronchery TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384      RSA-PSK-ARIA256-GCM-SHA384
634*b077aed3SPierre Pronchery
635*b077aed3SPierre Pronchery=head2 Camellia HMAC-Based cipher suites from RFC6367, extending TLS v1.2
636*b077aed3SPierre Pronchery
637*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256 ECDHE-ECDSA-CAMELLIA128-SHA256
638*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384 ECDHE-ECDSA-CAMELLIA256-SHA384
639*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256   ECDHE-RSA-CAMELLIA128-SHA256
640*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384   ECDHE-RSA-CAMELLIA256-SHA384
641*b077aed3SPierre Pronchery
642*b077aed3SPierre Pronchery=head2 Pre-shared keying (PSK) cipher suites
643*b077aed3SPierre Pronchery
644*b077aed3SPierre Pronchery PSK_WITH_NULL_SHA                         PSK-NULL-SHA
645*b077aed3SPierre Pronchery DHE_PSK_WITH_NULL_SHA                     DHE-PSK-NULL-SHA
646*b077aed3SPierre Pronchery RSA_PSK_WITH_NULL_SHA                     RSA-PSK-NULL-SHA
647*b077aed3SPierre Pronchery
648*b077aed3SPierre Pronchery PSK_WITH_RC4_128_SHA                      PSK-RC4-SHA
649*b077aed3SPierre Pronchery PSK_WITH_3DES_EDE_CBC_SHA                 PSK-3DES-EDE-CBC-SHA
650*b077aed3SPierre Pronchery PSK_WITH_AES_128_CBC_SHA                  PSK-AES128-CBC-SHA
651*b077aed3SPierre Pronchery PSK_WITH_AES_256_CBC_SHA                  PSK-AES256-CBC-SHA
652*b077aed3SPierre Pronchery
653*b077aed3SPierre Pronchery DHE_PSK_WITH_RC4_128_SHA                  DHE-PSK-RC4-SHA
654*b077aed3SPierre Pronchery DHE_PSK_WITH_3DES_EDE_CBC_SHA             DHE-PSK-3DES-EDE-CBC-SHA
655*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_128_CBC_SHA              DHE-PSK-AES128-CBC-SHA
656*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_256_CBC_SHA              DHE-PSK-AES256-CBC-SHA
657*b077aed3SPierre Pronchery
658*b077aed3SPierre Pronchery RSA_PSK_WITH_RC4_128_SHA                  RSA-PSK-RC4-SHA
659*b077aed3SPierre Pronchery RSA_PSK_WITH_3DES_EDE_CBC_SHA             RSA-PSK-3DES-EDE-CBC-SHA
660*b077aed3SPierre Pronchery RSA_PSK_WITH_AES_128_CBC_SHA              RSA-PSK-AES128-CBC-SHA
661*b077aed3SPierre Pronchery RSA_PSK_WITH_AES_256_CBC_SHA              RSA-PSK-AES256-CBC-SHA
662*b077aed3SPierre Pronchery
663*b077aed3SPierre Pronchery PSK_WITH_AES_128_GCM_SHA256               PSK-AES128-GCM-SHA256
664*b077aed3SPierre Pronchery PSK_WITH_AES_256_GCM_SHA384               PSK-AES256-GCM-SHA384
665*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_128_GCM_SHA256           DHE-PSK-AES128-GCM-SHA256
666*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_256_GCM_SHA384           DHE-PSK-AES256-GCM-SHA384
667*b077aed3SPierre Pronchery RSA_PSK_WITH_AES_128_GCM_SHA256           RSA-PSK-AES128-GCM-SHA256
668*b077aed3SPierre Pronchery RSA_PSK_WITH_AES_256_GCM_SHA384           RSA-PSK-AES256-GCM-SHA384
669*b077aed3SPierre Pronchery
670*b077aed3SPierre Pronchery PSK_WITH_AES_128_CBC_SHA256               PSK-AES128-CBC-SHA256
671*b077aed3SPierre Pronchery PSK_WITH_AES_256_CBC_SHA384               PSK-AES256-CBC-SHA384
672*b077aed3SPierre Pronchery PSK_WITH_NULL_SHA256                      PSK-NULL-SHA256
673*b077aed3SPierre Pronchery PSK_WITH_NULL_SHA384                      PSK-NULL-SHA384
674*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_128_CBC_SHA256           DHE-PSK-AES128-CBC-SHA256
675*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_256_CBC_SHA384           DHE-PSK-AES256-CBC-SHA384
676*b077aed3SPierre Pronchery DHE_PSK_WITH_NULL_SHA256                  DHE-PSK-NULL-SHA256
677*b077aed3SPierre Pronchery DHE_PSK_WITH_NULL_SHA384                  DHE-PSK-NULL-SHA384
678*b077aed3SPierre Pronchery RSA_PSK_WITH_AES_128_CBC_SHA256           RSA-PSK-AES128-CBC-SHA256
679*b077aed3SPierre Pronchery RSA_PSK_WITH_AES_256_CBC_SHA384           RSA-PSK-AES256-CBC-SHA384
680*b077aed3SPierre Pronchery RSA_PSK_WITH_NULL_SHA256                  RSA-PSK-NULL-SHA256
681*b077aed3SPierre Pronchery RSA_PSK_WITH_NULL_SHA384                  RSA-PSK-NULL-SHA384
682*b077aed3SPierre Pronchery PSK_WITH_AES_128_GCM_SHA256               PSK-AES128-GCM-SHA256
683*b077aed3SPierre Pronchery PSK_WITH_AES_256_GCM_SHA384               PSK-AES256-GCM-SHA384
684*b077aed3SPierre Pronchery
685*b077aed3SPierre Pronchery ECDHE_PSK_WITH_RC4_128_SHA                ECDHE-PSK-RC4-SHA
686*b077aed3SPierre Pronchery ECDHE_PSK_WITH_3DES_EDE_CBC_SHA           ECDHE-PSK-3DES-EDE-CBC-SHA
687*b077aed3SPierre Pronchery ECDHE_PSK_WITH_AES_128_CBC_SHA            ECDHE-PSK-AES128-CBC-SHA
688*b077aed3SPierre Pronchery ECDHE_PSK_WITH_AES_256_CBC_SHA            ECDHE-PSK-AES256-CBC-SHA
689*b077aed3SPierre Pronchery ECDHE_PSK_WITH_AES_128_CBC_SHA256         ECDHE-PSK-AES128-CBC-SHA256
690*b077aed3SPierre Pronchery ECDHE_PSK_WITH_AES_256_CBC_SHA384         ECDHE-PSK-AES256-CBC-SHA384
691*b077aed3SPierre Pronchery ECDHE_PSK_WITH_NULL_SHA                   ECDHE-PSK-NULL-SHA
692*b077aed3SPierre Pronchery ECDHE_PSK_WITH_NULL_SHA256                ECDHE-PSK-NULL-SHA256
693*b077aed3SPierre Pronchery ECDHE_PSK_WITH_NULL_SHA384                ECDHE-PSK-NULL-SHA384
694*b077aed3SPierre Pronchery
695*b077aed3SPierre Pronchery PSK_WITH_CAMELLIA_128_CBC_SHA256          PSK-CAMELLIA128-SHA256
696*b077aed3SPierre Pronchery PSK_WITH_CAMELLIA_256_CBC_SHA384          PSK-CAMELLIA256-SHA384
697*b077aed3SPierre Pronchery
698*b077aed3SPierre Pronchery DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256      DHE-PSK-CAMELLIA128-SHA256
699*b077aed3SPierre Pronchery DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384      DHE-PSK-CAMELLIA256-SHA384
700*b077aed3SPierre Pronchery
701*b077aed3SPierre Pronchery RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256      RSA-PSK-CAMELLIA128-SHA256
702*b077aed3SPierre Pronchery RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384      RSA-PSK-CAMELLIA256-SHA384
703*b077aed3SPierre Pronchery
704*b077aed3SPierre Pronchery ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256    ECDHE-PSK-CAMELLIA128-SHA256
705*b077aed3SPierre Pronchery ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384    ECDHE-PSK-CAMELLIA256-SHA384
706*b077aed3SPierre Pronchery
707*b077aed3SPierre Pronchery PSK_WITH_AES_128_CCM                      PSK-AES128-CCM
708*b077aed3SPierre Pronchery PSK_WITH_AES_256_CCM                      PSK-AES256-CCM
709*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_128_CCM                  DHE-PSK-AES128-CCM
710*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_256_CCM                  DHE-PSK-AES256-CCM
711*b077aed3SPierre Pronchery PSK_WITH_AES_128_CCM_8                    PSK-AES128-CCM8
712*b077aed3SPierre Pronchery PSK_WITH_AES_256_CCM_8                    PSK-AES256-CCM8
713*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_128_CCM_8                DHE-PSK-AES128-CCM8
714*b077aed3SPierre Pronchery DHE_PSK_WITH_AES_256_CCM_8                DHE-PSK-AES256-CCM8
715*b077aed3SPierre Pronchery
716*b077aed3SPierre Pronchery=head2 ChaCha20-Poly1305 cipher suites, extending TLS v1.2
717*b077aed3SPierre Pronchery
718*b077aed3SPierre Pronchery TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256      ECDHE-RSA-CHACHA20-POLY1305
719*b077aed3SPierre Pronchery TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256    ECDHE-ECDSA-CHACHA20-POLY1305
720*b077aed3SPierre Pronchery TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256        DHE-RSA-CHACHA20-POLY1305
721*b077aed3SPierre Pronchery TLS_PSK_WITH_CHACHA20_POLY1305_SHA256            PSK-CHACHA20-POLY1305
722*b077aed3SPierre Pronchery TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256      ECDHE-PSK-CHACHA20-POLY1305
723*b077aed3SPierre Pronchery TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256        DHE-PSK-CHACHA20-POLY1305
724*b077aed3SPierre Pronchery TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256        RSA-PSK-CHACHA20-POLY1305
725*b077aed3SPierre Pronchery
726*b077aed3SPierre Pronchery=head2 TLS v1.3 cipher suites
727*b077aed3SPierre Pronchery
728*b077aed3SPierre Pronchery TLS_AES_128_GCM_SHA256                     TLS_AES_128_GCM_SHA256
729*b077aed3SPierre Pronchery TLS_AES_256_GCM_SHA384                     TLS_AES_256_GCM_SHA384
730*b077aed3SPierre Pronchery TLS_CHACHA20_POLY1305_SHA256               TLS_CHACHA20_POLY1305_SHA256
731*b077aed3SPierre Pronchery TLS_AES_128_CCM_SHA256                     TLS_AES_128_CCM_SHA256
732*b077aed3SPierre Pronchery TLS_AES_128_CCM_8_SHA256                   TLS_AES_128_CCM_8_SHA256
733*b077aed3SPierre Pronchery
734*b077aed3SPierre Pronchery=head2 Older names used by OpenSSL
735*b077aed3SPierre Pronchery
736*b077aed3SPierre ProncheryThe following names are accepted by older releases:
737*b077aed3SPierre Pronchery
738*b077aed3SPierre Pronchery SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA    EDH-RSA-DES-CBC3-SHA (DHE-RSA-DES-CBC3-SHA)
739*b077aed3SPierre Pronchery SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA    EDH-DSS-DES-CBC3-SHA (DHE-DSS-DES-CBC3-SHA)
740*b077aed3SPierre Pronchery
741*b077aed3SPierre Pronchery=head1 NOTES
742*b077aed3SPierre Pronchery
743*b077aed3SPierre ProncherySome compiled versions of OpenSSL may not include all the ciphers
744*b077aed3SPierre Proncherylisted here because some ciphers were excluded at compile time.
745*b077aed3SPierre Pronchery
746*b077aed3SPierre Pronchery=head1 EXAMPLES
747*b077aed3SPierre Pronchery
748*b077aed3SPierre ProncheryVerbose listing of all OpenSSL ciphers including NULL ciphers:
749*b077aed3SPierre Pronchery
750*b077aed3SPierre Pronchery openssl ciphers -v 'ALL:eNULL'
751*b077aed3SPierre Pronchery
752*b077aed3SPierre ProncheryInclude all ciphers except NULL and anonymous DH then sort by
753*b077aed3SPierre Proncherystrength:
754*b077aed3SPierre Pronchery
755*b077aed3SPierre Pronchery openssl ciphers -v 'ALL:!ADH:@STRENGTH'
756*b077aed3SPierre Pronchery
757*b077aed3SPierre ProncheryInclude all ciphers except ones with no encryption (eNULL) or no
758*b077aed3SPierre Proncheryauthentication (aNULL):
759*b077aed3SPierre Pronchery
760*b077aed3SPierre Pronchery openssl ciphers -v 'ALL:!aNULL'
761*b077aed3SPierre Pronchery
762*b077aed3SPierre ProncheryInclude only 3DES ciphers and then place RSA ciphers last:
763*b077aed3SPierre Pronchery
764*b077aed3SPierre Pronchery openssl ciphers -v '3DES:+RSA'
765*b077aed3SPierre Pronchery
766*b077aed3SPierre ProncheryInclude all RC4 ciphers but leave out those without authentication:
767*b077aed3SPierre Pronchery
768*b077aed3SPierre Pronchery openssl ciphers -v 'RC4:!COMPLEMENTOFDEFAULT'
769*b077aed3SPierre Pronchery
770*b077aed3SPierre ProncheryInclude all ciphers with RSA authentication but leave out ciphers without
771*b077aed3SPierre Proncheryencryption.
772*b077aed3SPierre Pronchery
773*b077aed3SPierre Pronchery openssl ciphers -v 'RSA:!COMPLEMENTOFALL'
774*b077aed3SPierre Pronchery
775*b077aed3SPierre ProncherySet security level to 2 and display all ciphers consistent with level 2:
776*b077aed3SPierre Pronchery
777*b077aed3SPierre Pronchery openssl ciphers -s -v 'ALL:@SECLEVEL=2'
778*b077aed3SPierre Pronchery
779*b077aed3SPierre Pronchery=head1 SEE ALSO
780*b077aed3SPierre Pronchery
781*b077aed3SPierre ProncheryL<openssl(1)>,
782*b077aed3SPierre ProncheryL<openssl-s_client(1)>,
783*b077aed3SPierre ProncheryL<openssl-s_server(1)>,
784*b077aed3SPierre ProncheryL<ssl(7)>
785*b077aed3SPierre Pronchery
786*b077aed3SPierre Pronchery=head1 HISTORY
787*b077aed3SPierre Pronchery
788*b077aed3SPierre ProncheryThe B<-V> option was added in OpenSSL 1.0.0.
789*b077aed3SPierre Pronchery
790*b077aed3SPierre ProncheryThe B<-stdname> is only available if OpenSSL is built with tracing enabled
791*b077aed3SPierre Pronchery(B<enable-ssl-trace> argument to Configure) before OpenSSL 1.1.1.
792*b077aed3SPierre Pronchery
793*b077aed3SPierre ProncheryThe B<-convert> option was added in OpenSSL 1.1.1.
794*b077aed3SPierre Pronchery
795*b077aed3SPierre Pronchery=head1 COPYRIGHT
796*b077aed3SPierre Pronchery
797*b077aed3SPierre ProncheryCopyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
798*b077aed3SPierre Pronchery
799*b077aed3SPierre ProncheryLicensed under the Apache License 2.0 (the "License").  You may not use
800*b077aed3SPierre Proncherythis file except in compliance with the License.  You can obtain a copy
801*b077aed3SPierre Proncheryin the file LICENSE in the source distribution or at
802*b077aed3SPierre ProncheryL<https://www.openssl.org/source/license.html>.
803*b077aed3SPierre Pronchery
804*b077aed3SPierre Pronchery=cut
805