OpenSSL 3.1 正式发布了,OpenSSL 3.1 主要是对 OpenSSL 3.0 中可用功能的一个小型增量改进版本。
主要变化是:
符合 FIPS 140-3 的 FIPS 提供程序
3.1 版本的FIPS 提供程序已升级为符合 FIPS 140-3 标准。为了实现此合规性,需要对 FIPS 提供程序进行一些更改。
其中最重要的更改是:
- 某些算法包含在提供程序中,但不再被批准使用。包括三重 DES ECB、三重 DES CBC 和 EdDSA。出于向后兼容的原因,它们保留在 FIPS 提供程序中,但标有
fips=no
属性查询。这意味着所有需要 FIPS 合规性的应用程序都应该明确指定fips=yes
,即使它们只加载了 FIPS 提供程序(通常通过配置或使用EVP_default_properties_enable_fips()
函数) - 现在每次加载模块时都会运行自检,而不是在安装模块时运行。由于 NIST 简化了自测过程,这些测试的运行速度比在 3.0 FIPS 提供程序中的运行速度快得多。
其他性能改进
- 重构 OSSL_LIB_CTX 代码以避免过度锁定
- 编码器和解码器框架的性能改进
- 对内部数据结构和缓存(例如散列结构、IV 缓存)的性能修复
- 改进的 FIPS RSA 密钥生成器性能
- 跨多个处理器架构对多种不同算法(例如 AES-GCM、ChaCha20、SM3、SM4、SM4-GCM)进行各种汇编器优化
更新公告 | 下载地址