我觉得密钥文件和密码短语提供不同的好处。它们不能以相同的方式获得(一种需要您亲自获得,另一种您需要了解)。因此,我认为使用这两者来加密我的数据有很大的好处。这样,即使有人受到损害,加密仍然完好无损。
在普通模式下使用 dm-crypt,我想同时使用两者。默认情况下,dm-crypt 使用密码,我可以轻松地将其更改为密钥文件。但它们似乎是相同类型的输入(例如,密钥文件将成为您的密码(如果提供))。因此,同时使用 --key-file 和 --verify-passphrase 不起作用。
这里有什么解决方法可以同时使用两者吗?
答案1
您可以使用您能记住的另一个密码短语将实际密码短语cryptsetup
(可能是一个非常长且复杂的字符串)存储在由 GnuPG(或任何其他工具)加密的文件中。
首先使用加密密码字符串gpg
进行加密keyfile
:
# echo 'long-long-passphrase-for-cryptsetup' | gpg -q -c --cipher-algo AES256 -o keyfile
Enter passphrase: <- Enter another passphrase you can remember
# file keyfile
keyfile: GPG symmetrically encrypted data (AES256 cipher)
然后解密keyfile
以将该密码提供给 的标准输入cryptsetup --key-file -
。
# gpg -qd keyfile | cryptsetup plainOpen --key-file - /path/to/image volname
类似的建议可以在密码设置手册。
gpg -c
为简单起见,上面的示例使用对称加密 ( )。如果能采用公钥加密那就更好了!