openssl-crl - CRL command
openssl crl [-help] [-inform DER|PEM] [-outform DER|PEM] [-key filename] [-keyform DER|PEM|P12] [-dateopt] [-text] [-in filename] [-out filename] [-gendelta filename] [-badsig] [-verify] [-noout] [-hash] [-hash_old] [-fingerprint] [-crlnumber] [-issuer] [-lastupdate] [-nextupdate] [-nameopt option] [-CAfile file] [-no-CAfile] [-CApath dir] [-no-CApath] [-CAstore uri] [-no-CAstore] [-provider name] [-provider-path path] [-provparam [name:]key=value] [-propquery propq]
This command processes CRL files in DER or PEM format.
Print out a usage message.
The CRL input format; unspecified by default. See openssl-format-options(1) for details.
The CRL output format; the default is PEM. See openssl-format-options(1) for details.
The private key to be used to sign the CRL.
The format of the private key file; unspecified by default. See openssl-format-options(1) for details.
This specifies the input filename to read from or standard input if this option is not specified.
Specifies the output filename to write to or standard output by default.
Output a comparison of the main CRL and the one specified here.
Corrupt the signature before writing it; this can be useful for testing.
Specify the date output format. Values are: rfc_822 and iso_8601. Defaults to rfc_822.
Note that despite its name, the rfc_822 format does not conform to RFC 822 or its successors RFC 2822 and RFC 5322. It outputs dates in the format "Mmm DD HH:MM:SS YYYY GMT" (e.g., "Jul 31 22:20:50 2017 GMT"). The month appears before the day, unlike all three RFCs, which put the day first. The 4-digit year differs from RFC 822 (which used 2-digit years), and the timezone name "GMT" is obsolete per RFC 2822 and RFC 5322 (which require numeric offsets such as "+0000").
Print out the CRL in text form.
Verify the signature in the CRL. If the verification fails, the program will immediately exit, i.e. further option processing (e.g. -gendelta) is skipped.
This option is implicitly enabled if any of -CApath, -CAfile or -CAstore is specified.
Don't output the encoded version of the CRL.
Output the fingerprint of the CRL.
Output the number of the CRL.
Output a hash of the issuer name. This can be use to lookup CRLs in a directory by issuer name.
Outputs the "hash" of the CRL issuer name using the older algorithm as used by OpenSSL before version 1.0.0.
Output the issuer name.
Output the lastUpdate field.
Output the nextUpdate field.
This specifies how the subject or issuer names are displayed. See openssl-namedisplay-options(1) for details.
See "Trusted Certificate Options" in openssl-verification-options(1) for details.
See "Provider Options" in openssl(1), provider(7), and property(7).
Convert a CRL file from PEM to DER:
openssl crl -in crl.pem -outform DER -out crl.der
Output the text form of a DER encoded certificate:
openssl crl -in crl.der -text -noout
Ideally it should be possible to create a CRL using appropriate options and files too.
openssl(1), openssl-crl2pkcs7(1), openssl-ca(1), openssl-x509(1), ossl_store-file(7)
Since OpenSSL 3.3, the -verify option will exit with 1 on failure.
Copyright 2000-2026 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 https://www.openssl.org/source/license.html.