GPG/GnuPG 密钥密码恢复和/或 .gnupg/private-keys-v1.d/ 文件格式

信息安全 gnupg 数据恢复 密码 恢复
2021-08-22 13:16:16

坏消息:我忘记了 GnuPG 密钥密码。

好消息:我确实知道它是由哪些词构成的。所以,我可以很容易地使用john或类似的方法来恢复(虽然太多的组合无法手动完成)。

问题:密钥不是可以理解的secring.gpg格式john,而是某种新格式,显然分布在 2 个文件中,在

~/.gnupg/private-keys-v1.d/0123456789ABCDEF0123456789ABCDEF01234567.key

~/.gnupg/private-keys-v1.d/123456789ABCDEF0123456789ABCDEF012345678.key

(显然,为这个问题重命名的文件)在几秒钟的时间跨度内创建 - 可能是 pubkey 和 seckey,如果是的话,哪个是哪个?

有人可以帮忙吗,也许可以告诉我如何在没有密码的情况下从这些文件中提取(仍然锁定的)seckey?ASCII 装甲格式将是理想的。

或者,也许有人知道如何直接将这些文件提供给john

在相关说明中:我可以强制执行secring.gpg格式GnuPG吗?/home在具有不同版本的系统之间共享GnuPG并且不想复制密钥文件。

谢谢。

PS:由于我已经用密钥加密了文件,因此撤销和替换不是一个可行的解决方案。

2个回答

我正在猜测这些,但我没有简单的方法来测试这些是否真的可行。

最简单: Nastycrackgpg就是为此目的而设计的。如果其中一个已更新以支持这种新格式,请尝试一下。

更难:文件格式记录在gnupg/agent/keyformat.txt中。你能得到类似john尝试你的单词列表直到它(作为第一个字符的东西吗?

John the Ripper 的开发者发布了一个程序,该程序可以与 JtR 的掩码模式一起使用来破解这种格式。它必须与 GnuPG 的 libgcrypt 链接。

它可以在这里找到