各位是如何管理gpg key的?

google了下,都是些关于gpg key如何CRUD的文章。 我这里想问诸位的是,大家是如何管理gpg key的?具体如下几个问题:

  1. 你们会把gpg的公私钥导出来备份吗?备份在哪里?
  2. 你们一般会多久生成一个key?我之前是每年一个key,公司跟个人的分开,也就是一年两个。
  3. 如果会定期生成key,那么旧的加密文件怎么办?比如我用org,旧的key过期后,我就必须把org的内容用新key重新加密一遍,不然就没办法继续往里面加内容。按这样说,一个key一旦过期,这个key触摸过的文件都要重新用新key加密一遍好麻烦,而且可能忘记迁移某个文件。

感谢~

但是我还没有实践过(

1 个赞

密钥不过期。

密钥压缩成带密码zip文件上传到dropbox

公私合用一个密钥。

我不从事安全方面的工作,就是git访问需设置密钥。个人笔记需要简单的加密一些隐私。

1 个赞

感谢各位~ 看来我也开始倾向于弄个永不过期的key,其实也就是个人笔记而已,简单点就好。

有钱就买 yubikey,这是一系列硬件,可以存储 gpg 私钥,并且物理上无法导出私钥,也就是如果你把 yubikey 破坏了那任何人类包括你自己都无法再找回它了,非常安全。 但是这也就意味着你得小心别把它搞坏了(质量还是很不错的) :rofl:

同时还有很多方便的功能,比如可以存储一段密码,用作二次验证设备,用过都说好。

这玩意看着确实不错。diu,就是确实有点贵。

直接加密整个磁盘映像文件,又不是要发给别人看,别整有的没的非对称加密,对称加密就行了

弄一个永不过期的主密钥,子密钥根据情况设置过期时间。多设备用一套密钥,连备份也省了。当然我的使用场景很简单。

最最首先,加密文件应该用对称加密,用一个可以记住的密码,不放心就用密码管理器,不应该用非对称密钥,不然密钥存在本地的话也安全不到哪里去。GPG key 只用来给签名,加密邮件通讯用,只要不删除私钥,过期不影响解密,而且只要私钥还在即使过期了也可以随时延期,所以过期日最好不超过两年,本质上有效期就是一个主钥加在公钥上的签名,通过更新频率公开证明持有者没把私钥弄丢掉,而私钥本身是不带有效日期的,但是 yubikey 这样的硬件是不能导出密钥备份的,一旦丢失,被重置,生成新的密钥,加密信息就相当于永久失去了,所以不应该用来加密长期保存的文件。

首先,如果想要以后参加线下活动时别人给你 key sign,用证件上的真名,不要用冻鳗人物名字。master key 要选 ECC 而不是 RSA,这样用 paperkey 导出私钥来备份能短很多,手抄下来就行,加个戳防止私自拆开,放在稳妥能随时检查的地方,撤销证书可以手写备份,不过对称加密后放在网盘里也可以。编辑操作用的带主私钥的 keyring 放在全盘加密的 U 盘上,讲究的话操作就要用 liveCD 断网完成,完成后只导出子密钥和公钥,但是主密钥千万不能放在日常能接触到的地方。

有 yubikey 的话,主密钥不要放上面,先配置好生成 key 的格式和 PIN,然后直接在硬件上生成 subkey。这样就算别人拿到了 master key,也解密不了通讯内容,最多只能修改公钥,这时候用之前保存的撤销证书就行了。yubikey 丢了,有 master key 就能撤销 subkey。两个都丢了人还没事说明保存策略有问题。

yubikey 也可以保存 authentication key,用来 ssh,就不用在本地保存私钥,但是注意算法只能选 ssh -Q key 里面对应的,有的格式可以在 yubikey 里生成但是 ssh 里用不了。

正常使用的话 5 年就可以换一次主密钥了,到时候私钥还没丢,就可以把新老 key 互相签一遍,把老的撤销,一起上传就行。

1 个赞

Q: 为什么不应该备份 yubikey 上的密钥

A: GnuPG 有 bug,会在硬盘上保存未加密的 private key Smartcard key generation keeps an unprotected backup key on disk

Q: 听说 rsa4096 比 ed25519 更能扛量子计算?

A: ECC 能被破解那 RSA 的安全性一年后也撐不过,这就是为什么不应保持一个密钥太久,新的算法总会出来的。如果真用纸上备份来管理密钥的话,ECC 不管是公钥私钥都显著短于 RSA,在非量子计算情形下也比 RSA 能扛,弱点只在侧信道攻击,大多攻击手段只存在于理论上,和实现得特别烂的实现上,以及可能存在的后门,总之,结论是选 25519 椭圆曲率算法不同曲线的安全性 - 佰夜 - 博客园

Q: TPM?

A: 新的 PC 主板的标配,Linux 上 GnuPG 可以用 TPM 2.0 加密 private key,存在硬盘上,让其只能在这电脑上的 TPM 硬件内解密使用(但重置主板后就不能解密了)。是 yubikey 的一种平替方案。7 cool things to do with your TPM on Linux

2 个赞

最近刚好在setup这些, 思路跟大家一样, 加密放云上, 脚本分享一下.

2 个赞

碰巧最近又看到这篇文章. 跟备份相关的在这里. Blockchain-dark-forest-selfguard-handbook/README_CN.md at main · slowmist/Blockchain-dark-forest-selfguard-handbook · GitHub 可以参考一下.