我可以使用 openssl 加密工具而不是 dmsetup 来制作加密图像吗?

我可以使用 openssl 加密工具而不是 dmsetup 来制作加密图像吗?

通常,我可以通过执行以下操作来创建加密的 ext4 映像:

fallocate -l 6553600 encrypt.img
losetup -f encrypt.img
dmsetup create encrypt_disk --table "0 12800 crypt aes 32BYTEKEY 0 /dev/loop0 0"
mkfs.ext4 /dev/mapper/encrypt_disk

然后我可以将/dev/mapper/encrypt_disk挂载到一个目录,这个磁盘上的所有文件将自动加密。我得到了一个encrypt.img。下次可以通过dmsetup加载它。

我的问题是:我可以使用 openssl 工具而不是 dmsetup 来制作 encrypt.img 吗?也许它会像这样:

fallocate -l 6553600 encrypt.img
losetup -f encrypt.img
mkfs.ext4 /dev/loop0
openssl aes ...

谢谢。

答案1

不,您不能这样做:
由于您使用的文件系统是在内核中实现的,因此您需要一个也在内核中实现的底层加密块设备实现,这就是这种情况dmsetup ... crypt
openssl是一个在内核之外进行加密的用户空间实现,因此不能用于实现支持文件系统的设备。

如果你使用了用户空间文件系统,但这不是ext4,但可能是某种东西fuse,那么这个可以基于内核的块设备以外的其他东西,但这是一个完全不同的话题。

相关内容