OpenSSL 3.6 推出,增强了安全性并提高了性能

  • 安全增强:LMS、FIPS 140-3 PCT 和符合 FIPS 186-5 的确定性 ECDSA
  • 性能改进:AVX-512/VAES、AArch64 上的 AES-CBC+HMAC 以及 LongArch 上的 SHA-2
  • 构建和工具更改:需要 C99 并添加 openssl configutl 实用程序
  • 协议和格式的新功能:TLS 1.3 中的 OCSP 多重装订和带有 KEM/ML-KEM 的 CMS

OpenSSL 3.6

新分支 OpenSSL 3.6 六个月后,它现已上市 以前这是对广受欢迎的开源加密库的一次重大更新。它带来了功能变更、安全性改进和性能优化,这些都会影响服务器和客户端应用程序。

除了支持最新技术和标准要求的调整外,此版本还引入了简化集成的实用程序和 API。在实践层面, 内部检查更加严格,互操作性得到改善,并且关键加密路径在多个架构上得到微调。

OpenSSL 3.6 中的主要新功能和协议

最明显的变化是签名的验证。 符合 NIST SP 800-208 标准的 LMS 在 FIPS 提供商中,默认情况下,随着不透明的 EVP_SKEY 对称密钥对象的到来,密钥派生和交换方法可以通过 EVP_KDF_CTX_set_SKEY(), EVP_KDF_derive_SKEY() y EVP_PKEY_derive_SKEY().

  • CMS 结合了 KEMRecipientInfo(RFC 9629)和 ML-KEM 支持(草案 draft-ietf-lamps-cms-kyber),有助于使用可抵御未来量子对手的密码学。
  • 服务器可以启用 TLS 1.3 中的 OCSP 多重装订,改进具有多个证书的链的撤销状态传递。
  • 允许在堆栈类型中定义“自由函数 thunk” OPENSSL_sk,从而更好地控制资源的释放。

安全性和 FIPS 合规性

该版本通过以下方式强化了验证模式的保证: FIPS 140-3 自检测试 (PCT):在 DH 密钥生成中,在使用 FIPS 时导入 SLH-DSA 密钥时,以及在导入 RSA、EC 和 ECX 密钥时在 FIPS 提供程序中,均符合 IG 10.3 指南。

该提供商还添加了以下支持 根据 FIPS 186-5 确定性生成 ECDSA 签名,并纳入了 PKEY 对象的 NIST 安全类别,使得根据所需的加密级别进行分类和应用策略变得更加容易。

OpenSSL 3.6 中的性能和架构优化

在 x86_64 上,OpenSSL 3.6 进行了优化 适用于 AES-CFB128 的英特尔 AVX-512 和 VAES,在密集型工作负载方面有显著改进。AArch64(64 位 ARM)增加了对 AES-CBC+HMAC-SHA 交错算法的支持,旨在加速认证加密场景。

LoongArch 架构接收以下汇编实现 SHA-2 以提高性能,而 QUIC 堆栈在确认所有流的 FIN 时添加通知,将有用的信息推进到应用程序平面。

编译和工具的变化

该项目最终放弃了 ANSI-C 编译器:从现在开始,工具链将 C99 功能 构建 OpenSSL。此外,还添加了实用程序 openssl configutl,旨在处理配置文件并转储等效文件。

在维护领域, 删除对 VxWorks 的支持 和相关功能已过时 EVP_PKEY_ASN1_METHOD。此外,该应用程序还包含新的选项 CRYPTO_MEM_SEC y CRYPTO_MEM_SEC_MINSIZE 明确初始化安全内存。

格式、互操作性和稳健性

默认参数增加 PKCS12 macsaltlen 从 8 到 16 (与 NIST SP 800-132 一致)并提高了 FIPS 和非 FIPS 实现之间新 PKCS12 存储的互操作性,减少了迁移和审计中的摩擦。

在实用层, openssl req 不再生成带有空扩展列表的证书 SKID/AKID 设置为“无”此外,还添加了一个缺失的检查来强化公共 RSA“加密”操作:调用者指示的输出缓冲区必须至少为模数的字节大小。

HMAC 密钥处理已弃用 安全内存储备 (在这种情况下避免不必要的额外成本),以及 API CRYPTO_THREAD__local 扩展以减少对特定于操作系统的 TLS 变量的依赖。

可用性和支持

OpenSSL 3.6 版本被认为是最终版本且稳定, 两年定期周期支持项目团队欢迎社区的贡献;发行说明和源代码可在 官方资料库 对于那些希望从源代码进行编译的人。

此版本通过更严格的 FIPS 控制增强了安全支柱,扩展了 CMS 和 TLS 等协议的功能,并最大限度地提高了流行架构上的性能;同时, 实现构建环境的现代化并简化管理 具有新的实用程序和互操作性调整。