]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/man1/openssl.pod
Update copyright year
[thirdparty/openssl.git] / doc / man1 / openssl.pod
CommitLineData
aba3e65f
DSH
1=pod
2
3=head1 NAME
4
4b537191 5openssl - OpenSSL command line program
aba3e65f
DSH
6
7=head1 SYNOPSIS
8
9B<openssl>
10I<command>
d86925e6
RS
11[ I<options> ... ]
12[ I<parameters> ... ]
aba3e65f 13
b2bdfb63
RL
14B<openssl>
15B<list>
16B<-standard-commands> |
17B<-digest-commands> |
18B<-cipher-commands> |
19B<-cipher-algorithms> |
20B<-digest-algorithms> |
21B<-mac-algorithms> |
22B<-public-key-algorithms>
88220dcb 23
d86925e6 24B<openssl> B<no->I<XXX> [ I<options> ]
88220dcb 25
aba3e65f
DSH
26=head1 DESCRIPTION
27
28OpenSSL is a cryptography toolkit implementing the Secure Sockets Layer (SSL
29v2/v3) and Transport Layer Security (TLS v1) network protocols and related
30cryptography standards required by them.
31
4b537191 32The B<openssl> program is a command line program for using the various
4c583c36
AM
33cryptography functions of OpenSSL's B<crypto> library from the shell.
34It can be used for
aba3e65f 35
e4549295
DSH
36 o Creation and management of private keys, public keys and parameters
37 o Public key cryptographic operations
4c583c36 38 o Creation of X.509 certificates, CSRs and CRLs
4d768e96 39 o Calculation of Message Digests and Message Authentication Codes
aba3e65f
DSH
40 o Encryption and Decryption with Ciphers
41 o SSL/TLS Client and Server Tests
54a34aec 42 o Handling of S/MIME signed or encrypted mail
9c0586d5 43 o Timestamp requests, generation and verification
aba3e65f
DSH
44
45=head1 COMMAND SUMMARY
46
22bb8c25 47The B<openssl> program provides a rich variety of commands (I<command> in
d86925e6
RS
48the L</SYNOPSIS> above).
49Each command can have many options and argument parameters, shown above as
50I<options> and I<parameters>.
aba3e65f 51
1362190b 52Detailed documentation and use cases for most standard subcommands are available
1903a9b7 53(e.g., L<openssl-x509(1)>).
1362190b 54
e9681f83
RS
55Many commands use an external configuration file for some or all of their
56arguments and have a B<-config> option to specify that file.
22bb8c25
RS
57The default name of the file is F<openssl.cnf> in the default certificate
58storage area, which can be determined from the L<openssl-version(1)>
59command.
e9681f83 60The environment variable B<OPENSSL_CONF> can be used to specify
22bb8c25
RS
61a different location of the file.
62See L<openssl-env(7)>.
e9681f83 63
2f0ea936
RL
64The list options B<-standard-commands>, B<-digest-commands>,
65and B<-cipher-commands> output a list (one entry per line) of the names
88220dcb 66of all standard commands, message digest commands, or cipher commands,
35a810bb 67respectively, that are available.
88220dcb 68
2f0ea936
RL
69The list parameters B<-cipher-algorithms>, B<-digest-algorithms>,
70and B<-mac-algorithms> list all cipher, message digest, and message
4d768e96 71authentication code names, one entry per line. Aliases are listed as:
112161bd
DSH
72
73 from => to
74
2f0ea936 75The list parameter B<-public-key-algorithms> lists all supported public
112161bd
DSH
76key algorithms.
77
c03726ca 78The command B<no->I<XXX> tests whether a command of the
88220dcb
BM
79specified name is available. If no command named I<XXX> exists, it
80returns 0 (success) and prints B<no->I<XXX>; otherwise it returns 1
81and prints I<XXX>. In both cases, the output goes to B<stdout> and
82nothing is printed to B<stderr>. Additional command line arguments
83are always ignored. Since for each cipher there is a command of the
84same name, this provides an easy way for shell scripts to test for the
85availability of ciphers in the B<openssl> program. (B<no->I<XXX> is
86not able to detect pseudo-commands such as B<quit>,
c03726ca 87B<list>, or B<no->I<XXX> itself.)
88220dcb 88
22bb8c25 89=head2 Standard Commands
aba3e65f 90
e1271ac2 91=over 4
aba3e65f 92
dfee8626 93=item B<asn1parse>
aba3e65f
DSH
94
95Parse an ASN.1 sequence.
96
dfee8626 97=item B<ca>
aba3e65f 98
4c583c36 99Certificate Authority (CA) Management.
aba3e65f 100
dfee8626 101=item B<ciphers>
aba3e65f
DSH
102
103Cipher Suite Description Determination.
104
dfee8626 105=item B<cms>
e5fa864f 106
4b537191 107CMS (Cryptographic Message Syntax) command.
e5fa864f 108
dfee8626 109=item B<crl>
aba3e65f
DSH
110
111Certificate Revocation List (CRL) Management.
112
dfee8626 113=item B<crl2pkcs7>
aba3e65f
DSH
114
115CRL to PKCS#7 Conversion.
116
dfee8626 117=item B<dgst>
aba3e65f 118
4d768e96 119Message Digest calculation. MAC calculations are superseded by
8bc93d2f 120L<openssl-mac(1)>.
aba3e65f 121
dfee8626 122=item B<dhparam>
e5fa864f 123
4c583c36 124Generation and Management of Diffie-Hellman Parameters. Superseded by
8bc93d2f 125L<openssl-genpkey(1)> and L<openssl-pkeyparam(1)>.
e5fa864f 126
dfee8626 127=item B<dsa>
aba3e65f
DSH
128
129DSA Data Management.
130
dfee8626 131=item B<dsaparam>
aba3e65f 132
4c583c36 133DSA Parameter Generation and Management. Superseded by
8bc93d2f 134L<openssl-genpkey(1)> and L<openssl-pkeyparam(1)>.
aba3e65f 135
dfee8626 136=item B<ec>
e5fa864f 137
c4de074e 138EC (Elliptic curve) key processing.
e5fa864f 139
dfee8626 140=item B<ecparam>
e5fa864f 141
c4de074e 142EC parameter manipulation and generation.
e5fa864f 143
dfee8626 144=item B<enc>
aba3e65f 145
22bb8c25 146Encryption, decryption, and encoding.
aba3e65f 147
dfee8626 148=item B<engine>
aba3e65f 149
4c583c36 150Engine (loadable module) information and manipulation.
aba3e65f 151
dfee8626 152=item B<errstr>
727daea7 153
e5fa864f 154Error Number to Error String Conversion.
727daea7 155
d333c311 156=item B<fipsinstall>
aba3e65f 157
d333c311 158FIPS configuration installation.
aba3e65f 159
dfee8626 160=item B<gendsa>
aba3e65f 161
4c583c36 162Generation of DSA Private Key from Parameters. Superseded by
8bc93d2f 163L<openssl-genpkey(1)> and L<openssl-pkey(1)>.
e4549295 164
dfee8626 165=item B<genpkey>
e4549295
DSH
166
167Generation of Private Key or Parameters.
aba3e65f 168
dfee8626 169=item B<genrsa>
aba3e65f 170
8bc93d2f 171Generation of RSA Private Key. Superseded by L<openssl-genpkey(1)>.
aba3e65f 172
d333c311
RS
173=item B<help>
174
175Display information about a command's options.
176
0109e030
RL
177=item B<info>
178
179Display diverse information built into the OpenSSL libraries.
180
c54492ec
SL
181=item B<kdf>
182
183Key Derivation Functions.
184
d333c311
RS
185=item B<list>
186
187List algorithms and features.
188
4d768e96
SL
189=item B<mac>
190
191Message Authentication Code Calculation.
192
dfee8626 193=item B<nseq>
e5fa864f 194
c4de074e 195Create or examine a Netscape certificate sequence.
e5fa864f 196
dfee8626 197=item B<ocsp>
a068630a 198
4b537191 199Online Certificate Status Protocol command.
a068630a 200
dfee8626 201=item B<passwd>
5160448b
RL
202
203Generation of hashed passwords.
204
dfee8626 205=item B<pkcs12>
3f1c4e49
BM
206
207PKCS#12 Data Management.
208
dfee8626 209=item B<pkcs7>
aba3e65f
DSH
210
211PKCS#7 Data Management.
212
dfee8626 213=item B<pkcs8>
f0b843c1 214
4b537191 215PKCS#8 format private key conversion command.
f0b843c1 216
dfee8626 217=item B<pkey>
e4549295
DSH
218
219Public and private key management.
220
dfee8626 221=item B<pkeyparam>
e4549295
DSH
222
223Public key algorithm parameter management.
224
dfee8626 225=item B<pkeyutl>
e5fa864f 226
4b537191 227Public key algorithm cryptographic operation command.
e5fa864f 228
dfee8626 229=item B<prime>
f0b843c1
RL
230
231Compute prime numbers.
232
d333c311
RS
233=item B<provider>
234
235Load and query providers.
236
dfee8626 237=item B<rand>
afbd0746
BM
238
239Generate pseudo-random bytes.
240
dfee8626 241=item B<rehash>
f0b843c1 242
24c34608 243Create symbolic links to certificate and CRL files named by the hash values.
f0b843c1 244
dfee8626 245=item B<req>
aba3e65f 246
e4549295 247PKCS#10 X.509 Certificate Signing Request (CSR) Management.
aba3e65f 248
dfee8626 249=item B<rsa>
aba3e65f 250
e4549295 251RSA key management.
aba3e65f 252
dfee8626 253=item B<rsautl>
34417732 254
4b537191 255RSA command for signing, verification, encryption, and decryption. Superseded
8bc93d2f 256by L<openssl-pkeyutl(1)>.
34417732 257
dfee8626 258=item B<s_client>
aba3e65f
DSH
259
260This implements a generic SSL/TLS client which can establish a transparent
261connection to a remote server speaking SSL/TLS. It's intended for testing
262purposes only and provides only rudimentary interface functionality but
263internally uses mostly all functionality of the OpenSSL B<ssl> library.
264
dfee8626 265=item B<s_server>
aba3e65f
DSH
266
267This implements a generic SSL/TLS server which accepts connections from remote
268clients speaking SSL/TLS. It's intended for testing purposes only and provides
269only rudimentary interface functionality but internally uses mostly all
270functionality of the OpenSSL B<ssl> library. It provides both an own command
271line oriented protocol for testing SSL functions and a simple HTTP response
272facility to emulate an SSL/TLS-aware webserver.
273
dfee8626 274=item B<s_time>
aba3e65f
DSH
275
276SSL Connection Timer.
277
dfee8626 278=item B<sess_id>
aba3e65f
DSH
279
280SSL Session Data Management.
281
dfee8626 282=item B<smime>
54a34aec
DSH
283
284S/MIME mail processing.
285
dfee8626 286=item B<speed>
aba3e65f
DSH
287
288Algorithm Speed Measurement.
289
dfee8626 290=item B<spkac>
e5fa864f 291
4b537191 292SPKAC printing and generating command.
e5fa864f 293
dfee8626 294=item B<srp>
f0b843c1
RL
295
296Maintain SRP password file.
297
dfee8626 298=item B<storeutl>
f0b843c1 299
4b537191 300Command to list and display certificates, keys, CRLs, etc.
f0b843c1 301
dfee8626 302=item B<ts>
21e8bbf2 303
4b537191 304Time Stamping Authority command.
21e8bbf2 305
dfee8626 306=item B<verify>
aba3e65f
DSH
307
308X.509 Certificate Verification.
309
dfee8626 310=item B<version>
aba3e65f
DSH
311
312OpenSSL Version Information.
313
dfee8626 314=item B<x509>
aba3e65f
DSH
315
316X.509 Certificate Data Management.
317
318=back
319
05ea606a 320=head2 Message Digest Commands
aba3e65f 321
e1271ac2 322=over 4
aba3e65f 323
4b7c6385
KR
324=item B<blake2b512>
325
326BLAKE2b-512 Digest
327
328=item B<blake2s256>
329
330BLAKE2s-256 Digest
331
aba3e65f
DSH
332=item B<md2>
333
334MD2 Digest
335
4b7c6385
KR
336=item B<md4>
337
338MD4 Digest
339
aba3e65f
DSH
340=item B<md5>
341
342MD5 Digest
343
344=item B<mdc2>
345
346MDC2 Digest
347
348=item B<rmd160>
349
350RMD-160 Digest
351
4c583c36 352=item B<sha1>
aba3e65f
DSH
353
354SHA-1 Digest
355
c7503f52
AP
356=item B<sha224>
357
4b7c6385 358SHA-2 224 Digest
c7503f52
AP
359
360=item B<sha256>
361
4b7c6385 362SHA-2 256 Digest
c7503f52
AP
363
364=item B<sha384>
365
4b7c6385 366SHA-2 384 Digest
c7503f52
AP
367
368=item B<sha512>
369
4b7c6385
KR
370SHA-2 512 Digest
371
372=item B<sha3-224>
373
374SHA-3 224 Digest
375
376=item B<sha3-256>
377
378SHA-3 256 Digest
379
380=item B<sha3-384>
381
382SHA-3 384 Digest
383
384=item B<sha3-512>
385
386SHA-3 512 Digest
387
388=item B<shake128>
389
390SHA-3 SHAKE128 Digest
391
392=item B<shake256>
393
394SHA-3 SHAKE256 Digest
395
396=item B<sm3>
397
398SM3 Digest
c7503f52 399
677741f8
AP
400=back
401
22bb8c25 402=head2 Encryption, Decryption, and Encoding Commands
aba3e65f 403
1362190b
AS
404The following aliases provide convenient access to the most used encodings
405and ciphers.
406
407Depending on how OpenSSL was configured and built, not all ciphers listed
d86925e6 408here may be present. See L<openssl-enc(1)> for more information.
1362190b 409
e1271ac2 410=over 4
aba3e65f 411
1362190b
AS
412=item B<aes128>, B<aes-128-cbc>, B<aes-128-cfb>, B<aes-128-ctr>, B<aes-128-ecb>, B<aes-128-ofb>
413
414AES-128 Cipher
415
416=item B<aes192>, B<aes-192-cbc>, B<aes-192-cfb>, B<aes-192-ctr>, B<aes-192-ecb>, B<aes-192-ofb>
417
418AES-192 Cipher
419
420=item B<aes256>, B<aes-256-cbc>, B<aes-256-cfb>, B<aes-256-ctr>, B<aes-256-ecb>, B<aes-256-ofb>
421
422AES-256 Cipher
423
424=item B<aria128>, B<aria-128-cbc>, B<aria-128-cfb>, B<aria-128-ctr>, B<aria-128-ecb>, B<aria-128-ofb>
425
426Aria-128 Cipher
427
428=item B<aria192>, B<aria-192-cbc>, B<aria-192-cfb>, B<aria-192-ctr>, B<aria-192-ecb>, B<aria-192-ofb>
429
430Aria-192 Cipher
431
432=item B<aria256>, B<aria-256-cbc>, B<aria-256-cfb>, B<aria-256-ctr>, B<aria-256-ecb>, B<aria-256-ofb>
433
434Aria-256 Cipher
435
aba3e65f
DSH
436=item B<base64>
437
438Base64 Encoding
439
dfee8626 440=item B<bf>, B<bf-cbc>, B<bf-cfb>, B<bf-ecb>, B<bf-ofb>
aba3e65f
DSH
441
442Blowfish Cipher
443
1362190b
AS
444=item B<camellia128>, B<camellia-128-cbc>, B<camellia-128-cfb>, B<camellia-128-ctr>, B<camellia-128-ecb>, B<camellia-128-ofb>
445
446Camellia-128 Cipher
447
448=item B<camellia192>, B<camellia-192-cbc>, B<camellia-192-cfb>, B<camellia-192-ctr>, B<camellia-192-ecb>, B<camellia-192-ofb>
449
450Camellia-192 Cipher
451
452=item B<camellia256>, B<camellia-256-cbc>, B<camellia-256-cfb>, B<camellia-256-ctr>, B<camellia-256-ecb>, B<camellia-256-ofb>
453
454Camellia-256 Cipher
455
dfee8626 456=item B<cast>, B<cast-cbc>
aba3e65f
DSH
457
458CAST Cipher
459
dfee8626 460=item B<cast5-cbc>, B<cast5-cfb>, B<cast5-ecb>, B<cast5-ofb>
aba3e65f
DSH
461
462CAST5 Cipher
463
1362190b
AS
464=item B<chacha20>
465
466Chacha20 Cipher
467
dfee8626 468=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>
aba3e65f
DSH
469
470DES Cipher
471
dfee8626 472=item B<des3>, B<desx>, B<des-ede3>, B<des-ede3-cbc>, B<des-ede3-cfb>, B<des-ede3-ofb>
aba3e65f
DSH
473
474Triple-DES Cipher
475
dfee8626 476=item B<idea>, B<idea-cbc>, B<idea-cfb>, B<idea-ecb>, B<idea-ofb>
aba3e65f
DSH
477
478IDEA Cipher
479
dfee8626 480=item B<rc2>, B<rc2-cbc>, B<rc2-cfb>, B<rc2-ecb>, B<rc2-ofb>
aba3e65f
DSH
481
482RC2 Cipher
483
484=item B<rc4>
485
486RC4 Cipher
487
dfee8626 488=item B<rc5>, B<rc5-cbc>, B<rc5-cfb>, B<rc5-ecb>, B<rc5-ofb>
aba3e65f
DSH
489
490RC5 Cipher
491
1362190b
AS
492=item B<seed>, B<seed-cbc>, B<seed-cfb>, B<seed-ecb>, B<seed-ofb>
493
494SEED Cipher
495
496=item B<sm4>, B<sm4-cbc>, B<sm4-cfb>, B<sm4-ctr>, B<sm4-ecb>, B<sm4-ofb>
497
498SM4 Cipher
499
aba3e65f
DSH
500=back
501
3dfda1a6 502=head1 OPTIONS
0634424f
RS
503
504Details of which options are available depend on the specific command.
77a795e4 505This section describes some common options with common behavior.
0634424f
RS
506
507=head2 Common Options
508
e1271ac2 509=over 4
0634424f
RS
510
511=item B<-help>
512
513Provides a terse summary of all options.
a397aca4
RS
514If an option takes an argument, the "type" of argument is also given.
515
516=item B<-->
517
518This terminates the list of options. It is mostly useful if any filename
519parameters start with a minus sign:
520
521 openssl verify [flags...] -- -cert1.pem...
0634424f
RS
522
523=back
524
777182a0
RS
525=head2 Format Options
526
527Several OpenSSL commands can take input or generate output in a variety
528of formats. The list of acceptable formats, and the default, is
529described in each command documentation. The list of formats is
530described below. Both uppercase and lowercase are accepted.
531
532=over 4
533
534=item B<DER>
535
536A binary format, encoded or parsed according to Distinguished Encoding Rules
537(DER) of the ASN.1 data language.
538
539=item B<ENGINE>
540
541Used to specify that the cryptographic material is in an OpenSSL B<engine>.
542An engine must be configured or specified using the B<-engine> option.
543In addition, the B<-input> flag can be used to name a specific object in
544the engine.
545A password, such as the B<-passin> flag often must be specified as well.
546
547=item B<P12>
548
549A DER-encoded file containing a PKCS#12 object.
550It might be necessary to provide a decryption password to retrieve
551the private key.
552
553=item B<PEM>
554
555A text format defined in IETF RFC 1421 and IETF RFC 7468. Briefly, this is
556a block of base-64 encoding (defined in IETF RFC 4648), with specific
557lines used to mark the start and end:
558
559 Text before the BEGIN line is ignored.
560 ----- BEGIN object-type -----
561 OT43gQKBgQC/2OHZoko6iRlNOAQ/tMVFNq7fL81GivoQ9F1U0Qr+DH3ZfaH8eIkX
562 xT0ToMPJUzWAn8pZv0snA0um6SIgvkCuxO84OkANCVbttzXImIsL7pFzfcwV/ERK
563 UM6j0ZuSMFOCr/lGPAoOQU0fskidGEHi1/kW+suSr28TqsyYZpwBDQ==
564 ----- END object-type -----
565 Text after the END line is also ignored
566
567The I<object-type> must match the type of object that is expected.
568For example a C<BEGIN X509 CERTIFICATE> will not match if the command
569is trying to read a private key. The types supported include:
570
571 ANY PRIVATE KEY
572 CERTIFICATE
573 CERTIFICATE REQUEST
574 CMS
575 DH PARAMETERS
576 DSA PARAMETERS
577 DSA PUBLIC KEY
578 EC PARAMETERS
579 EC PRIVATE KEY
580 ECDSA PUBLIC KEY
581 ENCRYPTED PRIVATE KEY
582 PARAMETERS
583 PKCS #7 SIGNED DATA
584 PKCS7
585 PRIVATE KEY
586 PUBLIC KEY
587 RSA PRIVATE KEY
588 SSL SESSION PARAMETERS
589 TRUSTED CERTIFICATE
590 X509 CRL
591 X9.42 DH PARAMETERS
592
593The following legacy I<object-type>'s are also supported for compatibility
594with earlier releases:
595
596 DSA PRIVATE KEY
597 NEW CERTIFICATE REQUEST
598 RSA PUBLIC KEY
599 X509 CERTIFICATE
600
601=item B<SMIME>
602
603An S/MIME object as described in IETF RFC 8551.
604Earlier versions were known as CMS and are compatible.
605Note that the parsing is simple and might fail to parse some legal data.
606
607=back
608
609The options to specify the format are as follows. Refer to the individual
610manpage to see which options are accepted.
611
612=over 4
613
614=item B<-inform> I<format>, B<-outform> I<format>
615
616The format of the input or output streams.
617
618=item B<-keyform> I<format>
619
620Format of a private key input source.
621
9fcb9702 622=item B<-CRLform> I<format>
777182a0
RS
623
624Format of a CRL input source.
625
626=back
627
0634424f 628=head2 Pass Phrase Options
a3fe382e
DSH
629
630Several commands accept password arguments, typically using B<-passin>
631and B<-passout> for input and output passwords respectively. These allow
632the password to be obtained from a variety of sources. Both of these
633options take a single argument whose format is described below. If no
634password argument is given and a password is required then the user is
635prompted to enter one: this will typically be read from the current
636terminal with echoing turned off.
637
84814344
RL
638Note that character encoding may be relevant, please see
639L<passphrase-encoding(7)>.
640
e1271ac2 641=over 4
a3fe382e 642
2f0ea936 643=item B<pass:>I<password>
a3fe382e 644
2f0ea936 645The actual password is I<password>. Since the password is visible
a3fe382e
DSH
646to utilities (like 'ps' under Unix) this form should only be used
647where security is not important.
648
2f0ea936 649=item B<env:>I<var>
a3fe382e 650
2f0ea936 651Obtain the password from the environment variable I<var>. Since
a3fe382e
DSH
652the environment of other processes is visible on certain platforms
653(e.g. ps under certain Unix OSes) this option should be used with caution.
654
2f0ea936 655=item B<file:>I<pathname>
a3fe382e 656
2f0ea936 657The first line of I<pathname> is the password. If the same I<pathname>
a3fe382e
DSH
658argument is supplied to B<-passin> and B<-passout> arguments then the first
659line will be used for the input password and the next line for the output
2f0ea936 660password. I<pathname> need not refer to a regular file: it could for example
a3fe382e
DSH
661refer to a device or named pipe.
662
2f0ea936 663=item B<fd:>I<number>
a3fe382e 664
2f0ea936 665Read the password from the file descriptor I<number>. This can be used to
a3fe382e
DSH
666send the data via a pipe for example.
667
668=item B<stdin>
669
c4de074e 670Read the password from standard input.
a3fe382e
DSH
671
672=back
673
a397aca4
RS
674=head2 Trusted Certificate Options
675
676Part of validating a certificate includes verifying that the chain of CA's
677can be traced up to an existing trusted root. The following options specify
678how to list the trusted roots, also known as trust anchors. A collection
679of trusted roots is called a I<trust store>.
680
681Note that OpenSSL does not provide a default set of trust anchors. Many
682Linux distributions include a system default and configure OpenSSL to point
683to that. Mozilla maintains an influential trust store that can be found at
684L<https://www.mozilla.org/en-US/about/governance/policies/security-group/certs/>.
685
686=over 4
687
688=item B<-CAfile> I<file>
689
690Load the specified file which contains one or more PEM-format certificates
691of CA's that are trusted.
692
693=item B<-no-CAfile>
694
695Do not load the default file of trusted certificates.
696
697=item B<-CApath> I<dir>
698
699Use the specified directory as a list of trust certificates. That is,
700files should be named with the hash of the X.509 SubjectName of each
701certificate. This is so that the library can extract the IssuerName,
702hash it, and directly lookup the file to get the issuer certificate.
703See L<openssl-rehash(1)> for information on creating this type of directory.
704
705=item B<-no-CApath>
706
707Do not use the default directory of trusted certificates.
708
fd3397fc
RL
709=item B<-CAstore> I<uri>
710
711Use I<uri> as a store of trusted CA certificates. The URI may
712indicate a single certificate, as well as a collection of them.
713With URIs in the C<file:> scheme, this acts as B<-CAfile> or
714B<-CApath>, depending on if the URI indicates a single file or
715directory.
716See L<ossl_store-file(7)> for more information on the C<file:> scheme.
717
718These certificates are also used when building the server certificate
719chain (for example with L<openssl-s_server(1)>) or client certificate
720chain (for example with L<openssl-s_time(1)>).
721
722=item B<-no-CAstore>
723
724Do not use the default store.
725
a397aca4
RS
726=back
727
728=head2 Random State Options
729
a08e2bf5 730Prior to OpenSSL 1.1.1, it was common for applications to store information
a397aca4
RS
731about the state of the random-number generator in a file that was loaded
732at startup and rewritten upon exit. On modern operating systems, this is
a08e2bf5
DMSP
733generally no longer necessary as OpenSSL will seed itself from a trusted
734entropy source provided by the operating system. These flags are still
a397aca4
RS
735supported for special platforms or circumstances that might require them.
736
737It is generally an error to use the same seed file more than once and
738every use of B<-rand> should be paired with B<-writerand>.
739
740=over 4
741
742=item B<-rand> I<files>
743
744A file or files containing random data used to seed the random number
745generator.
746Multiple files can be specified separated by an OS-dependent character.
747The separator is C<;> for MS-Windows, C<,> for OpenVMS, and C<:> for
748all others. Another way to specify multiple files is to repeat this flag
749with different filenames.
750
751=item B<-writerand> I<file>
752
753Writes the seed data to the specified I<file> upon exit.
754This file can be used in a subsequent command invocation.
755
756=back
757
6bd4e3f2
P
758=head2 Provider Options
759
760With the move to provider based cryptographic operations in OpenSSL 3.0,
761options were added to allow specific providers or sets of providers to be used.
762
763=over 4
764
765=item B<-provider> I<name>
766
767Use the provider identified by I<name> and use all the methods it
768implements (algorithms, key storage, etc.). This option can be specified
769multiple time to load more than one provider.
770
771=item B<-provider_path> I<path>
772
773Specify the search I<path> that is used to locate provider modules. The format
774of I<path> varies depending on the operating system being used.
775
776=back
777
9fcb9702
RS
778=head2 Extended Verification Options
779
780Sometimes there may be more than one certificate chain leading to an
781end-entity certificate.
782This usually happens when a root or intermediate CA signs a certificate
783for another a CA in other organization.
784Another reason is when a CA might have intermediates that use two different
785signature formats, such as a SHA-1 and a SHA-256 digest.
786
787The following options can be used to provide data that will allow the
788OpenSSL command to generate an alternative chain.
789
790=over 4
791
792=item B<-xchain_build>
793
794Specify whether the application should build the certificate chain to be
795provided to the server for the extra certificates via the B<-xkey>,
796B<-xcert>, and B<-xchain> options.
797
798=item B<-xkey> I<infile>, B<-xcert> I<infile>, B<-xchain>
799
800Specify an extra certificate, private key and certificate chain. These behave
801in the same manner as the B<-cert>, B<-key> and B<-cert_chain> options. When
802specified, the callback returning the first valid chain will be in use by the
803client.
804
805=item B<-xcertform> B<DER>|B<PEM>, B<-xkeyform> B<DER>|B<PEM>
806
79c44b4e 807The input format for the extra certificate and key, respectively.
9fcb9702
RS
808See L<openssl(1)/Format Options> for details.
809
21d08b9e
RS
810=item B<-xchain_build>
811
812Specify whether the application should build the certificate chain to be
813provided to the server for the extra certificates via the B<-xkey>,
814B<-xcert>, and B<-xchain> options.
815
816=item B<-xcertform> B<DER>|B<PEM>, B<-xkeyform> B<DER>|B<PEM>
817
e02b13ad 818The input format for the extra certificate and key, respectively.
21d08b9e
RS
819See L<openssl(1)/Format Options> for details.
820
821=back
822
823=head2 Verification Options
824
825Many OpenSSL commands verify certificates. The details of how each
826command handles errors are documented on the specific command page.
827
828Verification is a complicated process, consisting of a number of separate
829steps that are detailed in the following paragraphs.
830
831First, a certificate chain is built up starting from the supplied certificate
832and ending in a root CA. It is an error if the whole chain cannot be
833built up. The chain is built up by looking up the certificate that
834signed (or issued) the certificate. It then repeats the process, until
835it gets to a certificate that is self-issued.
836
837The process of looking up the issuer's certificate itself involves a number
838of steps. After all certificates whose subject name matches the issuer
839name of the current certificate are subject to further tests. The relevant
840authority key identifier components of the current certificate (if present)
841must match the subject key identifier (if present) and issuer and serial
842number of the candidate issuer, in addition the keyUsage extension of the
843candidate issuer (if present) must permit certificate signing.
844
845The lookup first looks in the list of untrusted certificates and if no match
846is found the remaining lookups are from the trusted certificates. The root CA
847is always looked up in the trusted certificate list: if the certificate to
848verify is a root certificate then an exact match must be found in the trusted
849list.
850
851The second step is to check every untrusted certificate's extensions
852for consistency with the supplied purpose. If the B<-purpose> option is
853not included then no checks are done. The supplied or "leaf" certificate
854must have extensions compatible with the supplied purpose and all other
855certificates must also be valid CA certificates. The precise extensions
856required are described in more detail in
857L<openssl-x509(1)/CERTIFICATE EXTENSIONS>.
858
859The third step is to check the trust settings on the root CA. The root
860CA should be trusted for the supplied purpose. For compatibility with
861previous versions of OpenSSL, a certificate with no trust settings is
862considered to be valid for all purposes.
863
864The fourth, and final, step is to check the validity of the certificate
865chain. The validity period is checked against the system time
866and the C<notBefore> and C<notAfter> dates in the certificate. The certificate
867signatures are also checked at this point. The B<-attime> flag may be
868used to specify a time other than "now."
869
870If all operations complete successfully then certificate is considered
871valid. If any operation fails then the certificate is not valid.
872
873The details of the processing steps can be fine-tuned with the
874following flags.
875
876=over 4
877
878=item B<-verbose>
879
880Print extra information about the operations being performed.
881
882=item B<-attime> I<timestamp>
883
884Perform validation checks using time specified by I<timestamp> and not
885current system time. I<timestamp> is the number of seconds since
886January 1, 1970 (i.e., the Unix Epoch).
887
888=item B<-no_check_time>
889
890This option suppresses checking the validity period of certificates and CRLs
891against the current time. If option B<-attime> is used to specify
892a verification time, the check is not suppressed.
893
894=item B<-x509_strict>
895
896This disables non-compliant workarounds for broken certificates.
897
898=item B<-ignore_critical>
899
900Normally if an unhandled critical extension is present which is not
901supported by OpenSSL the certificate is rejected (as required by RFC5280).
902If this option is set critical extensions are ignored.
903
904=item B<-issuer_checks>
905
906Ignored.
907
908=item B<-crl_check>
909
910Checks end entity certificate validity by attempting to look up a valid CRL.
911If a valid CRL cannot be found an error occurs.
912
913=item B<-crl_check_all>
914
915Checks the validity of B<all> certificates in the chain by attempting
916to look up valid CRLs.
917
918=item B<-use_deltas>
919
920Enable support for delta CRLs.
921
922=item B<-extended_crl>
923
924Enable extended CRL features such as indirect CRLs and alternate CRL
925signing keys.
926
927=item B<-suiteB_128_only>, B<-suiteB_128>, B<-suiteB_192>
928
929Enable the Suite B mode operation at 128 bit Level of Security, 128 bit or
930192 bit, or only 192 bit Level of Security respectively.
931See RFC6460 for details. In particular the supported signature algorithms are
932reduced to support only ECDSA and SHA256 or SHA384 and only the elliptic curves
933P-256 and P-384.
934
935=item B<-auth_level> I<level>
936
937Set the certificate chain authentication security level to I<level>.
938The authentication security level determines the acceptable signature and
939public key strength when verifying certificate chains. For a certificate
940chain to validate, the public keys of all the certificates must meet the
941specified security I<level>. The signature algorithm security level is
942enforced for all the certificates in the chain except for the chain's
943I<trust anchor>, which is either directly trusted or validated by means
944other than its signature. See L<SSL_CTX_set_security_level(3)> for the
945definitions of the available levels. The default security level is -1,
946or "not set". At security level 0 or lower all algorithms are acceptable.
947Security level 1 requires at least 80-bit-equivalent security and is broadly
948interoperable, though it will, for example, reject MD5 signatures or RSA
949keys shorter than 1024 bits.
950
951=item B<-partial_chain>
952
953Allow verification to succeed even if a I<complete> chain cannot be built to a
954self-signed trust-anchor, provided it is possible to construct a chain to a
955trusted certificate that might not be self-signed.
956
957=item B<-check_ss_sig>
958
959Verify the signature on the self-signed root CA. This is disabled by default
960because it doesn't add any security.
961
962=item B<-allow_proxy_certs>
963
964Allow the verification of proxy certificates.
965
966=item B<-trusted_first>
967
968As of OpenSSL 1.1.0 this option is on by default and cannot be disabled.
969
970=item B<-no_alt_chains>
971
972As of OpenSSL 1.1.0, since B<-trusted_first> always on, this option has no
973effect.
974
975=item B<-trusted> I<file>
976
977Parse I<file> as a set of one or more certificates in PEM format.
978All certificates must be self-signed, unless the
979B<-partial_chain> option is specified.
2b264aee
DDO
980This option implies the B<-no-CAfile>, B<-no-CApath>, and B<-no-CAstore> options
981and it cannot be used with the B<-CAfile>, B<-CApath> or B<-CAstore> options, so
21d08b9e
RS
982only certificates in the file are trust anchors.
983This option may be used multiple times.
984
985=item B<-untrusted> I<file>
986
987Parse I<file> as a set of one or more certificates in PEM format.
988All certificates are untrusted certificates that may be used to
989construct a certificate chain from the subject certificate to a trust anchor.
990This option may be used multiple times.
991
992=item B<-policy> I<arg>
993
994Enable policy processing and add I<arg> to the user-initial-policy-set (see
995RFC5280). The policy I<arg> can be an object name an OID in numeric form.
996This argument can appear more than once.
997
998=item B<-explicit_policy>
999
1000Set policy variable require-explicit-policy (see RFC5280).
1001
1002=item B<-policy_check>
1003
1004Enables certificate policy processing.
1005
1006=item B<-policy_print>
1007
1008Print out diagnostics related to policy processing.
1009
1010=item B<-inhibit_any>
1011
1012Set policy variable inhibit-any-policy (see RFC5280).
1013
1014=item B<-inhibit_map>
1015
1016Set policy variable inhibit-policy-mapping (see RFC5280).
1017
1018=item B<-purpose> I<purpose>
1019
1020The intended use for the certificate. If this option is not specified, this
1021command will not consider certificate purpose during chain verification.
1022Currently accepted uses are B<sslclient>, B<sslserver>, B<nssslserver>,
1023B<smimesign>, B<smimeencrypt>.
1024
1025=item B<-verify_depth> I<num>
1026
1027Limit the certificate chain to I<num> intermediate CA certificates.
1028A maximal depth chain can have up to I<num>+2 certificates, since neither the
1029end-entity certificate nor the trust-anchor certificate count against the
1030B<-verify_depth> limit.
1031
1032=item B<-verify_email> I<email>
1033
1034Verify if I<email> matches the email address in Subject Alternative Name or
1035the email in the subject Distinguished Name.
1036
1037=item B<-verify_hostname> I<hostname>
1038
1039Verify if I<hostname> matches DNS name in Subject Alternative Name or
1040Common Name in the subject certificate.
1041
1042=item B<-verify_ip> I<ip>
1043
1044Verify if I<ip> matches the IP address in Subject Alternative Name of
1045the subject certificate.
1046
1047=item B<-verify_name> I<name>
1048
1049Use default verification policies like trust model and required certificate
1050policies identified by I<name>.
1051The trust model determines which auxiliary trust or reject OIDs are applicable
1052to verifying the given certificate chain.
1053See the B<-addtrust> and B<-addreject> options for L<openssl-x509(1)>.
1054Supported policy names include: B<default>, B<pkcs7>, B<smime_sign>,
1055B<ssl_client>, B<ssl_server>.
1056These mimics the combinations of purpose and trust settings used in SSL, CMS
1057and S/MIME.
1058As of OpenSSL 1.1.0, the trust model is inferred from the purpose when not
1059specified, so the B<-verify_name> options are functionally equivalent to the
1060corresponding B<-purpose> settings.
1061
9fcb9702
RS
1062=back
1063
bc24e3ee
RS
1064=head2 Name Format Options
1065
1066OpenSSL provides fine-grain control over how the subject and issuer DN's are
1067displayed.
1068This is specified by using the B<-nameopt> option, which takes a
1069comma-separated list of options from the following set.
e02b13ad 1070An option may be preceded by a minus sign, C<->, to turn it off.
bc24e3ee
RS
1071The default value is C<oneline>.
1072The first four are the most commonly used.
1073
1074=over 4
1075
1076=item B<compat>
1077
1078Display the name using an old format from previous OpenSSL versions.
1079
1080=item B<RFC2253>
1081
1082Display the name using the format defined in RFC 2253.
1083It is equivalent to B<esc_2253>, B<esc_ctrl>, B<esc_msb>, B<utf8>,
1084B<dump_nostr>, B<dump_unknown>, B<dump_der>, B<sep_comma_plus>, B<dn_rev>
1085and B<sname>.
1086
1087=item B<oneline>
1088
1089Display the name in one line, using a format that is more readable
1090RFC 2253.
1091It is equivalent to B<esc_2253>, B<esc_ctrl>, B<esc_msb>, B<utf8>,
1092B<dump_nostr>, B<dump_der>, B<use_quote>, B<sep_comma_plus_space>,
1093B<space_eq> and B<sname> options.
1094
1095=item B<multiline>
1096
1097Display the name using multiple lines.
1098It is equivalent to B<esc_ctrl>, B<esc_msb>, B<sep_multiline>, B<space_eq>,
1099B<lname> and B<align>.
1100
1101=item B<esc_2253>
1102
1103Escape the "special" characters in a field, as required by RFC 2253.
1104That is, any of the characters C<,+"E<lt>E<gt>;>, C<#> at the beginning of
1105a string and leading or trailing spaces.
1106
1107=item B<esc_2254>
1108
1109Escape the "special" characters in a field as required by RFC 2254 in a field.
1110That is, the B<NUL> character and and of C<()*>.
1111
1112=item B<esc_ctrl>
1113
1114Escape non-printable ASCII characters, codes less than 0x20 (space)
1115or greater than 0x7F (DELETE). They are displayed using RFC 2253 C<\XX>
1116notation where B<XX> are the two hex digits representing the character value.
1117
1118=item B<esc_msb>
1119
1120Escape any characters with the most significant bit set, that is with
1121values larger than 127, as described in B<esc_ctrl>.
1122
1123=item B<use_quote>
1124
1125Escapes some characters by surrounding the entire string with quotation
1126marks, C<">.
1127Without this option, individual special characters are preceeded with
1128a backslash character, C<\>.
1129
1130=item B<utf8>
1131
1132Convert all strings to UTF-8 format first as required by RFC 2253.
1133If the output device is UTF-8 compatible, then using this option (and
1134not setting B<esc_msb>) may give the correct display of multibyte
1135characters.
1136If this option is not set, then multibyte characters larger than 0xFF
1137will be output as C<\UXXXX> for 16 bits or C<\WXXXXXXXX> for 32 bits.
1138In addition, any UTF8Strings will be converted to their character form first.
1139
1140=item B<ignore_type>
1141
1142This option does not attempt to interpret multibyte characters in any
1143way. That is, the content octets are merely dumped as though one octet
1144represents each character. This is useful for diagnostic purposes but
1145will result in rather odd looking output.
1146
1147=item B<show_type>
1148
1149Display the type of the ASN1 character string before the value,
1150such as C<BMPSTRING: Hello World>.
1151
1152=item B<dump_der>
1153
1154Any fields that would be output in hex format are displayed using
1155the DER encoding of the field.
1156If not set, just the content octets are displayed.
1157Either way, the B<#XXXX...> format of RFC 2253 is used.
1158
1159=item B<dump_nostr>
1160
1161Dump non-character strings, such as ASN.1 B<OCTET STRING>.
1162If this option is not set, then non character string types will be displayed
1163as though each content octet represents a single character.
1164
1165=item B<dump_all>
1166
1167Dump all fields. When this used with B<dump_der>, this allows the
1168DER encoding of the structure to be unambiguously determined.
1169
1170=item B<dump_unknown>
1171
1172Dump any field whose OID is not recognised by OpenSSL.
1173
1174=item B<sep_comma_plus>, B<sep_comma_plus_space>, B<sep_semi_plus_space>,
1175B<sep_multiline>
1176
1177Specify the field separators. The first word is used between the
1178Relative Distinguished Names (RDNs) and the second is between
1179multiple Attribute Value Assertions (AVAs). Multiple AVAs are
1180very rare and their use is discouraged.
1181The options ending in "space" additionally place a space after the separator to make it more readable.
1182The B<sep_multiline> starts each field on its own line, and uses "plus space"
1183for the AVA separator.
1184It also indents the fields by four characters.
1185The default value is B<sep_comma_plus_space>.
1186
1187=item B<dn_rev>
1188
1189Reverse the fields of the DN as required by RFC 2253.
1190This also reverses the order of multiple AVAs in a field, but this is
1191permissible as there is no ordering on values.
1192
1193=item B<nofname>, B<sname>, B<lname>, B<oid>
1194
1195Specify how the field name is displayed.
1196B<nofname> does not display the field at all.
1197B<sname> uses the "short name" form (CN for commonName for example).
1198B<lname> uses the long form.
1199B<oid> represents the OID in numerical form and is useful for
1200diagnostic purpose.
1201
1202=item B<align>
1203
1204Align field values for a more readable output. Only usable with
1205B<sep_multiline>.
1206
1207=item B<space_eq>
1208
1209Places spaces round the equal sign, C<=>, character which follows the field
1210name.
1211
0b3b2b33
RS
1212=back
1213
d4bff20d
RS
1214=head2 TLS Version Options
1215
1216Several commands use SSL, TLS, or DTLS. By default, the commands use TLS and
1217clients will offer the lowest and highest protocol version they support,
1218and servers will pick the highest version that the client offers that is also
1219supported by the server.
1220
1221The options below can be used to limit which protocol versions are used,
1222and whether TCP (SSL and TLS) or UDP (DTLS) is used.
1223Note that not all protocols and flags may be available, depending on how
1224OpenSSL was built.
1225
1226=over 4
1227
1228=item B<-ssl3>, B<-tls1>, B<-tls1_1>, B<-tls1_2>, B<-tls1_3>, B<-no_ssl3>, B<-no_tls1>, B<-no_tls1_1>, B<-no_tls1_2>, B<-no_tls1_3>
1229
1230These options require or disable the use of the specified SSL or TLS protocols.
1231When a specific TLS version is required, only that version will be offered or
1232accepted.
1233Only one specific protocol can be given and it cannot be combined with any of
1234the B<no_> options.
1235
1236=item B<-dtls>, B<-dtls1>, B<-dtls1_2>
1237
1238These options specify to use DTLS instead of DLTS.
1239With B<-dtls>, clients will negotiate any supported DTLS protocol version.
1240Use the B<-dtls1> or B<-dtls1_2> options to support only DTLS1.0 or DTLS1.2,
1241respectively.
1242
bc24e3ee
RS
1243=back
1244
018aaeb4
RS
1245=head2 Engine Options
1246
1247=over 4
1248
1249=item B<-engine> I<id>
1250
1251Use the engine identified by I<id> and use all the methods it
1252implements (algorithms, key storage, etc.), unless specified otherwise in
1253the command-specific documentation or it is configured to do so, as described
1254in L<config(5)/Engine Configuration Module>.
1255
1256=back
1257
0b836c21
RL
1258=head1 ENVIRONMENT
1259
22bb8c25
RS
1260The OpenSSL library can be take some configuration parameters from the
1261environment. Some of these variables are listed below. For information
1262about specific commands, see L<openssl-engine(1)>, L<openssl-provider(1)>,
1263L<openssl-rehash(1)>, and L<tsget(1)>.
1264
1265For information about the use of environment variables in configuration,
1266see L<config(5)/ENVIRONMENT>.
1267
1268For information about querying or specifying CPU architecture flags, see
1269L<OPENSSL_ia32cap(3)>, and L<OPENSSL_s390xcap(3)>.
1270
1271For information about all environment variables used by the OpenSSL libraries,
1272see L<openssl-env(7)>.
1273
0b836c21
RL
1274=over 4
1275
fed8bd90 1276=item B<OPENSSL_TRACE=>I<name>[,...]
0b836c21
RL
1277
1278Enable tracing output of OpenSSL library, by name.
1279This output will only make sense if you know OpenSSL internals well.
1280Also, it might not give you any output at all, depending on how
1281OpenSSL was built.
1282
1283The value is a comma separated list of names, with the following
1284available:
1285
1286=over 4
1287
1288=item B<TRACE>
1289
1290The tracing functionality.
1291
1292=item B<TLS>
1293
1294General SSL/TLS.
1295
1296=item B<TLS_CIPHER>
1297
1298SSL/TLS cipher.
1299
1300=item B<ENGINE_CONF>
1301
1302ENGINE configuration.
1303
1304=item B<ENGINE_TABLE>
1305
1306The function that is used by RSA, DSA (etc) code to select registered
1307ENGINEs, cache defaults and functional references (etc), will generate
1308debugging summaries.
1309
1310=item B<ENGINE_REF_COUNT>
1311
1312Reference counts in the ENGINE structure will be monitored with a line
1313of generated for each change.
1314
1315=item B<PKCS5V2>
1316
1317PKCS#5 v2 keygen.
1318
1319=item B<PKCS12_KEYGEN>
1320
1321PKCS#12 key generation.
1322
1323=item B<PKCS12_DECRYPT>
1324
1325PKCS#12 decryption.
1326
1327=item B<X509V3_POLICY>
1328
1329Generates the complete policy tree at various point during X.509 v3
1330policy evaluation.
1331
1332=item B<BN_CTX>
1333
1334BIGNUM context.
1335
1336=back
1337
1338=back
1339
aba3e65f
DSH
1340=head1 SEE ALSO
1341
b6b66573
DMSP
1342L<openssl-asn1parse(1)>,
1343L<openssl-ca(1)>,
1344L<openssl-ciphers(1)>,
1345L<openssl-cms(1)>,
1346L<openssl-crl(1)>,
1347L<openssl-crl2pkcs7(1)>,
1348L<openssl-dgst(1)>,
1349L<openssl-dhparam(1)>,
1350L<openssl-dsa(1)>,
1351L<openssl-dsaparam(1)>,
1352L<openssl-ec(1)>,
1353L<openssl-ecparam(1)>,
1354L<openssl-enc(1)>,
1355L<openssl-engine(1)>,
1356L<openssl-errstr(1)>,
1357L<openssl-gendsa(1)>,
1358L<openssl-genpkey(1)>,
1359L<openssl-genrsa(1)>,
1360L<openssl-kdf(1)>,
1361L<openssl-mac(1)>,
1362L<openssl-nseq(1)>,
1363L<openssl-ocsp(1)>,
1364L<openssl-passwd(1)>,
1365L<openssl-pkcs12(1)>,
1366L<openssl-pkcs7(1)>,
1367L<openssl-pkcs8(1)>,
1368L<openssl-pkey(1)>,
1369L<openssl-pkeyparam(1)>,
1370L<openssl-pkeyutl(1)>,
1371L<openssl-prime(1)>,
1372L<openssl-rand(1)>,
1373L<openssl-rehash(1)>,
1374L<openssl-req(1)>,
1375L<openssl-rsa(1)>,
1376L<openssl-rsautl(1)>,
1377L<openssl-s_client(1)>,
1378L<openssl-s_server(1)>,
1379L<openssl-s_time(1)>,
1380L<openssl-sess_id(1)>,
1381L<openssl-smime(1)>,
1382L<openssl-speed(1)>,
1383L<openssl-spkac(1)>,
1384L<openssl-srp(1)>,
1385L<openssl-storeutl(1)>,
1386L<openssl-ts(1)>,
1387L<openssl-verify(1)>,
1388L<openssl-version(1)>,
1389L<openssl-x509(1)>,
1390L<config(5)>,
1391L<crypto(7)>,
22bb8c25 1392L<openssl-env(7)>.
b6b66573
DMSP
1393L<ssl(7)>,
1394L<x509v3_config(5)>
1395
aba3e65f
DSH
1396
1397=head1 HISTORY
1398
2f0ea936 1399The B<list> -I<XXX>B<-algorithms> options were added in OpenSSL 1.0.0;
88220dcb
BM
1400For notes on the availability of other commands, see their individual
1401manual pages.
aba3e65f 1402
21d08b9e
RS
1403The B<-issuer_checks> option is deprecated as of OpenSSL 1.1.0 and
1404is silently ignored.
1405
e2f92610
RS
1406=head1 COPYRIGHT
1407
33388b44 1408Copyright 2000-2020 The OpenSSL Project Authors. All Rights Reserved.
e2f92610 1409
449040b4 1410Licensed under the Apache License 2.0 (the "License"). You may not use
e2f92610
RS
1411this file except in compliance with the License. You can obtain a copy
1412in the file LICENSE in the source distribution or at
1413L<https://www.openssl.org/source/license.html>.
1414
1415=cut