OpenSSL

Developer Tools

The TLS/SSL and general-purpose cryptography toolkit.

Latest openssl-3.0.21 · by OpenSSL ProjectWebsiteopenssl/openssl

Release activity

Release activity — 10 releases across 3 days since Apr 7, 2026. Each cell is one day; darker means more releases that day. Nothing is recorded before Apr 7, 2026. Older weeks are hidden at this screen width.
MayJunJulAug
SundayNo releases on Apr 19, 2026No releases on Apr 26, 2026No releases on May 3, 2026No releases on May 10, 2026No releases on May 17, 2026No releases on May 24, 2026No releases on May 31, 2026No releases on Jun 7, 2026No releases on Jun 14, 2026No releases on Jun 21, 2026No releases on Jun 28, 2026No releases on Jul 5, 2026No releases on Jul 12, 2026No releases on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026
MondayNo releases on Apr 20, 2026No releases on Apr 27, 2026No releases on May 4, 2026No releases on May 11, 2026No releases on May 18, 2026No releases on May 25, 2026No releases on Jun 1, 2026No releases on Jun 8, 2026No releases on Jun 15, 2026No releases on Jun 22, 2026No releases on Jun 29, 2026No releases on Jul 6, 2026No releases on Jul 13, 2026No releases on Jul 20, 2026No releases on Jul 27, 2026No releases on Aug 3, 2026
TuesdayNo releases on Apr 21, 2026No releases on Apr 28, 2026No releases on May 5, 2026No releases on May 12, 2026No releases on May 19, 2026No releases on May 26, 2026No releases on Jun 2, 20265 releases on Jun 9, 2026No releases on Jun 16, 2026No releases on Jun 23, 2026No releases on Jun 30, 2026No releases on Jul 7, 2026No releases on Jul 14, 2026No releases on Jul 21, 2026No releases on Jul 28, 2026No releases on Aug 4, 2026
WednesdayNo releases on Apr 22, 2026No releases on Apr 29, 2026No releases on May 6, 2026No releases on May 13, 2026No releases on May 20, 2026No releases on May 27, 2026No releases on Jun 3, 2026No releases on Jun 10, 2026No releases on Jun 17, 2026No releases on Jun 24, 2026No releases on Jul 1, 2026No releases on Jul 8, 2026No releases on Jul 15, 2026No releases on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026
ThursdayNo releases on Apr 23, 2026No releases on Apr 30, 2026No releases on May 7, 2026No releases on May 14, 2026No releases on May 21, 2026No releases on May 28, 2026No releases on Jun 4, 2026No releases on Jun 11, 2026No releases on Jun 18, 2026No releases on Jun 25, 2026No releases on Jul 2, 2026No releases on Jul 9, 2026No releases on Jul 16, 2026No releases on Jul 23, 2026No releases on Jul 30, 2026No releases on Aug 6, 2026
FridayNo releases on Apr 24, 2026No releases on May 1, 2026No releases on May 8, 2026No releases on May 15, 2026No releases on May 22, 2026No releases on May 29, 2026No releases on Jun 5, 2026No releases on Jun 12, 2026No releases on Jun 19, 2026No releases on Jun 26, 2026No releases on Jul 3, 2026No releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 2026No releases on Aug 7, 2026
SaturdayNo releases on Apr 25, 2026No releases on May 2, 2026No releases on May 9, 2026No releases on May 16, 2026No releases on May 23, 2026No releases on May 30, 2026No releases on Jun 6, 2026No releases on Jun 13, 2026No releases on Jun 20, 2026No releases on Jun 27, 2026No releases on Jul 4, 2026No releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 2026No releases on Aug 1, 2026

10 releases since Apr 7, 2026, busiest day 5

Changelog

openssl-3.0.21

OpenSSL 3.0.21

Security 9
  • Fix heap use-after-free in PKCS7_verify()
  • Fix CMS AuthEnvelopedData processing that may accept forged messages
  • Fix AES-OCB IV ignored on EVP_Cipher() path
  • Fix possible heap buffer overflow in ASN.1 multibyte string conversion
  • Fix out-of-bounds read in CMS password-based decryption
  • Fix heap buffer over-read in ASN.1 content parsing

OpenSSL 3.0.21 is a security patch release. The most severe CVE fixed in this release is High.

This release incorporates the following bug fixes and mitigations:

  • Fixed heap use-after-free in PKCS7_verify(). (CVE-2026-45447)

  • Fixed CMS AuthEnvelopedData processing may accept forged messages. (CVE-2026-34182)

  • Fixed AES-OCB IV ignored on EVP_Cipher() path. (CVE-2026-45445)

  • Fixed possible heap buffer overflow in ASN.1 multibyte string conversion. (CVE-2026-7383)

  • Fixed out-of-bounds read in CMS password-based decryption. (CVE-2026-9076)

  • Fixed heap buffer over-read in ASN.1 content parsing. (CVE-2026-34180)

  • Fixed possible NULL dereference in password-dased CMS decryption. (CVE-2026-42766)

  • Fixed FFC-DH peer validation uses attacker-supplied q. (CVE-2026-42770)

  • Fixed incorrect tag processing for empty messages in AES-GCM-SIV and AES-SIV modes. (CVE-2026-45446)

View originalPermalink
How openssl-3.0.21 went
openssl-3.4.6

OpenSSL 3.4.6

Security 13
  • Fixed heap use-after-free in PKCS7_verify()
  • Fixed CMS AuthEnvelopedData processing that may accept forged messages
  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler
  • Fixed AES-OCB IV ignored on EVP_Cipher() path
  • Fixed possible heap buffer overflow in ASN.1 multibyte string conversion
  • Fixed out-of-bounds read in CMS password-based decryption

OpenSSL 3.4.6 is a security patch release. The most severe CVE fixed in this release is High.

This release incorporates the following bug fixes and mitigations:

  • Fixed heap use-after-free in PKCS7_verify(). (CVE-2026-45447)

  • Fixed CMS AuthEnvelopedData processing may accept forged messages. (CVE-2026-34182)

  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler. (CVE-2026-34183)

  • Fixed AES-OCB IV ignored on EVP_Cipher() path. (CVE-2026-45445)

  • Fixed possible heap buffer overflow in ASN.1 multibyte string conversion. (CVE-2026-7383)

  • Fixed out-of-bounds read in CMS password-based decryption. (CVE-2026-9076)

  • Fixed heap buffer over-read in ASN.1 content parsing. (CVE-2026-34180)

  • Fixed PKCS#12 files with PBMAC1 are accepted with short HMAC keys. (CVE-2026-34181)

  • Fixed possible NULL dereference in password-dased CMS decryption. (CVE-2026-42766)

  • Fixed multi-RecipientInfo Bleichenbacher Oracle in CMS_decrypt() and PKCS7_decrypt(). (CVE-2026-42768)

  • Fixed trust anchor substitution via cert/issuer typo in CMP rootCaKeyUpdate. (CVE-2026-42769)

  • Fixed FFC-DH peer validation uses attacker-supplied q. (CVE-2026-42770)

  • Fixed incorrect tag processing for empty messages in AES-GCM-SIV and AES-SIV modes. (CVE-2026-45446)

View originalPermalink
How openssl-3.4.6 went
openssl-3.5.7

OpenSSL 3.5.7

Security 15
  • Fixed heap use-after-free in PKCS7_verify()
  • Fixed CMS AuthEnvelopedData processing may accept forged messages
  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler
  • Fixed NULL pointer dereference in QUIC server initial packet handling
  • Fixed AES-OCB IV ignored on EVP_Cipher() path
  • Fixed possible heap buffer overflow in ASN.1 multibyte string conversion

OpenSSL 3.5.7 is a security patch release. The most severe CVE fixed in this release is High.

This release incorporates the following bug fixes and mitigations:

  • Fixed heap use-after-free in PKCS7_verify(). (CVE-2026-45447)

  • Fixed CMS AuthEnvelopedData processing may accept forged messages. (CVE-2026-34182)

  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler. (CVE-2026-34183)

  • Fixed NULL pointer dereference in QUIC server initial packet handling. (CVE-2026-42764)

  • Fixed AES-OCB IV ignored on EVP_Cipher() path. (CVE-2026-45445)

  • Fixed possible heap buffer overflow in ASN.1 multibyte string conversion. (CVE-2026-7383)

  • Fixed out-of-bounds read in CMS password-based decryption. (CVE-2026-9076)

  • Fixed heap buffer over-read in ASN.1 content parsing. (CVE-2026-34180)

  • Fixed PKCS#12 files with PBMAC1 are accepted with short HMAC keys. (CVE-2026-34181)

  • Fixed possible NULL dereference in password-dased CMS decryption. (CVE-2026-42766)

  • Fixed NULL pointer dereference in CRMF EncryptedValue decryption. (CVE-2026-42767)

  • Fixed multi-RecipientInfo Bleichenbacher Oracle in CMS_decrypt() and PKCS7_decrypt(). (CVE-2026-42768)

  • Fixed trust anchor substitution via cert/issuer typo in CMP rootCaKeyUpdate. (CVE-2026-42769)

  • Fixed FFC-DH peer validation uses attacker-supplied q. (CVE-2026-42770)

  • Fixed incorrect tag processing for empty messages in AES-GCM-SIV and AES-SIV modes. (CVE-2026-45446)

View originalPermalink
How openssl-3.5.7 went
openssl-3.6.3

OpenSSL 3.6.3

Security 17
  • Fixed heap use-after-free in PKCS7_verify()
  • Fixed CMS AuthEnvelopedData processing that may accept forged messages
  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler
  • Fixed double-free when checking OCSP stapled response
  • Fixed NULL pointer dereference in QUIC server initial packet handling
  • Fixed AES-OCB IV ignored on EVP_Cipher() path

OpenSSL 3.6.3 is a security patch release. The most severe CVE fixed in this release is High.

This release incorporates the following bug fixes and mitigations:

  • Fixed heap use-after-free in PKCS7_verify(). (CVE-2026-45447)

  • Fixed CMS AuthEnvelopedData processing may accept forged messages. (CVE-2026-34182)

  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler. (CVE-2026-34183)

  • Fixed double-free when checking OCSP stapled response. (CVE-2026-35188)

  • Fixed NULL pointer dereference in QUIC server initial packet handling. (CVE-2026-42764)

  • Fixed AES-OCB IV ignored on EVP_Cipher() path. (CVE-2026-45445)

  • Fixed possible heap buffer overflow in ASN.1 multibyte string conversion. (CVE-2026-7383)

  • Fixed out-of-bounds read in CMS password-based decryption. (CVE-2026-9076)

  • Fixed heap buffer over-read in ASN.1 content parsing. (CVE-2026-34180)

  • Fixed PKCS#12 files with PBMAC1 are accepted with short HMAC keys. (CVE-2026-34181)

  • Fixed NULL dereference in certificate verification with OCSP Checking. (CVE-2026-42765)

  • Fixed possible NULL dereference in password-dased CMS decryption. (CVE-2026-42766)

  • Fixed NULL pointer dereference in CRMF EncryptedValue decryption. (CVE-2026-42767)

  • Fixed multi-RecipientInfo Bleichenbacher Oracle in CMS_decrypt() and PKCS7_decrypt(). (CVE-2026-42768)

  • Fixed trust anchor substitution via cert/issuer typo in CMP rootCaKeyUpdate. (CVE-2026-42769)

  • Fixed FFC-DH peer validation uses attacker-supplied q. (CVE-2026-42770)

  • Fixed incorrect tag processing for empty messages in AES-GCM-SIV and AES-SIV modes. (CVE-2026-45446)

View originalPermalink
How openssl-3.6.3 went
openssl-4.0.1

OpenSSL 4.0.1

Fixed 2
  • Fixed regression that led to openssl pkey command crash when encrypting a private key with interactively provided password
  • Fixed regression that led to openssl s_client -adv prematurely terminating when reading 16384 bytes in one read() call
Security 18
  • Fixed heap use-after-free in PKCS7_verify()
  • Fixed CMS AuthEnvelopedData processing that may accept forged messages
  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler
  • Fixed double-free when checking OCSP stapled response
  • Fixed NULL pointer dereference in QUIC server initial packet handling
  • Fixed AES-OCB IV ignored on EVP_Cipher() path

OpenSSL 4.0.1 is a security patch release. The most severe CVE fixed in this release is High.

This release incorporates the following bug fixes and mitigations:

  • Fixed heap use-after-free in PKCS7_verify(). (CVE-2026-45447)

  • Fixed CMS AuthEnvelopedData processing may accept forged messages. (CVE-2026-34182)

  • Fixed unbounded memory growth in the QUIC PATH_CHALLENGE handler. (CVE-2026-34183)

  • Fixed double-free when checking OCSP stapled response. (CVE-2026-35188)

  • Fixed NULL pointer dereference in QUIC server initial packet handling. (CVE-2026-42764)

  • Fixed AES-OCB IV ignored on EVP_Cipher() path. (CVE-2026-45445)

  • Fixed possible heap buffer overflow in ASN.1 multibyte string conversion. (CVE-2026-7383)

  • Fixed out-of-bounds read in CMS password-based decryption. (CVE-2026-9076)

  • Fixed heap buffer over-read in ASN.1 content parsing. (CVE-2026-34180)

  • Fixed PKCS#12 files with PBMAC1 are accepted with short HMAC keys. (CVE-2026-34181)

  • Fixed NULL dereference in certificate verification with OCSP Checking. (CVE-2026-42765)

  • Fixed possible NULL dereference in password-dased CMS decryption. (CVE-2026-42766)

  • Fixed NULL pointer dereference in CRMF EncryptedValue decryption. (CVE-2026-42767)

  • Fixed multi-RecipientInfo Bleichenbacher Oracle in CMS_decrypt() and PKCS7_decrypt(). (CVE-2026-42768)

  • Fixed trust anchor substitution via cert/issuer typo in CMP rootCaKeyUpdate. (CVE-2026-42769)

  • Fixed FFC-DH peer validation uses attacker-supplied q. (CVE-2026-42770)

  • Fixed possible out of bounds read in X509_VERIFY_PARAM_set1_email(). (CVE-2026-42771)

  • Fixed incorrect tag processing for empty messages in AES-GCM-SIV and AES-SIV modes. (CVE-2026-45446)

  • Fixed a regression introduced in 4.0.0 that led to a openssl pkey command crash when it was invoked to encrypt a private key with password being provided interactively.

  • Fixed a regression introduced in 4.0.0 that led to openssl s_client -adv command prematurely terminating a session when reading input of 16384 bytes in one read() call.

View originalPermalink
How openssl-4.0.1 went
openssl-4.0.0

OpenSSL 4.0.0

OpenSSL 4.0.0 is a feature release adding significant new functionality to OpenSSL.

This release incorporates the following potentially significant or incompatible changes:

  • Removed extra leading '00:' when printing key data such as an RSA modulus in hexadecimal format where the first (most significant) byte is >= 0x80.

  • Standardized the width of hexadecimal dumps to 24 bytes for signatures (to stay within the 80 characters limit) and 16 bytes for everything else.

  • Lower bounds checks are now enforced when using PKCS5_PBKDF2_HMAC API with FIPS provider.

  • Added AKID verification checks when X509_V_FLAG_X509_STRICT is set.

  • Augmented CRL verification process with several additional checks.

  • libcrypto no longer cleans up globally allocated data via atexit().

  • BIO_snprintf() now uses snprintf() provided by libc instead of internal implementation.

  • OPENSSL_cleanup() now runs in a global destructor, or not at all by default.

  • ASN1_STRING has been made opaque.

  • Signatures of numerous API functions, including those that are related to X509 processing, are changed to include const qualifiers for argument and return types, where suitable.

  • Deprecated X509_cmp_time(), X509_cmp_current_time(), and X509_cmp_timeframe() in favor of X509_check_certificate_times().

  • Removed support for the SSLv2 Client Hello.

  • Removed support for SSLv3. SSLv3 has been deprecated since 2015, and OpenSSL had it disabled by default since version 1.1.0 (2016).

  • Removed support for engines. The no-engine build option and the OPENSSL_NO_ENGINE macro are always present.

  • Support of deprecated elliptic curves in TLS according to RFC 8422 was disabled at compile-time by default. To enable it, use the enable-tls-deprecated-ec configuration option.

  • Support of explicit EC curves was disabled at compile-time by default. To enable it, use the enable-ec_explicit_curves configuration option.

  • Removed c_rehash script tool. Use openssl rehash instead.

  • Removed the deprecated msie-hack option from the openssl ca command.

  • Removed BIO_f_reliable() implementation without replacement. It was broken since 3.0 release without any complaints.

  • Removed deprecated support for custom EVP_CIPHER, EVP_MD, EVP_PKEY, and EVP_PKEY_ASN1 methods.

  • Removed deprecated fixed SSL/TLS version method functions.

  • Removed deprecated functions ERR_get_state(), ERR_remove_state() and ERR_remove_thread_state(). The ERR_STATE object is now always opaque.

  • Dropped darwin-i386{,-cc} and darwin-ppc{,64}{,-cc} targets from Configurations.

This release adds the following new features:

  • Support for Encrypted Client Hello (ECH, RFC 9849). See doc/designs/ech-api.md for details.

  • Support for RFC 8998, signature algorithm sm2sig_sm3, key exchange group curveSM2, and [tls-hybrid-sm2-mlkem] post-quantum group curveSM2MLKEM768.

  • cSHAKE function support as per SP 800-185.

  • "ML-DSA-MU" digest algorithm support.

  • Support for SNMP KDF and SRTP KDF.

  • FIPS self tests can now be deferred and run as needed when installing the FIPS module with the -defer_tests option of the openssl fipsinstall command.

  • Support for using either static or dynamic VC runtime linkage on Windows.

  • Support for negotiated FFDHE key exchange in TLS 1.2 in accordance with RFC 7919.

View originalPermalink
How openssl-4.0.0 went
openssl-3.3.7

OpenSSL 3.3.7

OpenSSL 3.3.7 is a security patch release. The most severe CVE fixed in this release is Moderate.

This release incorporates the following bug fixes and mitigations:

  • Fixed incorrect failure handling in RSA KEM RSASVE encapsulation. (CVE-2026-31790)

  • Fixed potential use-after-free in DANE client code. (CVE-2026-28387)

  • Fixed NULL pointer dereference when processing a delta CRL. (CVE-2026-28388)

  • Fixed possible NULL dereference when processing CMS KeyAgreeRecipientInfo. (CVE-2026-28389)

  • Fixed possible NULL dereference when processing CMS KeyTransportRecipientInfo. (CVE-2026-28390)

  • Fixed heap buffer overflow in hexadecimal conversion. (CVE-2026-31789)

View originalPermalink
How openssl-3.3.7 went
openssl-3.4.5

OpenSSL 3.4.5

OpenSSL 3.4.5 is a security patch release. The most severe CVE fixed in this release is Moderate.

This release incorporates the following bug fixes and mitigations:

  • Fixed incorrect failure handling in RSA KEM RSASVE encapsulation. (CVE-2026-31790)

  • Fixed potential use-after-free in DANE client code. (CVE-2026-28387)

  • Fixed NULL pointer dereference when processing a delta CRL. (CVE-2026-28388)

  • Fixed possible NULL dereference when processing CMS KeyAgreeRecipientInfo. (CVE-2026-28389)

  • Fixed possible NULL dereference when processing CMS KeyTransportRecipientInfo. (CVE-2026-28390)

  • Fixed heap buffer overflow in hexadecimal conversion. (CVE-2026-31789)

View originalPermalink
How openssl-3.4.5 went
openssl-3.5.6

OpenSSL 3.5.6

OpenSSL 3.5.6 is a security patch release. The most severe CVE fixed in this release is Moderate.

This release incorporates the following bug fixes and mitigations:

  • Fixed incorrect failure handling in RSA KEM RSASVE encapsulation. (CVE-2026-31790)

  • Fixed loss of key agreement group tuple structure when the DEFAULT keyword is used in the server-side configuration of the key-agreement group list. (CVE-2026-2673)

  • Fixed potential use-after-free in DANE client code. (CVE-2026-28387)

  • Fixed NULL pointer dereference when processing a delta CRL. (CVE-2026-28388)

  • Fixed possible NULL dereference when processing CMS KeyAgreeRecipientInfo. (CVE-2026-28389)

  • Fixed possible NULL dereference when processing CMS KeyTransportRecipientInfo. (CVE-2026-28390)

  • Fixed heap buffer overflow in hexadecimal conversion. (CVE-2026-31789)

View originalPermalink
How openssl-3.5.6 went
openssl-3.6.2

OpenSSL 3.6.2

OpenSSL 3.6.2 is a security patch release. The most severe CVE fixed in this release is Moderate.

This release incorporates the following bug fixes and mitigations:

  • Fixed incorrect failure handling in RSA KEM RSASVE encapsulation. (CVE-2026-31790)

  • Fixed loss of key agreement group tuple structure when the DEFAULT keyword is used in the server-side configuration of the key-agreement group list. (CVE-2026-2673)

  • Fixed out-of-bounds read in AES-CFB-128 on x86-64 CPUs with AVX-512 support. (CVE-2026-28386)

  • Fixed potential use-after-free in DANE client code. (CVE-2026-28387)

  • Fixed NULL pointer dereference when processing a delta CRL. (CVE-2026-28388)

  • Fixed possible NULL dereference when processing CMS KeyAgreeRecipientInfo. (CVE-2026-28389)

  • Fixed possible NULL dereference when processing CMS KeyTransportRecipientInfo. (CVE-2026-28390)

  • Fixed heap buffer overflow in hexadecimal conversion. (CVE-2026-31789)

View originalPermalink
How openssl-3.6.2 went
View all

Discussion