| =pod |
| {- OpenSSL::safe::output_do_not_edit_headers(); -} |
| |
| =head1 NAME |
| |
| openssl-verify - certificate verification command |
| |
| =head1 SYNOPSIS |
| |
| B<openssl> B<verify> |
| [B<-help>] |
| [B<-CRLfile> I<filename>|I<uri>] |
| [B<-crl_download>] |
| [B<-show_chain>] |
| [B<-verbose>] |
| [B<-trusted> I<filename>|I<uri>] |
| [B<-untrusted> I<filename>|I<uri>] |
| [B<-vfyopt> I<nm>:I<v>] |
| {- $OpenSSL::safe::opt_name_synopsis -} |
| {- $OpenSSL::safe::opt_trust_synopsis -} |
| {- $OpenSSL::safe::opt_engine_synopsis -}{- $OpenSSL::safe::opt_v_synopsis -} |
| {- $OpenSSL::safe::opt_provider_synopsis -} |
| [B<-->] |
| [I<certificate> ...] |
| |
| =head1 DESCRIPTION |
| |
| This command verifies certificate chains. If a certificate chain has multiple |
| problems, this program attempts to display all of them. |
| |
| =head1 OPTIONS |
| |
| =over 4 |
| |
| =item B<-help> |
| |
| Print out a usage message. |
| |
| =item B<-CRLfile> I<filename>|I<uri> |
| |
| The file or URI should contain one or more CRLs in PEM or DER format. |
| This option can be specified more than once to include CRLs from multiple |
| sources. |
| |
| =item B<-crl_download> |
| |
| Attempt to download CRL information for certificates via their CDP entries. |
| |
| =item B<-show_chain> |
| |
| Display information about the certificate chain that has been built (if |
| successful). Certificates in the chain that came from the untrusted list will be |
| flagged as "untrusted". |
| |
| =item B<-verbose> |
| |
| Print extra information about the operations being performed. |
| |
| =item B<-trusted> I<filename>|I<uri> |
| |
| A file or URI of (more or less) trusted certificates. |
| See L<openssl-verification-options(1)> for more information on trust settings. |
| |
| This option can be specified more than once to load certificates from multiple |
| sources. |
| |
| =item B<-untrusted> I<filename>|I<uri> |
| |
| A file or URI of untrusted certificates to use for chain building. |
| This option can be specified more than once to load certificates from multiple |
| sources. |
| |
| =item B<-vfyopt> I<nm>:I<v> |
| |
| Pass options to the signature algorithm during verify operations. |
| Names and values of these options are algorithm-specific. |
| |
| {- $OpenSSL::safe::opt_name_item -} |
| |
| {- $OpenSSL::safe::opt_engine_item -} |
| {- output_off() if $disabled{"deprecated-3.0"}; "" -} |
| To load certificates or CRLs that require engine support, specify the |
| B<-engine> option before any of the |
| B<-trusted>, B<-untrusted> or B<-CRLfile> options. |
| {- output_on() if $disabled{"deprecated-3.0"}; "" -} |
| |
| {- $OpenSSL::safe::opt_trust_item -} |
| |
| {- $OpenSSL::safe::opt_v_item -} |
| |
| {- $OpenSSL::safe::opt_provider_item -} |
| |
| =item B<--> |
| |
| Indicates the last option. All arguments following this are assumed to be |
| certificate files. This is useful if the first certificate filename begins |
| with a B<->. |
| |
| =item I<certificate> ... |
| |
| One or more target certificates to verify, one per file. If no certificates are |
| given, this command will attempt to read a single certificate from standard |
| input. |
| |
| =back |
| |
| =head1 DIAGNOSTICS |
| |
| When a verify operation fails the output messages can be somewhat cryptic. The |
| general form of the error message is: |
| |
| server.pem: /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Test CA (1024 bit) |
| error 24 at 1 depth lookup:invalid CA certificate |
| |
| The first line contains the name of the certificate being verified followed by |
| the subject name of the certificate. The second line contains the error number |
| and the depth. The depth is number of the certificate being verified when a |
| problem was detected starting with zero for the target ("leaf") certificate |
| itself then 1 for the CA that signed the target certificate and so on. |
| Finally a textual version of the error number is presented. |
| |
| A list of the error codes and messages can be found in |
| L<X509_STORE_CTX_get_error(3)>; the full list is defined in the header file |
| F<< <openssl/x509_vfy.h> >>. |
| |
| This command ignores many errors, in order to allow all the problems with a |
| certificate chain to be determined. |
| |
| =head1 SEE ALSO |
| |
| L<openssl-verification-options(1)>, |
| L<openssl-x509(1)>, |
| L<ossl_store-file(7)> |
| |
| =head1 HISTORY |
| |
| The B<-show_chain> option was added in OpenSSL 1.1.0. |
| |
| The B<-engine option> was deprecated in OpenSSL 3.0. |
| |
| =head1 COPYRIGHT |
| |
| Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved. |
| |
| Licensed under the Apache License 2.0 (the "License"). You may not use |
| this file except in compliance with the License. You can obtain a copy |
| in the file LICENSE in the source distribution or at |
| L<https://www.openssl.org/source/license.html>. |
| |
| =cut |