gpgkeys_finger.exe、gpgkeys_ldap.exe 的作用是什么

gpgkeys_finger.exe、gpgkeys_ldap.exe 的作用是什么

我下载了 GnuPG 1.4.19。在可执行文件中,有

  • gpgkeys_hkp.exe
  • gpgkeys_finger.exe
  • gpgkeys_ldap.exe

我发现三个可执行文件中的第一个是与公钥服务器通信所必需的。

  • gpgkeys_finger.exe
  • gpgkeys_ldap.exe

答案1

这些是密​​钥服务器协议驱动程序,换句话说,它们实现了使用 GnuPG 访问密钥服务器的不同方式。就列出的协议而言,HKP 是当今常用的协议。Finger 协议可能在早期作为公司中的资源查找模式得到更广泛的使用,但仍然可用,如今公司通常会使用 LDAP 数据库来存储用户信息和验证凭据。

这些应用程序不打算手动执行,没有关于如何使用它们的文档。由于我自己对此很感兴趣,我gpgkeys_hkp用一个小包装脚本(对于 Linux 系统,在 Windows 上你需要另一个)替换了它,拦截了实际二进制文件的输入:

#!/usr/bin/env sh

tee /tmp/gpgkeys_hkp.log | /usr/lib/gnupg/gpgkeys_hkp_

tee将 STDIN 上的所有内容转储到/tmp/gpgkeys_hkp.log,然后将相同的输入转发到重命名的实际gpgkeys_hkp实现。搜索密钥[email protected]会显示发送到密钥服务器驱动程序进行搜索的以下命令

# This is a GnuPG 1.4.19 keyserver communications file
VERSION 1
PROGRAM 1.4.19
SCHEME hkp
HOST pool.sks-keyservers.net
PATH /
COMMAND SEARCH

[email protected]

最后获取密钥

# This is a GnuPG 1.4.19 keyserver communications file
VERSION 1
PROGRAM 1.4.19
SCHEME hkp
HOST pool.sks-keyservers.net
PATH /
COMMAND GET

0x0D69E11F12BDBA077B3726AB4E1F799AA4FF2279

当你尝试在 Windows 上运行这些可能由于行尾编码不同而遇到麻烦(Windows 中为CRLF/ ,Linux 中为/ ),但将这些内容保存为“UNIX”编码的文本文件并最终从这些文件中读取应该可以正常工作并显示结果:\r\nLF\n

gpgkeys_hkp <input.txt     # on Linux/other unixoid systems
gpgkeys_hkp.exe <input.txt # for Windows

相关内容