Hasty Briefsbeta

双语

The State of OpenSSL for pyca/cryptography

4 months ago
  • #Cryptography
  • #Python
  • #OpenSSL
  • Python加密库pyca/cryptography依赖OpenSSL实现核心加密算法已有12年
  • OpenSSL的发展历程可分为三个阶段:2014年前维护不足、心脏出血漏洞事件后的改进期、2021年后OpenSSL 3出现的功能倒退
  • OpenSSL 3存在性能倒退、复杂度激增和API设计问题,导致维护者深感挫败
  • 性能问题包括证书解析和密钥加载速度显著下降,部分操作比OpenSSL 1.1.1慢三倍
  • pyca/cryptography通过将部分功能迁移至Rust实现性能提升,证明改进可能性存在
  • OpenSSL 3的新API(如OSSL_PARAM)因降低性能、增加复杂度、损害代码可读性而遭批评
  • OpenSSL的测试验证机制存在缺陷,CI系统不稳定且测试覆盖率不足导致漏洞难发现
  • 内存安全问题令人担忧,与其他项目不同,OpenSSL未承诺迁移至Rust等内存安全语言
  • pyca/cryptography团队正考虑降低对OpenSSL依赖,可能转向LibreSSL/BoringSSL/AWS-LC等分支版本
  • 未来可能彻底放弃OpenSSL支持,探索Graviola等替代加密实现方案