确定哪个密码短语在哪个插槽中


15

我有一个由luks加密的分区,该分区受密码短语和密钥文件保护。密钥文件用于日常访问,而密码则放在密封的信封中以备不时之需。五月过去了,我不小心粉碎了密钥文件,因此我使用了信封中的密码短语进行了恢复。现在我想知道,我有两个活动密钥槽,但是我不知道哪个包含无用的密钥文件密码短语,哪个包含我的紧急密码短语。显然,如果删除错误的驱动器,则会丢失驱动器上的所有数据。

#cryptsetup luksDump /dev/sda2
LUKS header information for /dev/sda2

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha256
Payload offset: 4096
MK bits:        256
MK digest:      xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 
MK salt:        xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 
                xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 
MK iterations:  371000
UUID:           28c39f66-dcc3-4488-bd54-11ba239f7e68

Key Slot 0: ENABLED
        Iterations:             2968115
        Salt:                   xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 
                                xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 
        Key material offset:    8
        AF stripes:             4000
Key Slot 1: ENABLED
        Iterations:             2968115
        Salt:                   xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 
                                xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 
        Key material offset:    264
        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

2
原来,它luksKillSlot要求从另一个插槽输入密码,因此不存在销毁您拥有的最后一个密钥的风险。但是,我相信原始问题仍然有效。
哈克

Answers:


14

如您所发现,您可以cryptsetup luksDump用来查看哪些键槽中有键。

您可以使用以下命令检查特定插槽的密码

cryptsetup luksOpen --test-passphrase --key-slot 0 /dev/sda2 && echo correct

如果您为密钥插槽0输入了正确的密码短语,则此操作成功,否则,则失败(包括如果该密码短语对于其他某个密钥插槽而言正确),则此操作失败。

如果您忘记了其中一个密码短语,则只能通过消除来找到它所在的插槽,如果您忘记了其中的两个密码短语,则无法确定哪个密码短语(否则密码短语哈希将被破坏)。

要删除您忘记的密码,您可以安全地运行cryptsetup luksKillSlot /dev/sda2 0并输入您记住的密码。擦拭的钥匙槽,cryptsetup需要一个不同的钥匙槽的密码,至少当在批处理模式没有运行(即,没有--batch-mode--key-file=-或等效选项)。


6

一种更简单的方法(现在?)是将命令与--verbose选项一起使用,但不指定选项--key-slot

# cryptsetup --verbose open --test-passphrase /dev/sda2
Enter passphrase for /dev/sda2: 
Key slot 4 unlocked.

它会自动为您检查正确的插槽,而无需您循环寻找合适的插槽:)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.