文件被解密时会发生什么?

文件被解密时会发生什么?

我将服务器的 webroot 目录安装在受 LUKS 加密保护的分区上。我想知道当该分区被解密时,其中的文件会发生什么情况。做

  • 这些文件的未加密版本的副本将保存到 RAM,或者;

  • 这些文件的未加密版本的副本将保存到临时目录中,或者;

  • 服务器在每次访问文件时根据需要解密文件,或者;

  • 我错过了其他场景吗?

我问这个问题的原因是为了更好地了解解密过程以及​​它如何影响服务器的 CPU 和 RAM 资源,以及使用 LUKS 进行磁盘加密是否比 eCryptfs 等文件系统加密更有效。

我尝试查看维基百科,但找不到任何此类信息。不确定这是否是问这个问题的最佳地点。如果您不这么认为,请随意迁移。谢谢。

答案1

LUKS 是一个块设备加密层,位于块设备之上,并加密/解密对该设备的所有访问。任何未加密的数据都不会接触到物理设备。

然后,LUKS 提供一个虚拟块设备,系统使用该虚拟块设备来访问文件。因此,它对应用程序是透明的,应用程序不知道加密正在发生。

考虑一个具有单个块设备和根文件系统的简单系统/dev/sda1。如果我们使用 LUKS 对其进行加密,那么它将处理对该设备的所有直接访问,并将提供其自己的设备,例如/dev/mapper/encrypted-root系统实际使用的设备。这可能是在/etc/fstab

/dev/mapper/encrypted-root  /       ext4    noatime 0 0

因此,对该文件系统上的文件的每次访问都将通过 LUKS。

另请注意,LUKS 不知道也不关心它正在处理什么数据。因此,您可以在其之上分层任何内容,无论是直接文件系统、软件 RAID 阵列、LVM 卷等。LUKS 也可以放置在其中任何一个之上。

请注意,正常缓存进程缓存在 RAM 中的数据可能未加密。

相关内容