Как проверить подлинность файла загрузки GPG4win?

Я пытаюсь убедиться, что загруженный файл GPG4win действительно легален. У меня есть доступ к машине с проверенной установкой GnuPG. Я побежал

> gpg --recv EC70B1B8
> gpg -v --verify gpg4win-2.3.3.exe.sig gpg4win-2.3.3.exe
  Version: GnuPG v1.4.12 (GNU/Linux)
  gpg: armor header: 
  gpg: Signature made Thu 18 Aug 2016 05:20:50 AM EDT using DSA key ID EC70B1B8
  gpg: using PGP trust model
  gpg: Good signature from "Intevation File Distribution Key <distribution-key@intevation.de>"
  gpg: WARNING: This key is not certified with a trusted signature!
  gpg:          There is no indication that the signature belongs to the owner.
  Primary key fingerprint: 61AC 3F5E E4BE 593C 13D6  8B1E 7CBD 620B EC70 B1B8
  gpg: binary signature, digest algorithm SHA1

Меня беспокоит то, что отпечаток первичного ключа не соответствует сертификату подписи кода на их веб-сайте:

Сертификат подписи кода Все файлы установщика Gpg4win exe с апреля 2016 года подписаны следующим сертификатом подписи кода:

  S/N: 1121A3D67EAB28AA86FD85728B57FA62630D
  Issuer: CN=GlobalSign CodeSigning CA - SHA256 - G2,O=GlobalSign nv-sa,C=BE
  Subject: 1.2.840.113549.1.9.1=#636F64657369676E696E6740696E7465766174696F6E2E6465,CN=Intevation

GmbH, O = Intevation GmbH, L = Оснабрюк,ST= Нидерсаксен,C=DE sha1_fpr: DE:16:D5:97:2F:0B:73:95:F7:D9:1E:DC:1F:21:9B:0F:FE:89:FA:B3 md5_fpr: C0:98:08:94:D4:E7:97:3E:9D:F4:18:E4:5E:0A:2E:D7 не ранее: 2016-03-30 16:54:41 notAfter: 2019-03-31 16:54:41

Я сравниваю sha1_fpr к первичному ключу отпечатка пальца. Разве это не правильно?

1 ответ

Вы сравниваете разные виды подписей. Подпись в gpg4win-2.3.3.exe.sig это подпись OpenPGP, которую вы можете проверить через GnuPG (но Windows не поддерживает OpenPGP). С другой стороны, сертификат подписи кода (как это проверяется, например, в Windows) является сертификатом X.509. Эта подпись встроена в gpg4win-2.3.3.exe файл. Если я правильно помню, вы сможете проверить это через SignTool verify gpg4win-2.3.3.exe,

Хотя оба сертификата OpenPGP и X.509 в основном основаны на одних и тех же криптографических принципах (т. Е. Ключи RSA), их ключи и сертификаты несовместимы. Хотя вы можете создавать сертификаты из одной и той же пары ключей RSA, они все равно будут разными и будут иметь разные отпечатки: включается разная информация.

Важным отличием также является основополагающая система доверия: хотя OpenPGP опирается на сеть доверия (вы ищете пути доверия, начиная с ваших собственных или других доверенных и проверенных ключей; вы еще этого не сделали, поэтому сообщение на недоверенная подпись), X.509 использует иерархический подход: так называемые центры сертификации являются доверенными и могут выпускать сертификаты для других (здесь это Global Sign).

Другие вопросы по тегам