4ff57841241a98c575db2ea8102b2f25f40776c6
[openssl.git] / doc / man1 / openssl.pod
1 =pod
2
3 =head1 NAME
4
5 openssl - OpenSSL command line tool
6
7 =head1 SYNOPSIS
8
9 B<openssl>
10 I<command>
11 [ I<options> ... ]
12 [ I<parameters> ... ]
13
14 B<openssl>
15 B<list>
16 B<-standard-commands> |
17 B<-digest-commands> |
18 B<-cipher-commands> |
19 B<-cipher-algorithms> |
20 B<-digest-algorithms> |
21 B<-mac-algorithms> |
22 B<-public-key-algorithms>
23
24 B<openssl> B<no->I<XXX> [ I<options> ]
25
26 =head1 DESCRIPTION
27
28 OpenSSL is a cryptography toolkit implementing the Secure Sockets Layer (SSL
29 v2/v3) and Transport Layer Security (TLS v1) network protocols and related
30 cryptography standards required by them.
31
32 The B<openssl> program is a command line tool for using the various
33 cryptography functions of OpenSSL's B<crypto> library from the shell.
34 It can be used for
35
36  o  Creation and management of private keys, public keys and parameters
37  o  Public key cryptographic operations
38  o  Creation of X.509 certificates, CSRs and CRLs
39  o  Calculation of Message Digests and Message Authentication Codes
40  o  Encryption and Decryption with Ciphers
41  o  SSL/TLS Client and Server Tests
42  o  Handling of S/MIME signed or encrypted mail
43  o  Timestamp requests, generation and verification
44
45 =head1 COMMAND SUMMARY
46
47 The B<openssl> program provides a rich variety of commands (I<command> in
48 the L</SYNOPSIS> above).
49 Each command can have many options and argument parameters, shown above as
50 I<options> and I<parameters>.
51
52 Detailed documentation and use cases for most standard subcommands are available
53 (e.g., L<openssl-x509(1)>).
54
55 Many commands use an external configuration file for some or all of their
56 arguments and have a B<-config> option to specify that file.
57 The default name of the file is F<openssl.cnf> in the default certificate
58 storage area, which can be determined from the L<openssl-version(1)>
59 command.
60 The environment variable B<OPENSSL_CONF> can be used to specify
61 a different location of the file.
62 See L<openssl-env(7)>.
63
64 The list options B<-standard-commands>, B<-digest-commands>,
65 and B<-cipher-commands> output a list (one entry per line) of the names
66 of all standard commands, message digest commands, or cipher commands,
67 respectively, that are available.
68
69 The list parameters B<-cipher-algorithms>, B<-digest-algorithms>,
70 and B<-mac-algorithms> list all cipher, message digest, and message
71 authentication code names, one entry per line. Aliases are listed as:
72
73  from => to
74
75 The list parameter B<-public-key-algorithms> lists all supported public
76 key algorithms.
77
78 The command B<no->I<XXX> tests whether a command of the
79 specified name is available.  If no command named I<XXX> exists, it
80 returns 0 (success) and prints B<no->I<XXX>; otherwise it returns 1
81 and prints I<XXX>.  In both cases, the output goes to B<stdout> and
82 nothing is printed to B<stderr>.  Additional command line arguments
83 are always ignored.  Since for each cipher there is a command of the
84 same name, this provides an easy way for shell scripts to test for the
85 availability of ciphers in the B<openssl> program.  (B<no->I<XXX> is
86 not able to detect pseudo-commands such as B<quit>,
87 B<list>, or B<no->I<XXX> itself.)
88
89 =head2 Standard Commands
90
91 =over 4
92
93 =item B<asn1parse>
94
95 Parse an ASN.1 sequence.
96
97 =item B<ca>
98
99 Certificate Authority (CA) Management.
100
101 =item B<ciphers>
102
103 Cipher Suite Description Determination.
104
105 =item B<cms>
106
107 CMS (Cryptographic Message Syntax) utility.
108
109 =item B<crl>
110
111 Certificate Revocation List (CRL) Management.
112
113 =item B<crl2pkcs7>
114
115 CRL to PKCS#7 Conversion.
116
117 =item B<dgst>
118
119 Message Digest calculation. MAC calculations are superseded by
120 L<openssl-mac(1)>.
121
122 =item B<dh>
123
124 Diffie-Hellman Parameter Management.
125 Obsoleted by L<openssl-dhparam(1)>.
126
127 =item B<dhparam>
128
129 Generation and Management of Diffie-Hellman Parameters. Superseded by
130 L<openssl-genpkey(1)> and L<openssl-pkeyparam(1)>.
131
132 =item B<dsa>
133
134 DSA Data Management.
135
136 =item B<dsaparam>
137
138 DSA Parameter Generation and Management. Superseded by
139 L<openssl-genpkey(1)> and L<openssl-pkeyparam(1)>.
140
141 =item B<ec>
142
143 EC (Elliptic curve) key processing.
144
145 =item B<ecparam>
146
147 EC parameter manipulation and generation.
148
149 =item B<enc>
150
151 Encryption, decryption, and encoding.
152
153 =item B<engine>
154
155 Engine (loadable module) information and manipulation.
156
157 =item B<errstr>
158
159 Error Number to Error String Conversion.
160
161 =item B<gendh>
162
163 Generation of Diffie-Hellman Parameters.
164 Obsoleted by L<openssl-dhparam(1)>.
165
166 =item B<gendsa>
167
168 Generation of DSA Private Key from Parameters. Superseded by
169 L<openssl-genpkey(1)> and L<openssl-pkey(1)>.
170
171 =item B<genpkey>
172
173 Generation of Private Key or Parameters.
174
175 =item B<genrsa>
176
177 Generation of RSA Private Key. Superseded by L<openssl-genpkey(1)>.
178
179 =item B<info>
180
181 Display diverse information built into the OpenSSL libraries.
182
183 =item B<kdf>
184
185 Key Derivation Functions.
186
187 =item B<mac>
188
189 Message Authentication Code Calculation.
190
191 =item B<nseq>
192
193 Create or examine a Netscape certificate sequence.
194
195 =item B<ocsp>
196
197 Online Certificate Status Protocol utility.
198
199 =item B<passwd>
200
201 Generation of hashed passwords.
202
203 =item B<pkcs12>
204
205 PKCS#12 Data Management.
206
207 =item B<pkcs7>
208
209 PKCS#7 Data Management.
210
211 =item B<pkcs8>
212
213 PKCS#8 format private key conversion tool.
214
215 =item B<pkey>
216
217 Public and private key management.
218
219 =item B<pkeyparam>
220
221 Public key algorithm parameter management.
222
223 =item B<pkeyutl>
224
225 Public key algorithm cryptographic operation utility.
226
227 =item B<prime>
228
229 Compute prime numbers.
230
231 =item B<rand>
232
233 Generate pseudo-random bytes.
234
235 =item B<rehash>
236
237 Create symbolic links to certificate and CRL files named by the hash values.
238
239 =item B<req>
240
241 PKCS#10 X.509 Certificate Signing Request (CSR) Management.
242
243 =item B<rsa>
244
245 RSA key management.
246
247 =item B<rsautl>
248
249 RSA utility for signing, verification, encryption, and decryption. Superseded
250 by  L<openssl-pkeyutl(1)>.
251
252 =item B<s_client>
253
254 This implements a generic SSL/TLS client which can establish a transparent
255 connection to a remote server speaking SSL/TLS. It's intended for testing
256 purposes only and provides only rudimentary interface functionality but
257 internally uses mostly all functionality of the OpenSSL B<ssl> library.
258
259 =item B<s_server>
260
261 This implements a generic SSL/TLS server which accepts connections from remote
262 clients speaking SSL/TLS. It's intended for testing purposes only and provides
263 only rudimentary interface functionality but internally uses mostly all
264 functionality of the OpenSSL B<ssl> library.  It provides both an own command
265 line oriented protocol for testing SSL functions and a simple HTTP response
266 facility to emulate an SSL/TLS-aware webserver.
267
268 =item B<s_time>
269
270 SSL Connection Timer.
271
272 =item B<sess_id>
273
274 SSL Session Data Management.
275
276 =item B<smime>
277
278 S/MIME mail processing.
279
280 =item B<speed>
281
282 Algorithm Speed Measurement.
283
284 =item B<spkac>
285
286 SPKAC printing and generating utility.
287
288 =item B<srp>
289
290 Maintain SRP password file.
291
292 =item B<storeutl>
293
294 Utility to list and display certificates, keys, CRLs, etc.
295
296 =item B<ts>
297
298 Time Stamping Authority tool (client/server).
299
300 =item B<verify>
301
302 X.509 Certificate Verification.
303
304 =item B<version>
305
306 OpenSSL Version Information.
307
308 =item B<x509>
309
310 X.509 Certificate Data Management.
311
312 =back
313
314 =head2 Message Digest Commands
315
316 =over 4
317
318 =item B<blake2b512>
319
320 BLAKE2b-512 Digest
321
322 =item B<blake2s256>
323
324 BLAKE2s-256 Digest
325
326 =item B<md2>
327
328 MD2 Digest
329
330 =item B<md4>
331
332 MD4 Digest
333
334 =item B<md5>
335
336 MD5 Digest
337
338 =item B<mdc2>
339
340 MDC2 Digest
341
342 =item B<rmd160>
343
344 RMD-160 Digest
345
346 =item B<sha1>
347
348 SHA-1 Digest
349
350 =item B<sha224>
351
352 SHA-2 224 Digest
353
354 =item B<sha256>
355
356 SHA-2 256 Digest
357
358 =item B<sha384>
359
360 SHA-2 384 Digest
361
362 =item B<sha512>
363
364 SHA-2 512 Digest
365
366 =item B<sha3-224>
367
368 SHA-3 224 Digest
369
370 =item B<sha3-256>
371
372 SHA-3 256 Digest
373
374 =item B<sha3-384>
375
376 SHA-3 384 Digest
377
378 =item B<sha3-512>
379
380 SHA-3 512 Digest
381
382 =item B<shake128>
383
384 SHA-3 SHAKE128 Digest
385
386 =item B<shake256>
387
388 SHA-3 SHAKE256 Digest
389
390 =item B<sm3>
391
392 SM3 Digest
393
394 =back
395
396 =head2 Encryption, Decryption, and Encoding Commands
397
398 The following aliases provide convenient access to the most used encodings
399 and ciphers.
400
401 Depending on how OpenSSL was configured and built, not all ciphers listed
402 here may be present. See L<openssl-enc(1)> for more information.
403
404 =over 4
405
406 =item B<aes128>, B<aes-128-cbc>, B<aes-128-cfb>, B<aes-128-ctr>, B<aes-128-ecb>, B<aes-128-ofb>
407
408 AES-128 Cipher
409
410 =item B<aes192>, B<aes-192-cbc>, B<aes-192-cfb>, B<aes-192-ctr>, B<aes-192-ecb>, B<aes-192-ofb>
411
412 AES-192 Cipher
413
414 =item B<aes256>, B<aes-256-cbc>, B<aes-256-cfb>, B<aes-256-ctr>, B<aes-256-ecb>, B<aes-256-ofb>
415
416 AES-256 Cipher
417
418 =item B<aria128>, B<aria-128-cbc>, B<aria-128-cfb>, B<aria-128-ctr>, B<aria-128-ecb>, B<aria-128-ofb>
419
420 Aria-128 Cipher
421
422 =item B<aria192>, B<aria-192-cbc>, B<aria-192-cfb>, B<aria-192-ctr>, B<aria-192-ecb>, B<aria-192-ofb>
423
424 Aria-192 Cipher
425
426 =item B<aria256>, B<aria-256-cbc>, B<aria-256-cfb>, B<aria-256-ctr>, B<aria-256-ecb>, B<aria-256-ofb>
427
428 Aria-256 Cipher
429
430 =item B<base64>
431
432 Base64 Encoding
433
434 =item B<bf>, B<bf-cbc>, B<bf-cfb>, B<bf-ecb>, B<bf-ofb>
435
436 Blowfish Cipher
437
438 =item B<camellia128>, B<camellia-128-cbc>, B<camellia-128-cfb>, B<camellia-128-ctr>, B<camellia-128-ecb>, B<camellia-128-ofb>
439
440 Camellia-128 Cipher
441
442 =item B<camellia192>, B<camellia-192-cbc>, B<camellia-192-cfb>, B<camellia-192-ctr>, B<camellia-192-ecb>, B<camellia-192-ofb>
443
444 Camellia-192 Cipher
445
446 =item B<camellia256>, B<camellia-256-cbc>, B<camellia-256-cfb>, B<camellia-256-ctr>, B<camellia-256-ecb>, B<camellia-256-ofb>
447
448 Camellia-256 Cipher
449
450 =item B<cast>, B<cast-cbc>
451
452 CAST Cipher
453
454 =item B<cast5-cbc>, B<cast5-cfb>, B<cast5-ecb>, B<cast5-ofb>
455
456 CAST5 Cipher
457
458 =item B<chacha20>
459
460 Chacha20 Cipher
461
462 =item B<des>, B<des-cbc>, B<des-cfb>, B<des-ecb>, B<des-ede>, B<des-ede-cbc>, B<des-ede-cfb>, B<des-ede-ofb>, B<des-ofb>
463
464 DES Cipher
465
466 =item B<des3>, B<desx>, B<des-ede3>, B<des-ede3-cbc>, B<des-ede3-cfb>, B<des-ede3-ofb>
467
468 Triple-DES Cipher
469
470 =item B<idea>, B<idea-cbc>, B<idea-cfb>, B<idea-ecb>, B<idea-ofb>
471
472 IDEA Cipher
473
474 =item B<rc2>, B<rc2-cbc>, B<rc2-cfb>, B<rc2-ecb>, B<rc2-ofb>
475
476 RC2 Cipher
477
478 =item B<rc4>
479
480 RC4 Cipher
481
482 =item B<rc5>, B<rc5-cbc>, B<rc5-cfb>, B<rc5-ecb>, B<rc5-ofb>
483
484 RC5 Cipher
485
486 =item B<seed>, B<seed-cbc>, B<seed-cfb>, B<seed-ecb>, B<seed-ofb>
487
488 SEED Cipher
489
490 =item B<sm4>, B<sm4-cbc>, B<sm4-cfb>, B<sm4-ctr>, B<sm4-ecb>, B<sm4-ofb>
491
492 SM4 Cipher
493
494 =back
495
496 =head1 OPTIONS
497
498 Details of which options are available depend on the specific command.
499 This section describes some common options with common behavior.
500
501 =head2 Common Options
502
503 =over 4
504
505 =item B<-help>
506
507 Provides a terse summary of all options.
508 If an option takes an argument, the "type" of argument is also given.
509
510 =item B<-->
511
512 This terminates the list of options. It is mostly useful if any filename
513 parameters start with a minus sign:
514
515  openssl verify [flags...] -- -cert1.pem...
516
517 =back
518
519 =head2 Format Options
520
521 Several OpenSSL commands can take input or generate output in a variety
522 of formats. The list of acceptable formats, and the default, is
523 described in each command documentation.  The list of formats is
524 described below. Both uppercase and lowercase are accepted.
525
526 =over 4
527
528 =item B<DER>
529
530 A binary format, encoded or parsed according to Distinguished Encoding Rules
531 (DER) of the ASN.1 data language.
532
533 =item B<ENGINE>
534
535 Used to specify that the cryptographic material is in an OpenSSL B<engine>.
536 An engine must be configured or specified using the B<-engine> option.
537 In addition, the B<-input> flag can be used to name a specific object in
538 the engine.
539 A password, such as the B<-passin> flag often must be specified as well.
540
541 =item B<P12>
542
543 A DER-encoded file containing a PKCS#12 object.
544 It might be necessary to provide a decryption password to retrieve
545 the private key.
546
547 =item B<PEM>
548
549 A text format defined in IETF RFC 1421 and IETF RFC 7468. Briefly, this is
550 a block of base-64 encoding (defined in IETF RFC 4648), with specific
551 lines used to mark the start and end:
552
553  Text before the BEGIN line is ignored.
554  ----- BEGIN object-type -----
555  OT43gQKBgQC/2OHZoko6iRlNOAQ/tMVFNq7fL81GivoQ9F1U0Qr+DH3ZfaH8eIkX
556  xT0ToMPJUzWAn8pZv0snA0um6SIgvkCuxO84OkANCVbttzXImIsL7pFzfcwV/ERK
557  UM6j0ZuSMFOCr/lGPAoOQU0fskidGEHi1/kW+suSr28TqsyYZpwBDQ==
558  ----- END object-type -----
559  Text after the END line is also ignored
560
561 The I<object-type> must match the type of object that is expected.
562 For example a C<BEGIN X509 CERTIFICATE> will not match if the command
563 is trying to read a private key. The types supported include:
564
565  ANY PRIVATE KEY
566  CERTIFICATE
567  CERTIFICATE REQUEST
568  CMS
569  DH PARAMETERS
570  DSA PARAMETERS
571  DSA PUBLIC KEY
572  EC PARAMETERS
573  EC PRIVATE KEY
574  ECDSA PUBLIC KEY
575  ENCRYPTED PRIVATE KEY
576  PARAMETERS
577  PKCS #7 SIGNED DATA
578  PKCS7
579  PRIVATE KEY
580  PUBLIC KEY
581  RSA PRIVATE KEY
582  SSL SESSION PARAMETERS
583  TRUSTED CERTIFICATE
584  X509 CRL
585  X9.42 DH PARAMETERS
586
587 The following legacy I<object-type>'s are also supported for compatibility
588 with earlier releases:
589
590  DSA PRIVATE KEY
591  NEW CERTIFICATE REQUEST
592  RSA PUBLIC KEY
593  X509 CERTIFICATE
594
595 =item B<SMIME>
596
597 An S/MIME object as described in IETF RFC 8551.
598 Earlier versions were known as CMS and are compatible.
599 Note that the parsing is simple and might fail to parse some legal data.
600
601 =back
602
603 The options to specify the format are as follows. Refer to the individual
604 manpage to see which options are accepted.
605
606 =over 4
607
608 =item B<-inform> I<format>, B<-outform> I<format>
609
610 The format of the input or output streams.
611
612 =item B<-keyform> I<format>
613
614 Format of a private key input source.
615
616 =item B<-CRLform> I<format>
617
618 Format of a CRL input source.
619
620 =back
621
622 =head2 Pass Phrase Options
623
624 Several commands accept password arguments, typically using B<-passin>
625 and B<-passout> for input and output passwords respectively. These allow
626 the password to be obtained from a variety of sources. Both of these
627 options take a single argument whose format is described below. If no
628 password argument is given and a password is required then the user is
629 prompted to enter one: this will typically be read from the current
630 terminal with echoing turned off.
631
632 Note that character encoding may be relevant, please see
633 L<passphrase-encoding(7)>.
634
635 =over 4
636
637 =item B<pass:>I<password>
638
639 The actual password is I<password>. Since the password is visible
640 to utilities (like 'ps' under Unix) this form should only be used
641 where security is not important.
642
643 =item B<env:>I<var>
644
645 Obtain the password from the environment variable I<var>. Since
646 the environment of other processes is visible on certain platforms
647 (e.g. ps under certain Unix OSes) this option should be used with caution.
648
649 =item B<file:>I<pathname>
650
651 The first line of I<pathname> is the password. If the same I<pathname>
652 argument is supplied to B<-passin> and B<-passout> arguments then the first
653 line will be used for the input password and the next line for the output
654 password. I<pathname> need not refer to a regular file: it could for example
655 refer to a device or named pipe.
656
657 =item B<fd:>I<number>
658
659 Read the password from the file descriptor I<number>. This can be used to
660 send the data via a pipe for example.
661
662 =item B<stdin>
663
664 Read the password from standard input.
665
666 =back
667
668 =head2 Trusted Certificate Options
669
670 Part of validating a certificate includes verifying that the chain of CA's
671 can be traced up to an existing trusted root.  The following options specify
672 how to list the trusted roots, also known as trust anchors.  A collection
673 of trusted roots is called a I<trust store>.
674
675 Note that OpenSSL does not provide a default set of trust anchors.  Many
676 Linux distributions include a system default and configure OpenSSL to point
677 to that.  Mozilla maintains an influential trust store that can be found at
678 L<https://www.mozilla.org/en-US/about/governance/policies/security-group/certs/>.
679
680 =over 4
681
682 =item B<-CAfile> I<file>
683
684 Load the specified file which contains one or more PEM-format certificates
685 of CA's that are trusted.
686
687 =item B<-no-CAfile>
688
689 Do not load the default file of trusted certificates.
690
691 =item B<-CApath> I<dir>
692
693 Use the specified directory as a list of trust certificates. That is,
694 files should be named with the hash of the X.509 SubjectName of each
695 certificate. This is so that the library can extract the IssuerName,
696 hash it, and directly lookup the file to get the issuer certificate.
697 See L<openssl-rehash(1)> for information on creating this type of directory.
698
699 =item B<-no-CApath>
700
701 Do not use the default directory of trusted certificates.
702
703 =item B<-CAstore> I<uri>
704
705 Use I<uri> as a store of trusted CA certificates.  The URI may
706 indicate a single certificate, as well as a collection of them.
707 With URIs in the C<file:> scheme, this acts as B<-CAfile> or
708 B<-CApath>, depending on if the URI indicates a single file or
709 directory.
710 See L<ossl_store-file(7)> for more information on the C<file:> scheme.
711
712 These certificates are also used when building the server certificate
713 chain (for example with L<openssl-s_server(1)>) or client certificate
714 chain (for example with L<openssl-s_time(1)>).
715
716 =item B<-no-CAstore>
717
718 Do not use the default store.
719
720 =back
721
722 =head2 Random State Options
723
724 Prior to OpenSSL 3.0, it was common for applications to store information
725 about the state of the random-number generator in a file that was loaded
726 at startup and rewritten upon exit. On modern operating systems, this is
727 generally no longer necessary as OpenSSL will seed itself from the
728 appropriate CPU flags, device files, and so on. These flags are still
729 supported for special platforms or circumstances that might require them.
730
731 It is generally an error to use the same seed file more than once and
732 every use of B<-rand> should be paired with B<-writerand>.
733
734 =over 4
735
736 =item B<-rand> I<files>
737
738 A file or files containing random data used to seed the random number
739 generator.
740 Multiple files can be specified separated by an OS-dependent character.
741 The separator is C<;> for MS-Windows, C<,> for OpenVMS, and C<:> for
742 all others. Another way to specify multiple files is to repeat this flag
743 with different filenames.
744
745 =item B<-writerand> I<file>
746
747 Writes the seed data to the specified I<file> upon exit.
748 This file can be used in a subsequent command invocation.
749
750 =back
751
752 =head2 Extended Verification Options
753
754 Sometimes there may be more than one certificate chain leading to an
755 end-entity certificate.
756 This usually happens when a root or intermediate CA signs a certificate
757 for another a CA in other organization.
758 Another reason is when a CA might have intermediates that use two different
759 signature formats, such as a SHA-1 and a SHA-256 digest.
760
761 The following options can be used to provide data that will allow the
762 OpenSSL command to generate an alternative chain.
763
764 =over 4
765
766 =item B<-xchain_build>
767
768 Specify whether the application should build the certificate chain to be
769 provided to the server for the extra certificates via the B<-xkey>,
770 B<-xcert>, and B<-xchain> options.
771
772 =item B<-xkey> I<infile>, B<-xcert> I<infile>, B<-xchain>
773
774 Specify an extra certificate, private key and certificate chain. These behave
775 in the same manner as the B<-cert>, B<-key> and B<-cert_chain> options.  When
776 specified, the callback returning the first valid chain will be in use by the
777 client.
778
779 =item B<-xcertform> B<DER>|B<PEM>, B<-xkeyform> B<DER>|B<PEM>
780
781 The input format for the extra certifcate and key, respectively.
782 See L<openssl(1)/Format Options> for details.
783
784 =back
785
786 =head1 ENVIRONMENT
787
788 The OpenSSL library can be take some configuration parameters from the
789 environment.  Some of these variables are listed below.  For information
790 about specific commands, see L<openssl-engine(1)>, L<openssl-provider(1)>,
791 L<openssl-rehash(1)>, and L<tsget(1)>.
792
793 For information about the use of environment variables in configuration,
794 see L<config(5)/ENVIRONMENT>.
795
796 For information about querying or specifying CPU architecture flags, see
797 L<OPENSSL_ia32cap(3)>, and L<OPENSSL_s390xcap(3)>.
798
799 For information about all environment variables used by the OpenSSL libraries,
800 see L<openssl-env(7)>.
801
802 =over 4
803
804 =item B<OPENSSL_TRACE=>I<name>[,...]
805
806 Enable tracing output of OpenSSL library, by name.
807 This output will only make sense if you know OpenSSL internals well.
808 Also, it might not give you any output at all, depending on how
809 OpenSSL was built.
810
811 The value is a comma separated list of names, with the following
812 available:
813
814 =over 4
815
816 =item B<TRACE>
817
818 The tracing functionality.
819
820 =item B<TLS>
821
822 General SSL/TLS.
823
824 =item B<TLS_CIPHER>
825
826 SSL/TLS cipher.
827
828 =item B<ENGINE_CONF>
829
830 ENGINE configuration.
831
832 =item B<ENGINE_TABLE>
833
834 The function that is used by RSA, DSA (etc) code to select registered
835 ENGINEs, cache defaults and functional references (etc), will generate
836 debugging summaries.
837
838 =item B<ENGINE_REF_COUNT>
839
840 Reference counts in the ENGINE structure will be monitored with a line
841 of generated for each change.
842
843 =item B<PKCS5V2>
844
845 PKCS#5 v2 keygen.
846
847 =item B<PKCS12_KEYGEN>
848
849 PKCS#12 key generation.
850
851 =item B<PKCS12_DECRYPT>
852
853 PKCS#12 decryption.
854
855 =item B<X509V3_POLICY>
856
857 Generates the complete policy tree at various point during X.509 v3
858 policy evaluation.
859
860 =item B<BN_CTX>
861
862 BIGNUM context.
863
864 =back
865
866 =back
867
868 =head1 SEE ALSO
869
870 L<openssl-asn1parse(1)>,
871 L<openssl-ca(1)>,
872 L<openssl-ciphers(1)>,
873 L<openssl-cms(1)>,
874 L<openssl-crl(1)>,
875 L<openssl-crl2pkcs7(1)>,
876 L<openssl-dgst(1)>,
877 L<openssl-dhparam(1)>,
878 L<openssl-dsa(1)>,
879 L<openssl-dsaparam(1)>,
880 L<openssl-ec(1)>,
881 L<openssl-ecparam(1)>,
882 L<openssl-enc(1)>,
883 L<openssl-engine(1)>,
884 L<openssl-errstr(1)>,
885 L<openssl-gendsa(1)>,
886 L<openssl-genpkey(1)>,
887 L<openssl-genrsa(1)>,
888 L<openssl-kdf(1)>,
889 L<openssl-mac(1)>,
890 L<openssl-nseq(1)>,
891 L<openssl-ocsp(1)>,
892 L<openssl-passwd(1)>,
893 L<openssl-pkcs12(1)>,
894 L<openssl-pkcs7(1)>,
895 L<openssl-pkcs8(1)>,
896 L<openssl-pkey(1)>,
897 L<openssl-pkeyparam(1)>,
898 L<openssl-pkeyutl(1)>,
899 L<openssl-prime(1)>,
900 L<openssl-rand(1)>,
901 L<openssl-rehash(1)>,
902 L<openssl-req(1)>,
903 L<openssl-rsa(1)>,
904 L<openssl-rsautl(1)>,
905 L<openssl-s_client(1)>,
906 L<openssl-s_server(1)>,
907 L<openssl-s_time(1)>,
908 L<openssl-sess_id(1)>,
909 L<openssl-smime(1)>,
910 L<openssl-speed(1)>,
911 L<openssl-spkac(1)>,
912 L<openssl-srp(1)>,
913 L<openssl-storeutl(1)>,
914 L<openssl-ts(1)>,
915 L<openssl-verify(1)>,
916 L<openssl-version(1)>,
917 L<openssl-x509(1)>,
918 L<config(5)>,
919 L<crypto(7)>,
920 L<openssl-env(7)>.
921 L<ssl(7)>,
922 L<x509v3_config(5)>
923
924
925 =head1 HISTORY
926
927 The B<list> -I<XXX>B<-algorithms> options were added in OpenSSL 1.0.0;
928 For notes on the availability of other commands, see their individual
929 manual pages.
930
931 =head1 COPYRIGHT
932
933 Copyright 2000-2019 The OpenSSL Project Authors. All Rights Reserved.
934
935 Licensed under the Apache License 2.0 (the "License").  You may not use
936 this file except in compliance with the License.  You can obtain a copy
937 in the file LICENSE in the source distribution or at
938 L<https://www.openssl.org/source/license.html>.
939
940 =cut