OpenSSL 3.1.0 密码库发布

经过一年半的开发,OpenSSL 3.1.0 正式发布,实现了 SSL/TLS 协议和多种加密算法。OpenSSL 3.1 的支持将持续到 2025 年 3 月。此前的 OpenSSL 分支,即 OpenSSL 3.0 和 1.1.1 的支持将分别持续到 2026 年 9 月和 2023 年 9 月。该项目的代码以 Apache 2.0 许可证发布。

OpenSSL 3.1.0 的主要创新:

  • FIPS 模块实现了对符合 FIPS 140-3 安全标准的加密算法的支持。该模块的 FIPS 140-3 合规性认证流程已经启动。在认证完成之前,用户在将 OpenSSL 升级到 3.1 版本后,可以继续使用已通过 FIPS 140-2 认证的 FIPS 模块。新版本模块的变更包括加入了 Triple DES ECB、Triple DES CBC 和 EdDSA 算法,这些算法尚未通过 FIPS 合规性验证。新版本还进行了性能优化,并将内部测试的运行机制从仅在安装后运行改为每次加载模块时都运行。
  • OSSL_LIB_CTX 代码已重写。新版本消除了不必要的锁,从而提高了性能。
  • 编码器和解码器框架的性能得到提升。
  • 已对内部结构(哈希表)和缓存的使用进行了性能优化。
  • FIPS模式下RSA密钥生成速度提高。
  • 针对AES-GCM、ChaCha20、SM3、SM4和SM4-GCM算法,已针对不同的处理器架构实施了特定的汇编优化。例如,AES-GCM代码使用AVX512 vAES和vPCLMULQDQ指令进行了加速。
  • KBKDF(基于密钥的密钥派生函数)已添加对 KMAC(KECCAK 消息认证码)算法的支持。
  • 各种“OBJ_*”函数已被改编用于多线程代码。
  • 增加了使用基于 AArch64 架构的处理器中可用的 RNDR 指令和 RNDRRS 寄存器来生成伪随机数的功能。
  • 函数 OPENSSL_LH_stats、OPENSSL_LH_node_stats、OPENSSL_LH_node_usage_stats、OPENSSL_LH_stats_bio、OPENSSL_LH_node_stats_bio 和 OPENSSL_LH_node_usage_stats_bio 已被弃用。宏 DEFINE_LHASH_OF 已被弃用。

来源: opennet.ru

添加评论