标签: gnupg

如何跨多个系统管理 GPG 密钥?

我是使用 GnuPG 的新手,并试图了解如何最好地使用它。我已经阅读了针对非技术人员的 GPG/PGP 的简短易懂的解释?,但大多数指南都是从单机角度解释 PGP 的。

我想在三种计算设备上使用 GnuPG:Linux PC、Linux 笔记本电脑和 Android 手机。

基本用例是加密/解密由 IMAP 服务管理的电子邮件,因此所有设备都需要相同的私钥进行解密。

我想我的选择是:

  1. 只需将我所有的密钥复制到每台设备上的密钥环,并主要依靠私钥密码进行保护。

  2. 创建一个主密钥(使用 --gen-key)来代表我的身份,然后创建一个单独的一次性密钥(再次使用 --gen-key)用于加密/解密电子邮件并使用主密钥签名。前者只驻留在我的电脑上,后者分布在每个设备上。只要我的移动设备没有受到损害,一次性密钥就一直有效。

我可能过于偏执,让事情变得比实际情况更复杂,但请幽默我。我相信不要把所有的鸡蛋放在一个篮子里。

主密钥应该是我的数字身份。将花费大量精力围绕该身份建立信任,而我宁愿忍受偏执带来的不便,也不愿因疏忽而丢失我的密钥,不得不围绕新的主密钥建立信任(也许这不像我那么糟糕)想,但我对此很陌生)

与 PC 相比,我更容易丢失笔记本电脑或手机。如果丢失 == 妥协,那么我宁愿丢失一个一次性密钥对(我可以撤销)而不是我的主密钥对。我总是可以将我的主钥匙的信任赋予新的一次性钥匙。

抱歉问了这么长的问题。:-)

TL; 博士

密码是否足以保护我在多个设备上存储我的私钥?

我的选项#2 计划可行吗?我做错了什么还是可以改进?

如果选项#2 是个坏主意,那么在多个设备上为单个用户使用 GnuPG 时的最佳实践是什么?

pgp gnupg

124
推荐指数
2
解决办法
4万
查看次数

如何重新启动 gpg-agent?

GnuPG 配置中的一些更改需要gpg-agent重新启动/重新启动(根据文档),但是...我该怎么做?我试过gpg-agent restart,,service gpg-agent restart但没有成功。

services gnupg gpg-agent

110
推荐指数
4
解决办法
9万
查看次数

GnuPG 1 和 GnuPG 2 是否相互兼容?

使用 Macports,我意识到有端口gnupg和更新的gnupg2. 我想使用 GnuPG 来加密文件。我应该两者都安装,还是只安装一个就足够了?如果我同时安装,两者是否兼容?我首先安装哪个重要吗?

gnupg

101
推荐指数
1
解决办法
5万
查看次数

如何强制 GPG 使用控制台模式 pinentry 来提示输入密码?

在基于控制台的环境(例如 ssh 会话)中使用 gpg 会失败,因为 GTK pinentry 对话框无法在 SSH 会话中显示。

我试过了,unset DISPLAY但没有帮助。GPG 命令行选项不包括用于强制 pinentry 进入控制台模式的开关。

较旧的 GPG 版本提供了基于文本的提示,该提示在 SSH 会话中运行良好,但升级后却失败了。

--textmode命令行开关,但显然,它还有其他作用。

为远程会话获取纯文本 pin 条目的正确和干净的方法是什么?

linux ssh terminal console gnupg

97
推荐指数
7
解决办法
9万
查看次数

为整个用户会话缓存 GnuPG 凭据

GnuPG 可以gpg-agent缓存对私钥的访问。如何在整个用户会话中保持该缓存处于活动状态

当我解锁 的密钥时gpg-agent,它只会在有限的时间内保持缓存状态。使用 SSH 的代理,我输入一次密码短语,它会在整个会话中保持缓存状态。我希望从gpg-agent.

因此,ssh-agent不受缓存寿命有限的影响。但是gpg-agent限制了缓存生命周期,至少在默认情况下是这样。我怎样才能消除缓存时间的限制gpg-agent

authentication cache gnupg

91
推荐指数
3
解决办法
4万
查看次数

一对 GnuPG/PGP 密钥,两封电子邮件?

我有两封经常使用的电子邮件,对于这两封电子邮件,我都想使用由 GnuPG 生成/管理的 PGP 密钥。如果可能的话,我想避免为每封电子邮件创建不同的密钥对,因为这对于我的情况是不必要的,即我可以互换使用两封电子邮件。

有没有办法做到这一点?

我使用的是 Mac OS X 10.5 和 Ubuntu 11.04,以及 Thunderbird 3.1.10。

提前致谢!

email pgp gnupg

86
推荐指数
2
解决办法
3万
查看次数

GPG 和 SSH 密钥可以互换吗?

我想生成一个RSA密钥GPG并在SSH登录时使用它。这甚至可能吗?如果是这样,如何?

编辑:请参阅@wwerner 的回答,我没有尝试过,但它似乎是当前的解决方案(截至 2018 年)

ssh public-key gnupg private-key

85
推荐指数
4
解决办法
5万
查看次数

清理我的 gnupg 钥匙圈?

我的 gnupg 密钥环包含数百个不必要的条目。我如何从中删除过期、撤销和未签名的密钥?

我想保留已签署我的密钥的密钥,并仅在需要时导入新密钥。我之前为我的密钥签名者导入了整个信任网络。我的一位钥匙签名者似乎在他的旅行中获得了大量签名,而这些签名现在正在堵塞我的钥匙圈。

linux command-line gnupg

64
推荐指数
3
解决办法
10万
查看次数

什么更适合 GPG 密钥 - RSA 或 DSA?

ssh-keygen默认创建 RSA 密钥,但gpg --gen-key更喜欢 DSA/ElGamal。

哪一个 - RSA 或 DSA - 更适合 GPG?

security encryption gnupg

62
推荐指数
4
解决办法
4万
查看次数

如何使用 gpg 对称加密文件?

我正在尝试使用 gpg对称加密文件。

$ gpg --encrypt --symmetric $MYFILE
Run Code Online (Sandbox Code Playgroud)

我输入并重新输入密码,然后 gpg 告诉我

You did not specify a user ID. (you may use "-r")

Current recipients:

Enter the user ID.  End with an empty line:
Run Code Online (Sandbox Code Playgroud)

我不知道在这里输入什么。我是对称加密(不是公钥加密),所以我不明白为什么 gpg 想知道收件人可能是谁。我不知道 gpg 期望的用户 ID 是什么样的,而且我也不知道任何 gpg 用户 ID。如果我只输入一个空行,gpg 会抱怨“没有有效的收件人”。

那么如何使用 gpg 对称加密文件呢?

版本:gpg (GnuPG) 1.4.11,在 Ubuntu 11.10 中打包。

encryption gnupg

58
推荐指数
1
解决办法
4万
查看次数