闪存 (SSD) 架构会影响加密技术吗?

信息安全 密码学 加密 硬件 磁盘加密
2021-09-03 17:58:41

我正在研究 SSD 的加密技术,我的问题是:SSD 的写前擦除架构与加密技术有什么关系吗?

在对 SSD 实施硬盘加密时,我可能会遇到哪些问题?

2个回答

加密的整个想法是,无论物理媒体如何管理,它都旨在为您带来机密性。有关如何“擦除”(或未能擦除)位的详细信息与安全性有关;加密是为了获得所说的安全性,而不必担心这些细节。

事实证明,SSD 上的数据是变化无常的,要追踪它的所有位置是一项艰巨的工作;有关详细信息,请参阅此问题这只是强调加密是保持数据机密性的唯一可靠方法。

SSD 上的磁盘加密与“经典”磁盘上的磁盘加密没有什么不同。它们的接口是相同的:按索引的 512 字节扇区访问。这并没有使 SSD 加密变得简单,只是没有更难磁盘加密本身就是一个复杂的问题:它必须处理随机访问(读取和写入)、速度快(磁盘具有巨大的带宽)、集成到操作系统中,并且应该抵抗可以关闭机器的主动攻击者,交换一些扇区,然后重新上电。

这是您可能遇到的一个问题:

假设您的 SSD 上有一个文件……它物理上位于地址 P1,该地址当前映射到逻辑地址 L1。

现在你想加密这个文件,并用密文替换明文。

无论是从 L1 读取文件,还是使用 AES 等标准密码对其进行加密,都不是问题。

但现在需要将密文写回 SSD。

由于 SSD 在设备发生故障之前的写入周期数量有限,因此有一些磨损均衡方法可以延长 SSD 的使用寿命。效果是您无法确定,两次写入逻辑地址将导致两次写入同一物理地址。

所以它可能会发生,特别是如果你的文件很小,写入逻辑地址 L1 的加密文件不会被写入物理地址 P1,而是 P2。在这种情况下,未加密的文件仍将位于 P1。

您将无法通过通常的方式访问该地址,因为 SSD 将处理逻辑地址并让固件决定应该引用哪个物理地址,但如果有人直接从物理地址(对内存芯片的直接物理访问、不同的固件、访问物理地址的特殊固件特定命令等)

或者,如果您正在谈论加密整个磁盘,您可能会从不同的角度面临同样的问题:

假设您使用使用密码加密并存储在同一个 SSD 上的密钥对所有内容进行加密...

现在您想更改该密码,但保留密钥,这样您就不需要重新加密整个磁盘。

通常,您会读取密钥,使用旧密码对其进行解密,使用新密码对其进行加密,然后将其写回。

但是现在你不能确定你会覆盖旧密钥,所以仍然可能有那个旧密钥,用存储在 SSD 上的旧密码加密。

如果您因为有人知道而更改了密码,则更改密码可能不足以确保只有您可以访问加密磁盘。