如何修改现有 luks 分区上的 -iter-time

如何修改现有 luks 分区上的 -iter-time

首先我已经读过这个主题: 如何更改现有 dm-crypt LUKS 设备的哈希规范和迭代时间?

其中建议是以下命令:

cryptsetup-reencrypt --keep-key

然而,这个答案是 7 年前的,并且被认为是实验性的。在我这边,我已经通过实时 USB 安装了 Debian加密磁盘在安装过程中。因此,当我启动设备时,我必须直接从 grub 解密。解密时间太长,因为--iter-time即使我的密码正确,似乎默认也在 30 秒左右,因此有人建议减少--iter-time300.

这就是为什么我还有其他问题:

  1. cryptsetup-reencrypt --keep-key -iter-time DEVICE今天的代码准确吗?
  2. 上面有 Luks 的分区是/dev/nvme0n1p2,luks 分区是/dev/mapper/luks-xxxx,交换分区也一样。选择哪个设备:cryptsetup-reencrypt --keep-key -iter-time /dev/nvme0n1p2cryptsetup-reencrypt --keep-key -iter-time /dev/mapper/luks-xxxx
  3. 我应该从 grub 菜单中的命令还是从实时 USB 中使用它?
  4. 它会格式化我的数据吗? (最好问两遍)

非常感谢。

供参考 :

  • 操作系统:德班
  • Luks安装方式:通过实时 USB(只需勾选“加密磁盘”)
  • 卢克斯版本:幸运1
  • 老虎机:启用键槽 0 和 1,禁用键槽 2 至 7

答案1

如果您只想更改,则无需重新加密设备--iter-time。当您想要更改磁盘上数据的加密方式(因此不同的密钥、算法,或者在链接问题的情况下,哈希函数)时,请使用重新加密。迭代时间是关键槽的“属性”——它告诉我们应该多长时间PBKDF2从您的密码短语派生密钥时采取。要更改它,您只需更改键槽属性

cryptsetup luksChangeKey /dev/nvme0n1p2 --iter-time <time in ms>

它将要求输入密码并使用该密码更改密钥槽的属性,可以选择用于操作的密钥槽--key-slot(如果多个密钥槽具有相同的密码)。如果您想更改两个键槽的迭代时间,则需要重复此操作。

(这还会要求您更改密码,您可以重复使用旧密码,luksConvertKey这只会更改参数,不适用于 LUKS 1。)

您可以检查结果,cryptsetup luksDump /dev/nvme0n1p2您应该看到 PBKDF 迭代次数减少了。

相关内容