Проверка отдельной подписи с использованием Python - PullRequest
0 голосов
/ 20 мая 2019

Я пытаюсь проверить отдельную подпись файлов для конкретного ключа, используя python gpgme (python3-gpg-1.12.0-1.fc30.x86_64).К сожалению, он не работает с:

Traceback (most recent call last):
  File "verify.py", line 11, in <module>
    ctx.verify(file, signature=sig, verify=sig_key)
  File "/usr/lib64/python3.7/site-packages/gpg/core.py", line 580, in verify
    results[1], missing, results=results)
gpg.errors.MissingSignatures: 35E6E5D3D84DBF11601A91B7C5E5D36F83B29E76

Подпись создается следующим образом: gpg2 -u my@signature.key --detach-sign file.

Мой простой код Python выглядит так:

#!/usr/bin/python3

import gpg

ctx = gpg.Context()

sig_key = list(ctx.keylist("my@signature.key"))

with open("file.sig", "rb") as sig, open("file", "rb") as file:
    ctx.verify(file, signature=sig, verify=sig_key)

ПослеПосле некоторой отладки я обнаружил, что моя подпись имеет атрибут summary=0, который, по-видимому, является моей проблемой: gpgme-python

Проверка подлинности подписи от cli работает: gpg2 -u my@signature.key --verify file.sig

Есть предложения?

...