OPENSSL-CRL(1ossl)

πŸ’… openssl-crl β€” the CRL command, bestie edition

okay so this is openssl-crl(1ossl), one of the OpenSSL 1 commands, and it's literally the CRL (certificate revocation list) handler. Think of it as the group chat where certs get told they're cancelled πŸ’€ β€” and this command is how you read, convert, inspect and verify those lists.


✨ SYNOPSIS ✨

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]

🌸 DESCRIPTION 🌸

This command processes CRL files that are in DER or PEM format. That's it, that's the whole vibe β€” it's the CRL girlie πŸŽ€.


✨ OPTIONS ✨

  • -help β€” prints a usage message. the classic "wait what were the flags again" button 🫢
  • -inform DER|PEM β€” the format of the CRL you're feeding in. unspecified by default. full deets live in openssl-format-options(1).
  • -outform DER|PEM β€” the format you want the CRL out in. default is PEM. again, openssl-format-options(1) has the lore.
  • -key filename β€” the private key used to sign the CRL πŸ”‘
  • -keyform DER|PEM|P12 β€” the format of that private key file. unspecified by default. yep, openssl-format-options(1).
  • -in filename β€” the input file to read from. skip it and it reads from standard input πŸ“
  • -out filename β€” the output file to write to. defaults to standard output.
  • -gendelta filename β€” outputs a comparison between the main CRL and the one you name here. like a diff but for CRLs ✨
  • -badsig β€” corrupts the signature before writing it out. yes on purpose. it's useful for testing πŸ™ˆ
  • -dateopt β€” sets the date output format. values are rfc_822 and iso_8601. defaults to rfc_822.
  • -text β€” prints the CRL in text form. human-readable slay πŸ‘‘
  • -verify β€” verifies the signature in the CRL. if verification fails the program immediately exits, meaning further option processing (like -gendelta) is skipped. no second chances, periodt. this option is implicitly enabled if any of -CApath, -CAfile or -CAstore is specified.
  • -noout β€” don't output the encoded version of the CRL. the "I only want the tea, not the whole file" flag πŸ«–
  • -fingerprint β€” outputs the fingerprint of the CRL.
  • -crlnumber β€” outputs the number of the CRL.
  • -hash β€” outputs a hash of the issuer name. lowkey useful for looking up CRLs in a directory by issuer name πŸ”
  • -hash_old β€” outputs the "hash" of the CRL issuer name using the older algorithm, the one OpenSSL used before version 1.0.0. vintage core πŸ’€
  • -issuer β€” outputs the issuer name.
  • -lastupdate β€” outputs the lastUpdate field.
  • -nextupdate β€” outputs the nextUpdate field.
  • -nameopt option β€” how subject or issuer names get displayed. details in openssl-namedisplay-options(1) πŸŽ€
  • -CAfile file, -no-CAfile, -CApath dir, -no-CApath, -CAstore uri, -no-CAstore β€” see "Trusted Certificate Options" in openssl-verification-options(1) for the full rundown.
  • -provider name, -provider-path path, -provparam [name:]key=value, -propquery propq β€” see "Provider Options" in openssl(1), provider(7), and property(7).

🌈 EXAMPLES 🌈

Convert a CRL file from PEM to DER β€” glow-up but make it binary:

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

πŸ’€ BUGS πŸ’€

Ideally it should be possible to create a CRL using appropriate options and files too. like, rn it can't, and honestly? tragic 😭


πŸ¦‹ SEE ALSO πŸ¦‹

openssl(1), openssl-crl2pkcs7(1), openssl-ca(1), openssl-x509(1), ossl_store-file(7)


πŸ’œ HISTORY πŸ’œ

Since OpenSSL 3.3, the -verify option will exit with 1 on failure. noted, bestie πŸ“


Copyright 2000-2024 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>.


okay that's the whole page!! this one's from OpenSSL 3.5.9, dated 2026-09-29 β€” go forth and revoke responsibly, bestie πŸ§šπŸ’–βœ¨

πŸ“¦ where this page comes from