Проверить архивы GPG из командной строки с помощью блока открытого ключа подписавшего?

581
jww

У меня есть скрипт для загрузки пяти исходных пакетов Gcrypt из GnuPG Download . Я также получаю подпись для каждой посылки. Например:

FILE=libassuan-2.2.0 wget -q "ftp://ftp.gnupg.org/gcrypt/libassuan/$FILE.tar.bz2.sig" -O "$FILE.tar.bz2.sig" wget -q "ftp://ftp.gnupg.org/gcrypt/libassuan/$FILE.tar.bz2" -O "$FILE.tar.bz2" gpg --verify "$FILE.tar.bz2.sig" "$FILE.tar.bz2" 

При попытке проверить загрузку выдается сообщение об ошибке «Не удается проверить подпись: открытый ключ не найден» . Это ожидаемо, так как виртуальная машина довольно чистая и у нее нет цепочки для ключей GPG (я думаю, так она называется).

У меня есть блок открытого ключа со страницы Ключ подписи, и он находится в файле с именем gpg-signers.pem. Но я не знаю, как использовать его с GPG.

Я искал страницы справочника, но не вижу, как передать открытый ключ block ( gpg-signers.pem) в команду ( gpg --verify). Существует --sign-key, но он используется для «подписания открытого ключа с вашим секретным ключом» ; и не указывать ключ подписавшего для проверки подписи.

Как перейти gpg-signers.pemк gpg --verifyпроверке подписи на пакете?

1

1 ответ на вопрос

1
把友情留在无盐

We have to import the keys before checking the signature.

$ gpg --import gpg-signers.pem gpg: key 4F25E3B6: public key "Werner Koch (dist sig)" imported $ gpg --verify libassuan-2.2.0.tar.bz2.sig libassuan-2.2.0.tar.bz2 gpg: Signature made Thu 11 Dec 2014 21:13:07 JST using RSA key ID 4F25E3B6 gpg: Good signature from "Werner Koch (dist sig)" 

If we don't want the keys to be stored in the local database permanently, use a disposable keyring.

$ gpg --no-default-keyring --keyring 1.keyring --import gpg-signers.pem gpg: keyring 1.keyring created ... $ gpg --no-default-keyring --keyring 1.keyring --verify ... ... $ trash 1.keyring 

By design, we receive keys out-of-band.

Though not as convenient as HTTPS, we can download Werner Koch's public key by gpg --recv-key 4F25E3B6. This command work out-of-box on many distros with a preconfigured keyserver. It is easy to write some script look into a signature file and automatically download the key the person who issue this signature used. But the decision is still left upon us, to determine whether to trust or not trust the person.

Стоит ли удивляться, что такие средства безопасности, как GPG, не получили широкого распространения ... Довольно печально, когда вы даже не можете проверить подпись с помощью сообщения и ключа, не выполнив 5 дополнительных шагов, не выполнив поиск по страницам справки и помощи от Супер пользователь ... jww 9 лет назад 0
отредактировано, возможно, новый раздел хорош для вашего дополнительного комментария. 把友情留在无盐 9 лет назад 0
«По замыслу, мы добавляем только ключи от людей, которым доверяем» - это чушь. Вы только _sign_ ключи от людей, которым вы доверяете. Простое добавление их в связку ключей абсолютно ничего не меняет. grawity 9 лет назад 3
Отчет об ошибке подан ... [Проблема 1860: Невозможно проверить подписи из командной строки с помощью блока открытого ключа подписавшего] (https://bugs.g10code.com/gnupg/issue1860). jww 9 лет назад 0