百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

openSUSE Leap 16.0 开发启动 | LibreSSL 4.0.0 发布

cac55 2025-01-29 14:34 31 浏览 0 评论

openSUSE Leap 16.0 开发启动

openSUSE Leap 16.0 已进入 pre-Alpha 开发阶段,并面向公众提供测试版本。

Leap 16.0 是什么?

  • Leap 16.0 是 openSUSE Leap 15.6 的继任版本,预计将于 2025 年秋季正式发布。
  • 它是一个传统的 Linux 发行版,基于最新的 SUSE Linux Enterprise Server 16 (SLES 16) 二进制文件和 openSUSE Factory 开发代码库中的社区软件包构建。
  • Leap 16.0 将提供全新的用户体验,同时保持与之前版本的兼容性,方便用户平滑迁移。

谁适合使用 pre-Alpha 版本?

  • pre-Alpha 版本主要面向早期采用者和希望积极参与开发的贡献者。
  • 建议在虚拟机中安装和测试 pre-Alpha 版本,不建议作为日常使用的系统。
  • 普通用户建议等待 2025 年春季晚些时候发布的 Beta 版本。

来源:

https://news.opensuse.org/2024/10/07/leap-16-0-prealpha/


LibreSSL 4.0.0 发布

一、版本概况

  • LibreSSL 4.0.0 是 4.0.x 分支的首个稳定版本,已随 OpenBSD 7.6 发布。
  • 该版本包含大量改进、新功能、兼容性变更和错误修复。

二、主要变化

  • 可移植性改进
  • 新增对 Emscripten 的初始支持。
  • 移除 timegm() 兼容层,使用 OPENSSL_timegm() 替代。
  • mips32 平台不再被积极支持。
  • 修复 Windows 系统日期超过 2038 年的问题。
  • 内部改进
  • 清理 conf 目录,简化逻辑,修复内存泄漏。
  • 简化 X509_check_trust() 内部逻辑,提高可读性。
  • 使用 BoringSSL 的 posix 时间转换 API 替换 gmtime() 和 timegm()。
  • 移除 by_dir 中不必要的 stat 调用。
  • 拆分 TLS 扩展的解析和处理,确保以预定义顺序调用扩展回调。
  • 清理 MD4 和 MD5 实现。
  • 汇编函数不再公开在公共 API 中,全部由 C 函数封装。
  • 移除旧架构上旧密码的汇编实现。
  • 合并大多数多文件密码实现到一两个 C 文件中。
  • 移除证书有效期缓存。
  • 停止在 amd64 和 i386 上从 .init 部分调用 OPENSSL_cpuid_setup()。
  • 重写各种 BN 转换函数。
  • 改进证书请求内部逻辑。
  • 移除未使用的 DSA 方法。
  • 改进 X.509v3 扩展内部逻辑,修复 X509V3_add1_i2d() 和 X509V3_get_d2i() 中的错误和泄漏。
  • 使用 CBB 重写 BN_bn2mpi()。
  • 使大多数错误字符串表成为 const。
  • 移除对 SSLv2 客户端 hello 消息的处理。
  • 改进 openssl(1) speed 应用的信号处理程序。
  • 清理各种 X509v3_* 扩展 API。
  • 统一 X.509v3 扩展方法。
  • 清理 SSL_SESSION 中的密码处理。
  • 从 SSL_METHOD 中移除 get_cipher。
  • 从头开始重写 CRYPTO_EX_DATA。
  • 移除 netcat 中无效的 connect() 调用。
  • 使用 strtonum() 替换 libcrypto 中的 atoi() 和 strtol()。
  • 引入 crypto_arch.h,包含架构相关的代码和定义。
  • OPENSSL_cpu_caps() 现在与架构无关。
  • 重新组织 DES 实现,使用更少的文件,并移除对旧处理器和编译器的优化。
  • 新功能
  • 在 openssl(1) 的 cms 命令中添加 CRLfile 选项,用于指定在验证期间使用的其他 CRL。
  • 文档改进
  • 移除不再存在的 API 文档。
  • 统一对已弃用 ENGINE 参数的描述。
  • 测试和主动安全
  • 将剩余的测试切换到新的证书。
  • 兼容性变更
  • 更改 libtls 中的协议解析。忽略不支持的 TLSv1.1 和 TLSv1.0 协议,不再以令人惊讶的方式启用或禁用 TLSv1.2。
  • 移除危险的 EVP_PKEY*_check(3) 函数族。openssl(1) pkey 和 pkeyparam 命令不再支持 -check 和 -pubcheck 标志。
  • 一步哈希函数(MD4()、MD5()、RIPEMD160()、SHA1()、所有 SHA-2 和 HMAC())不再支持返回静态缓冲区。调用者必须传入大小正确的缓冲区。
  • 移除对 Whirlpool 的支持。仍在使用此功能的应用程序应遵循 OPENSSL_NO_WHIRLPOOL。
  • 移除对 F5 中间盒的解决方法。
  • 移除无用的 pem2.h。
  • 移除 conf_api.h 及其中的公共 API。
  • 移除 ssl2.h、ssl23.h 和 ui_compat.h。
  • 移除许多 conf 和 attribute 函数。一些未使用的类型被移除,其他类型则变为不透明。
  • 移除已弃用的 HMAC_Init() 函数。
  • 移除 OPENSSL_load_builtin_modules()。
  • 移除 X509_REQ_{get,set}_extension_nids()。
  • 移除 X509_check_trust(),X509_VAL 变为不透明。
  • 只能在证书、CRL 和 CSR 上设置指定的版本。
  • 从 pem.h 中移除未使用的 PEM_USER 和 PEM_CTX 类型。
  • 移除 COMP_CTX、COMP_METHOD、X509_CRL_METHOD、STORE、STORE_METHOD 和 SSL_AEAD_CTX 的 typedef。
  • i2d_ASN1_OBJECT() 现在像大多数其他 i2d_* 一样在出错时返回 -1。
  • 从 openssl(1) 中移除 SPKAC 支持。
  • 在 EVP 接口中添加 TLS1-PRF 支持。
  • 移除对 EVP_PKEY 中属性的支持。
  • X509at_* API 不再公开。
  • 在 libssl 中添加 SSL_CTX_set1_cert_store() 和 SSL_CIPHER_get_handshake_digest()。
  • 移除完全损坏的 UI_UTIL 密码 API。
  • OpenSSL pkcs12 命令和 PKCS12_create() 不再支持设置 Microsoft 特定的本地密钥集和加密服务提供程序属性。
  • 错误修复
  • 使 ASN1_TIME_set_string() 和 ASN1_TIME_set_string_X509() 与其文档匹配。它们始终设置符合 RFC 5280 的时间。
  • 改进对受支持组和密钥共享扩展的标准符合性:
  • 不允许重复的密钥共享。
  • 不允许重复的受支持组。
  • 密钥共享必须按客户端偏好顺序发送。
  • 只有当密钥共享与客户端偏好顺序中最优先的受支持组匹配时,才会选择它们。
  • 修复 bnrand() 中的有符号整数溢出。
  • 防止通过 BN_clear_bit() 和 BN_mask_bits() 创建负零。避免 BN_bn2mpi() 中出现一个字节的越界读取。
  • 添加保护措施,以避免将数字线性哈希桶的数量缩减为零,这可能会因访问零大小的分配而导致崩溃。
  • 修复输出缓冲区指向 NULL 的 i2d_ASN1_OBJECT()。
  • 以恒定时间实现 RSA 密钥交换。这是通过使用 RSA_NO_PADDING 解密并在 libssl 中以恒定时间检查填充来完成的。这是可能的,因为基于 RSA 密钥的大小,预主密钥的长度是已知的。
  • 使用 CBS 重写 SSL_select_next_proto(),还修复了在从 ALPN 回调中按预期使用时无法访问的缓冲区越界读取。
  • 避免在 ssl_sigalg_select() 中将虚假错误推送到错误堆栈上。
  • 使致命警报在 QUIC 中致命。

三、总结

LibreSSL 4.0.0 是一个重要的版本,包含大量改进和安全修复。建议所有用户升级到此版本。

来源:
https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-4.0.0-relnotes.txt


更多内容请查阅 :
x-cmd blog (daily) | [241020] openSUSE Leap 16.0 开发启动 | LibreSSL 4.0.0 发布

相关推荐

Mac电脑强制删除任何软件方法-含自启动应用

对于打工者来说,进入企业上班使用的电脑大概率是会被监控起来,比如各种流行的数据防泄漏DLP,奇安信天擎,甚至360安全卫士,这些安全软件你想卸载是非常困难的,甚至卸载后它自己又安装回来了,并且还在你不...

Linux基础知识 | 文件与目录大全讲解

1.linux文件权限与目录配置1.文件属性Linux一般将文件可存取的身份分为三个类别,分别是owner/group/others,且三种身份各read/write/execute等权限文...

文件保护不妥协:2025 年 10 款顶级加密工具推荐

数据安全无小事,2025年这10款加密工具凭借独特功能脱颖而出,从个人到企业场景全覆盖,第一款为Ping32,其余为国外英文软件。1.Ping32企业级加密核心工具,支持200+文件格...

省心省力 一个软件搞定系统维护_省心安装在哪里能找到

◆系统类似于我们居住的房间,需要经常打理才能保持清洁、高效。虽然它本身也自带一些清理和优化的工具,但借助于好用的第三方工具来执行这方面的任务,会更让人省心省力。下面笔者就为大家介绍一款集多项功能于一身...

JAVA程序员常用的几个工具类_java程序员一般用什么软件写程序

好的工具做起事来常常事半功倍,下面介绍几个开发中常用到的工具类,收藏一下,也许后面真的会用到。字符串处理:org.apache.commons.lang.StringUtilsisBlank(Char...

手工解决Windows10的若干难题_windows10系统卡顿怎么解决

【电脑报在线】很多朋友已经开始使用Win10,估计还只是测试版本的原因,使用过程中难免会出现一些问题,这里介绍解决一些解决难题的技巧。技巧1:让ProjectSpartan“重归正途”从10074...

System32文件夹千万不能删除,看完这篇你就知道为什么了

C:\Windows\System32目录是Windows操作系统的关键部分,重要的系统文件存储在该目录中。网上的一些恶作剧者可能会告诉你删除它,但你不应该尝试去操作,如果你尝试的话,我们会告诉你会发...

Windows.old 文件夹:系统备份的解析与安全删除指南

Windows.old是Windows系统升级(如Win10升Win11)或重装时,系统自动在C盘创建的备份文件夹,其核心作用是保留旧系统的文件、程序与配置,为“回退旧系统”提供保...

遇到疑难杂症?Windows 10回收站问题巧解决

回收站是Windows10的一个重要组件。然而,我们在使用过程中,可能会遇到一些问题。例如,不论回收站里有没有文件,都显示同一个图标,让人无法判别回收站的空和满的真实情况;没有了像Windows7...

卸载软件怎么彻底删掉?简单几个步骤彻底卸载,电脑小白看过来

日常工作学习生活中,我们需要在安装一些软件程序,但随着软件的更新迭代速度,很多时候我们需要重新下载安装新的程序,这时就需要将旧的一些软件程序进行卸载。但是卸载软件虽然很简单,但是很多小伙伴们表示卸载不...

用不上就删!如何完全卸载OneDrive?

作为Windows10自带的云盘,OneDrive为资料的自动备份和同步提供了方便。然而,从隐私或其他方面考虑,有些人不愿意使用OneDrive。但Windows10本身不提供直接卸载OneDri...

【Linux知识】Linux下快速删除大量文件/文件夹方法

在Linux下,如果需要快速删除大量文件或文件夹,可以使用如下方法:使用rm命令删除文件:可以使用rm命令删除文件,例如:rm-rf/path/to/directory/*这个命令会递...

清理系统不用第三方工具_清理系统垃圾用什么软件

清理优化系统一定要借助于优化工具吗?其实,手动优化系统也没有那么神秘,掌握了方法和技巧,系统清理也是一件简单和随心的事。一方面要为每一个可能产生累赘的文件找到清理的方法,另一方面要寻找能够提高工作效率...

系统小技巧:软件卸载不了?这里办法多

在正常情况下,我们都是通过软件程序组中的卸载图标,或利用控制面板中的“程序和功能”模块来卸载软件的。但有时,我们也会发现利用卸载图标无法卸载软件或者卸载图标干脆丢失找不到了,甚至控制面板中卸载软件的功...

麒麟系统无法删除文件夹_麒麟系统删除文件权限不够

删除文件夹方法例:sudorm-rf文件夹名称。删除文件方法例:sudorm-r文件名包括扩展名。如果没有权限,给文件夹加一下权限再删。加最高权限chmod775文件名加可执行权限...

取消回复欢迎 发表评论: