首页 > 解决方案 > OpenSSL 构建之间有什么区别

问题描述

我打算下载并编译 OpenSSL,但我对它们之间的区别有点困惑:

OpenSSL 1.1.1a, OpenSSL 1.0.2.qOpenSSL 1.1.0j

令人困惑的是,它们都是在同一日期发布的,如果一个版本号比另一个版本号更新,那么这会抛出最初的差异。

如果有区别,您什么时候会使用其中一种?

标签: openssl

解决方案


1.0.2 1.1.0 1.1.1 是当前受支持的版本,如https://www.openssl.org/policies/releasestrat.html所述(尽管有些过时;1.1.1 于 2018 年 9 月发布)。如前所述,1.1.1 的主要变化是添加了 TLS1.3;1.1.0(2016-08 发布)中的重大变化是对协议状态机的完全重写(导致删除 SSL2 和静态-[EC]DH 套件;SSLv3 默认情况下被禁用,但可以在配置时启用)和命令行选项处理,并使许多 API 结构不透明。每个补丁版本的相当详细的更改都在相应(源)tarball 中的 CHANGES 文件中。

根据 CHANGES for 1.0.2q 1.1.0j 1.1.1a,目前支持的三个版本的这些补丁(字母)都是在 2018 年 11 月 20 日针对 CVE-2018-0734 以及针对 CVE-2018-5407 的 1.0.2 完成的以及针对 CVE-2018-0735 的 1.1.0 和 1.1.1,以及一些错误。通常,当发现一个漏洞时,它会影响多个版本,并且同时修补所有或至少几个版本,而这一次发生了。


推荐阅读