我正在学习如何在 GnuPG 中使用 OpenPGP 密钥,我想知道人们通常用来维护单独的 OpenPGP 密钥的阈值是多少。维护大量的密钥并不好,因为它很难被其他人信任。另一方面,我的感觉是,维护单个密钥可能无法将单独的事物分开。
几把钥匙合适?有多少是太多了?
我正在学习如何在 GnuPG 中使用 OpenPGP 密钥,我想知道人们通常用来维护单独的 OpenPGP 密钥的阈值是多少。维护大量的密钥并不好,因为它很难被其他人信任。另一方面,我的感觉是,维护单个密钥可能无法将单独的事物分开。
几把钥匙合适?有多少是太多了?
一般来说,每个身份一个密钥应该没问题。
一个关键可以包括:
如果您想管理多个不应直接连接的 ID(我可以想象一个个人 ID,一个在您的雇主处,一个用于可能不包含您的真实姓名的东西 - 我认为政府压力,......),感觉当然可以免费使用多个主键。
为您加密的其他人将始终选择最新的子密钥。无法将子键连接到特定的用户 ID(例如,工作和家庭具有不同的子键)。这将是使用多个主键的一个很好的理由(此外,您的雇主可能需要私钥,这取决于您当地的法律)。这对签署子密钥无效:每台计算机将只使用可用的子密钥;如果您只分发特定的子密钥,您可以轻松地强制执行给定的子密钥。
从 2.1 版开始,GnuPG 只能为主键合并不同的私有子键集。确保在一台机器上拥有所有子项并根据需要导出,或升级 GnuPG。有一种使用gpgsplit
and的方法cat
,但它很乏味并且需要深入了解 RFC4880(OpenPGP 规范)。
运行gpg --edit-key [key-id]
主键生成子键,然后使用addkey
命令启动子键生成助手(之后不要忘记save
)。要导出一个子键(或一组子键),运行gpg --export-secret-subkeys [subkey-id]! >subkey.pgp
-- 不要忘记感叹号!
,否则 GnuPG 会将子键解析为关联的主键(并导出这个主键)。您可以使用普通gpg --import [file]
命令导入它。
我强烈推荐Debian 关于子键的文档以供进一步阅读。
几把钥匙合适?有多少是太多了?
如果您想拥有多个断开连接的身份,则只需要多个密钥。身份是经过签名的,并且一个密钥上可能有多个身份。因此,您可以拥有一把钥匙,其中包含您希望声明的所有身份。
同样,您可以创建任意数量的密钥以断开身份。至于您认为有多少合适且个人可管理,这完全是个人问题。