在突然发现我的密码在所有 4 个 LUKS 分区上停止工作后,我试图访问我的 LUKS 分区。 7 天前,当我尝试启动并登录 Linux 操作系统时,我的密码不起作用。
我有 4 个使用 LUKS 加密的分区。我的 Linux 主驱动器上有 3 个分区,它们包括根文件系统、主分区和交换分区。另一个扩展主分区位于另一个驱动器上。它们都使用相同的密码进行加密。 3 个分区在启动时会使用根文件系统 LUKS 分区中的密钥文件自动解密,因此我只需要一个密码即可登录。
我在 5 个月前对我的驱动器进行了加密,并且每天都在使用该密码。我是否可能突然忘记了密码?我不觉得我的密码不正确。在屏幕上输入时,密码看起来正确。
我还有一个双启动设置,Windows 7 位于单独的驱动器上。在我的 Linux 密码失效的前一天,我登录了 Windows。 Windows 7 是否会在没有询问我的情况下同时损坏 2 个驱动器上的 4 个 LUKS 分区?以前发生过类似的事情吗?
不幸的是,我没有分区的密码或标头备份。
上周我多次尝试访问我的 LUKS 分区。我使用 live Linux CD 尝试打开我的分区,但每次 cryptsetup 都会说密码不正确。
sudo cryptsetup --type luks open /dev/sdb1 encrypted
sudo cryptsetup --type luks open /dev/sdf2 encrypted2
sudo cryptsetup --type luks open /dev/sdf3 encrypted3
sudo cryptsetup --type luks open /dev/sdf4 encrypted4
No key available with this passphrase.
我尝试使用 cryptsetup 打开所有 4 个分区。我尝试过在英国和美国之间更改键盘布局,但没有成功。 Cryptsetup luksdump 显示所有 4 个分区仍然具有 LUKS 标头;一个分区(根文件系统)有 1 个键槽,另外 3 个分区有 2 个键槽,我猜第二个键槽是自动密钥文件。
$ sudo cryptsetup -v isLuks /dev/sdb1
Command successful.
$ sudo cryptsetup luksDump /dev/sdb1
LUKS header information for /dev/sdb1
Version: 1
Cipher name: aes
Cipher mode: xts-plain64
Hash spec: sha512
Payload offset: 4096
MK bits: 512
MK digest: 08 ca 09 9f c3 b0 cf cf bc 36 97 52 2c 03 4d c3 1e 0b fe c9
MK salt: 4b 76 75 23 1e d5 7a ad 18 bc 37 e4 42 55 51 a3
7a ef e1 f2 c4 dc d0 fe 71 27 f1 64 d7 b6 1c ba
MK iterations: 732500
UUID: 89e80b59-cb5a-42c8-8001-ecf92206aca6
Key Slot 0: ENABLED
Iterations: 5878300
Salt: 59 3e cb 7f 11 c8 93 db 1e 62 0c 98 d1 c6 6e fc
ea 65 f2 6d ff a7 20 c2 48 69 d2 2a 5b 76 07 2e
Key material offset: 8
AF stripes: 4000
Key Slot 1: ENABLED
Iterations: 2400937
Salt: 18 26 74 ce 42 57 cc e8 82 f5 23 ef 65 1d a0 67
65 52 c2 3e 3f 2c d0 9f 00 88 e2 6d 7c 14 e6 fa
Key material offset: 512
AF stripes: 4000
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED
有没有希望解密驱动器?
你认为什么可以做到这一点? Windows 弄乱了我的驱动器、密码遗忘症或其他原因?
编辑:此论坛帖子提出了三星 SSD 与 crypttab 中导致损坏的丢弃标志之间的联系: https://bbs.archlinux.org/viewtopic.php?pid=1846810#p1846810
我的三个 LUKS 分区位于三星 EVO SSD 上。我无法确认我没有在 crypttab 中使用丢弃标志。
编辑:十六进制转储:https://mega.nz/#!QZxRDCzA!254HtfzHibAkJXcO6BcEZuoRpjLvQBXV7WjKYMgvbfs
答案1
以下是 cryptsetup 的逐字记录常问问题(强调我的):
我无法解锁我的 LUKS 容器!可能是什么问题呢?
首先,确保您拥有正确的密码。
然后确保您拥有正确的键映射和正确的键盘。
然后确保您拥有正确的字符集和编码,另请参阅第 1.2 节下的“密码字符集”。
如果您确定输入的密码正确,则相应的密钥槽可能已损坏。 除了标头备份之外,无法恢复损坏的键槽 (见第 6 节)。
出于安全原因,键槽中也没有校验和可以告诉您键槽是否已损坏。唯一存在的校验和允许识别正确的密码,但只有在密码正确并且相应的密钥槽完好无损的情况下才有效。
你提问
就你的问题...
有没有希望解密驱动器?
您只能使用完整的 LUKS 标头和正确的密码来解密驱动器。如果没有这两个要求,我很抱歉,但不,就没有解密驱动器的希望;如果有LUKS就毫无价值了。
你认为什么可以做到这一点? Windows 弄乱了我的驱动器、密码遗忘症或其他原因?
我只能推测。鉴于所有 LUKS 容器都无法解密,并且它们都使用相同的密码,我倾向于认为这是密码的问题。