![PGP 密钥版本,这重要吗?](https://linux22.com/image/855902/PGP%20%E5%AF%86%E9%92%A5%E7%89%88%E6%9C%AC%EF%BC%8C%E8%BF%99%E9%87%8D%E8%A6%81%E5%90%97%EF%BC%9F.png)
在阅读完谷歌对端到端加密的尝试使用 PGP 密钥时,我注意到他们的常见问题解答中有一节关于导出由他们的扩展生成的密钥以供其他地方使用。他们说这是可能的,但无论你在哪里使用它都需要 GnuPG 2.1+。
我在生成密钥时运行的是 12.04 LTS,所以我的 gpg 版本是 1.4.x,这是否意味着我无法将密钥导入使用 2.x 的工具中?
答案1
Google 的端到端加密插件利用椭圆曲线加密,不支持,但从 GnuPG 2.1 版开始(这仍是一个开发版本)。
但您可以反过来,在本地创建一个“普通”的 RSA 密钥,然后将其导入到 Google 的插件中。
无论如何:由于密钥保留在插件中,您至少不会将私钥提供给 Google,但他们仍然可以在您不知情的情况下使用它进行任意操作。网络浏览器内运行的内容由网站所有者控制,而不是您控制。最好使用带有 GnuPG 插件(例如 Enigmail)的邮件客户端(例如 Thunderbird),并将其配置为使用您的 Gmail 帐户 - 更舒适、更安全、更隐私。
仅就措辞而言:OpenPGP 密钥版本在两种情况下都是 v4,但椭圆曲线是一种相当新的加密算法,尚未得到稳定的 GnuPG 版本支持。
答案2
没错,如果你有在 End-To-End 中生成的密钥,并想在 GnuPG 中使用它,你必须使用 2.1 版,该版本尚未正式发布(仍处于测试阶段)。你可以寻找提供它的第三方存储库,也可以自己编译它。
答案3
密钥版本很重要...我猜 Brian 指的是 GnuPG 2.0。GnuPG 2.1 尚未为 Ubuntu 或 Debian 打包,因为它仍处于测试阶段。新功能之一将是包含 EC25519 密钥,这对我们大多数人来说可能并不重要,但它确实提供了一些显着的性能提升。
其他事情也很重要。例如,默认使用 SHA1 哈希,应该对其进行更改,因为它存在已知弱点,但它并没有像 RC4 和 MD5 那样完全被破坏。我强烈建议使用更强大的哈希来生成新密钥。请参阅:http://keyring.debian.org/creating-key.html
当我尝试 Google 的 End to End 时,根据我个人的 PGP 政策,我将只在系统上保留子密钥。这样,我可以通过撤销或使子密钥过期来保留密钥签名并生成新的密钥签名。请参阅:https://wiki.debian.org/Subkeys
我应该指出,管理密钥和子密钥的过程在可用性方面可以进行一些重大改进。如果你用 SHA1 哈希生成密钥,那么修复密钥的过程就更无趣了……