openssl - OpenSSL 构建之间有什么区别
问题描述
我打算下载并编译 OpenSSL,但我对它们之间的区别有点困惑:
OpenSSL 1.1.1a
,
OpenSSL 1.0.2.q
和OpenSSL 1.1.0j
令人困惑的是,它们都是在同一日期发布的,如果一个版本号比另一个版本号更新,那么这会抛出最初的差异。
如果有区别,您什么时候会使用其中一种?
解决方案
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,以及一些错误。通常,当发现一个漏洞时,它会影响多个版本,并且同时修补所有或至少几个版本,而这一次发生了。
推荐阅读
- docker - 在 Google VM 上构建 docker 映像失败 - 在 conda 设置阶段
- c# - 如何推送或查询本地我的本地 .NET nuget 存储库
- vue.js - 在 Apollo Vue 中使用 GraphQL 上的 QueryParams 获取数据
- reactjs - webpack 无法解析 'D:\sudi\aa-Server-side-render\MAPS101_Fresh_ssr\src\scss' 中的 '../../assets/icon-font/icomoon.eot?e3uwku'
- frontend - 更新 LitElement 的成员以刷新渲染?
- xcopy - XCopy - 文件夹内容排除
- python - Django - 站点地图 - 手动设置绝对网址
- c# - 错误:出现一个或多个错误。重定向或身份验证重播过多
- bash - 无法从 apache localhost 运行 ant(ant:找不到命令)
- laravel - Laravel Redis 密钥格式未按预期工作