Ubuntu 的默认全盘加密有多安全?

信息安全 加密 密码学 磁盘加密 卢克斯
2021-08-11 04:10:54

ubuntu 提供的加密有多安全(使用磁盘实用程序)?它下面使用了什么算法?

如果有人至少可以提供一些相关文档或文章的链接,我将不胜感激。

参考:

在此处输入图像描述

2个回答

一句话:够用

这是块级加密,因此它与文件系统无关。

Ubuntu 的透明加密是通过dm-crypt使用LUKS作为密钥设置完成的。cryptsetup1.6.0 之前版本的内置默认值为aes-cbc-essiv:sha256256 位密钥。1.6.0 及之后版本(2013 年 1 月 14 日发布)的默认值是aes-xts-plain64:sha256512 位密钥。

对于旧版本cryptsetup

  • AES你当然知道;它几乎是您想要的密码。
  • CBC是链式模式;不可怕,但肯定不是我会为新项目选择的:它有几个问题,但可以安全地使用。
  • ESSIV(“加密盐扇区初始化向量”)允许系统基于包含扇区号和加密密钥的散列创建 IV。这使您可以直接跳转到您想要的扇区,而无需借助可预测的 IV,从而保护您免受水印攻击。
  • SHA-256是用于密钥派生的散列算法。LUKS 使用 PBKDF2 来强化密钥(默认情况下)至少 1000 次迭代或 1/8 秒,以较多者为准。在一台快速的计算机上,预计大约有 200,000 次迭代。在安全方面,您不能要求更好的安排。

并使用较新版本的cryptsetup

  • XTS是反向链接模式。它是 XEX 的演变(实际上是:“基于 XEX 的带有密文窃取的调整码本模式”),而 XEX(“xor-encrypt-xor”)是一种非平凡的基于计数器的链接模式;这两个我都不能声称完全理解。XTS 已经得到了非常广泛的支持并且看起来很有希望,但可能存在一些问题主要的重要细节是:不需要花哨的 IV(plain或者plain64很好),并且 XTS 使用了一半的密钥,这意味着您的原始密钥必须是原来的两倍长(因此是 512 位而不是 256 位)。
  • PLAIN64是一种 IV 生成机制,它简单地将 64 位扇区索引作为 IV 直接传递给链接算法。plain将其截断为 32 位。某些链接模式(例如 XTS)不需要 IV 是不可预测的,而像 CBC 之类的模式如果与普通 IV 一起使用,则容易受到指纹/水印攻击。

默认不使用的其他选项

  • 由于一些安全问题, LRW已在很大程度上被 XTS 取代,甚至不是大多数磁盘加密产品的选项。
  • benbi使用移位寄存器计算窄宽度块计数。它在构建时考虑了 LRW 模式。

总而言之,这构成了一个非常紧凑的系统。这不是理论上可能的绝对最佳系统,但它非常接近。只要您的密码足够,您应该能够在任何合理的情况下信任它。您的攻击者几乎肯定会选择暴力破解密码作为他首选的攻击方法。

根据以下链接以及我在其他地方阅读的其他来源,Ubuntu 用于全盘加密的默认加密是AES-256加密的 LUKS 文件系统有多安全?