LibreSSL是什么

LibreSSLOpenSSL加密软件库的分支,是一个安全套接层和传输层安全协议的开源实现。在OpenSSL爆出心脏出血安全漏洞之后创立了LibreSSL,重构OpenSSL代码,以提供一个更安全的替代品。

LibreSSL 是 OpenSSL 加密软件库的一个分支,是一个安全套接层和传输层安全协议的开源实现。在 OpenSSL 爆出心脏出血安全漏洞之后,一些 OpenBSD 开发者于 2014 年 4 月创立了 LibreSSL,目标是重构 OpenSSL 的代码,以提供一个更安全的替代品。

LibreSSL是什么

LibreSSL 复刻自 OpenSSL 库的 1.0.1g 分支,它将遵循 OpenBSD 基金会在其他项目所使用的安全指导原则。

历史

在 OpenSSL 爆出心脏出血漏洞后的一周之内,OpenBSD 开发团队便决定自行维护一个 OpenSSL 分支。开发团队于 2014 年 4 月 11 日注册 libressl.org 域名,该项目于 2014 年 4 月 22 日公布。

OpenBSD 开发团队随即开始清理 OpenSSL 的代码,在第一周,LibreSSL 开发团队删去了 90000 多行的代码。一些陈旧或无用代码被移除,同时对一些比较罕见的操作系统的支持也被移除。LibreSSL 最初的目标平台是 OpenBSD 5.6,但当代码稳定之后,还移植至其他平台。截至 2014 年 4 月,该项目仍在寻求“稳定的”外部资金支持。

变化详情

内存相关

一些较显着和重要的变化包括更换自定义的内存访问调用为标准函数(例如 strlcpy、calloc、asprintf、reallocarray 等)。这有助于在将来用更先进的内存调试器,或通过观察程序的崩溃情况来发现缓存溢出等错误。CVS 提交日志中也记录了对潜在双重释放内存的修复(包括空指针值的显式分配)。

加密算法

原本不安全的种子生成方法(由内核原生提供)被移除,以确保随机数种子是通过安全的随机数生成器产生的。又新加入了一系列算法,包括 ChaCha20-Poly1305 等。

其他改动

加入了的完整性检查,以检查长度参数、无符号到有符号变量的赋值、指针值/方法返回值等数据的有效性。启用了一些使之更加安全的编译器选项和标志(-Wuninitialized,-Werror 等),这有助于发现潜在问题。为遵循良好的编程风格,项目也提高了代码可读性并清理空白字符,使之匹配 BSD 的代码风格(KNF)。移除了不必要或不安全的宏和变量;移除了未使用的或旧的程序集、应用程序、演示及文档文件/代码(Perl 脚本、C 语言文件等)。移除了对 FIPS 140-2 的支持、不安全的算法 Dual EC DRBG 及旧的协议/加密器(SSLv2)。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年11月13日 上午2:33
下一篇 2023年11月13日 上午2:35

相关推荐

  • OpenSSL是什么软件

    OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。广泛被应用在互联网的网页服务器上。 主要库以C语言写成,实现基本的加密功能及SSL与TLS协议。 OpenSSL 是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。这个包广泛被应用在互联网…

    2023年11月13日
    4000
  • OpenSSL介绍

    OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。广泛被应用在互联网的网页服务器上。 主要库以C语言写成,实现基本的加密功能及SSL与TLS协议。 OpenSSL 是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。这个包广泛被应用在互联网…

    2023年9月12日
    1500
  • OpenSSL软件是什么

    OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。广泛被应用在互联网的网页服务器上。 主要库以C语言写成,实现基本的加密功能及SSL与TLS协议。 OpenSSL 是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。这个包广泛被应用在互联网…

    2023年9月12日
    1200
  • 什么是OpenSSL

    OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。广泛被应用在互联网的网页服务器上。 主要库以C语言写成,实现基本的加密功能及SSL与TLS协议。 OpenSSL 是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。这个包广泛被应用在互联网…

    2023年9月12日
    1300



微信客服