
Я скачал 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 вымощьмогут возникнуть проблемы из-за разной кодировки окончаний строк ( CRLF
/ \r\n
в Windows вместо LF
/ \n
в Linux), но сохранение этого содержимого в виде текстовых файлов в кодировке «UNIX» и последующее чтение из этих файлов должно работать нормально и показывать результаты:
gpgkeys_hkp <input.txt # on Linux/other unixoid systems
gpgkeys_hkp.exe <input.txt # for Windows