使用 Macports 时,我发现有 portsgnupg
和较新的gnupg2
。我想使用 GnuPG 来加密文件。我应该同时安装两者吗,还是只安装一个就够了?如果我同时安装了两者,两者是否相互兼容?我先安装哪一个有关系吗?
答案1
GnuPG 1
GnuPG 1.4(“经典”)将保留用于嵌入式和服务器,因为它带来的依赖性更少,二进制文件更小。以前,它通常被安装为gpg
,而现在它更常被这样命名gpg1
(取决于发行版)。
来自 GnuPG 1.4 手册页:
这是 的独立版本
gpg
。对于桌面使用,您应该考虑使用gpg2
GnuPG-2 包(在某些平台上gpg2
安装为gpg
)
GnuPG 2
GnuPG 2.0 是 GnuPG 的重新设计版本——但变化主要在内部层面。新版本被分成多个模块,例如还有用于 X.509(由 S/MIME 使用)的模块。
从man gpg2
:
与更适合服务器和嵌入式平台的独立版本 gpg 相比,此版本通常以名称安装
gpg2
,并且更针对桌面,因为它需要安装其他几个模块。
GnuPG 2.1
GnuPG 2.1 带来了一项重要变化,它将以前分开的公钥和私钥环(pubring.gpg
与secring.gpg
)合并到公钥环中。这是以保持兼容性的方式实现的,因此当 GnuPG 2.1 集成私钥环时,您仍然可以使用 GnuPG 1,但私钥的更改不会显示在相应的其他实现中。从变更日志:
[...] 允许旧版 GnuPG 与 GnuPG 2.1 共存。但是,使用新 gpg 对私钥所做的任何更改都不会在使用 GnuPG 2.1 之前的版本时显示出来,反之亦然。
直接回答你的问题:
我应该同时安装两个还是只安装一个就够了?先安装哪一个有关系吗?
只需安装两者即可。它们不会相互干扰。gpg
为访问它的其他应用程序(如包管理器、邮件客户端等)安装(如果尚未安装),并gpg2
在命令行上“直接使用”。
如果我同时安装了两者,它们是否互相兼容?
两者都实现了 OpenPGP 协议,因此它们在共享数据方面彼此兼容。此外,它们(大部分)使用相同的命令和选项,因此大多数时候您可以随意在它们之间切换。
GnuPG 2.1 使得私钥环的更改对于 GnuPG 2.1 之前的实现来说是不可见的(参见上文的 GnuPG 2.1 部分)。