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