gpt4 book ai didi

linux - 自动下载一个pgp key

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:53:46 25 4
gpt4 key购买 nike

我想像这样使用 gpg 从 key 服务器自动下载 pgp key :

    gpg --searchkey carol@example.com

gpg 给我这个结果。

    gpg: searching for "carol@example.com" from hkp server pool.sks-keyservers.net
(1) <carol@example.com>
2048 bit RSA key 2F5E71CD, created: 2015-02-17
Keys 1-1 of 1 for "carol@example.com". Enter number(s), N)ext, or Q)uit >

如果我想将此 key 添加到我的 key 环中,我需要按“1”和 ENTER。

我的问题是:有没有办法总是自动插入从 key 服务器找到的第一个 key 到我的 key 环?因为如果我想用大约 200 个地址来完成它,那么如果我可以通过脚本导入它们而无需坐在计算机旁边并始终按“1”和 Enter 就更好了。

我知道始终自动导入第一个 key 存在安全风险,但自动导入 key 并不意味着我也自动信任它们。

最佳答案

编写脚本时不要使用邮件地址来查找 key 。 Everybody can upload keys with arbitrary user IDs in them , 关键服务器根本不检查任何东西。甚至可以很容易地calculate short key ID collisions .信任 key 服务器上的任意 key 提供了一个非常非常危险的错误安全假设。

出于脚本目的,始终使用 key 指纹。这些可以防止碰撞攻击并为 OpenPGP key 提供唯一标识符(理论上它们不会,但它们提供更大的 key 地址空间与 UUID 相比,UUID 在实践中被认为是唯一的)。

要下载指纹列表,请使用类似的东西

gpg --recv-keys \
0D69E11F12BDBA077B3726AB4E1F799AA4FF2279 \
4AC1999F0BA293E8960AF2DA428C3085AF19CFE9 \
...

(或者,删除反斜杠并将所有内容放在一行中)

要简单地获取所有 key 以另一种方式验证信任(例如,通过信任网络,但不要忘记这样做),您必须围绕 GnuPG 的脚本。这是一个 example script originally posted on security.SE ,它获取一个每行包含一个邮件地址的文件并获取所有匹配的键:

#!/bin/sh
while read line
do
gpg --with-colons --batch --search $line 2>/dev/null | \
awk 'BEGIN { FS = ":" }; $1=="pub" { print $2 }' | \
xargs gpg --recv-keys
done < $1

关于linux - 自动下载一个pgp key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28565741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com