- <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
- <gpgme>
- <verify-result>
- <signatures>
- <signature>
- <summary value="0x0" />
- <fpr>B2EDBE0E771A4B8708DD16A7511AEDA64332B6E3</fpr>
- <status value="0x0">Success <Unspecified source></status>
- <timestamp unix="1332358207i" />
- <exp-timestamp unix="0i" />
- <wrong-key-usage value="0x0" />
- <pka-trust value="0x0" />
- <chain-model value="0x0" />
- <validity value="0x0" />
- <validity-reason value="0x0">Success <Unspecified source></validity-reason>
- <pubkey-algo value="0x1">RSA</pubkey-algo>
- <hash-algo value="0x2">SHA1</hash-algo>
- </signature>
- </signatures>
- </verify-result>
- </gpgme>
- <BLANKLINE>
+ B2EDBE0E771A4B8708DD16A7511AEDA64332B6E3 signature:
+ summary:
+ CRL missing: False
+ CRL too old: False
+ bad policy: False
+ green: False
+ key expired: False
+ key missing: False
+ key revoked: False
+ red: False
+ signature expired: False
+ system error: False
+ valid: False
+ status: success
+ timestamp: Wed Mar 21 19:30:07 2012
+ expiration timestamp: None
+ wrong key usage: False
+ pka trust: not available
+ chain model: False
+ validity: unknown
+ validity reason: success
+ public key algorithm: RSA
+ hash algorithm: SHA1
+
+ Data signed by a subkey returns the subkey fingerprint. To find
+ the primary key for a given subkey, use
+ ``pgp_mime.key.lookup_keys()``.
+
+ >>> b = '\n'.join([
+ ... '-----BEGIN PGP MESSAGE-----',
+ ... 'Version: GnuPG v2.0.19 (GNU/Linux)',
+ ... '',
+ ... 'hQEMAxcQCLovc94uAQf9ErTZnr0lYRlLLZIk1VcpNNTHrMro+BmqpFC0jprA4/2m',
+ ... '92klBF4TIS1A9bU5oxzQquaAIDV42P3sXrbxu/YhHLmPGH+dc2JVSfPLL0XOL5GC',
+ ... 'qpQYe5lglRBReFSRktrfhukjHBoXvh3c8T4xYK2r+nIV4gsp+FrSQMIOdhhBoC36',
+ ... 'U1MOk+R+I0JDbWdzZzJONs7ZcAcNDVKqxmAXZUqVgkhPpnGBSBuF9ExKRT3S6e5N',
+ ... 'Rsorb/DjGIUHSZuH2EaWAUz1jJ3nSta7TnveT/avfJiAV7cRS4oVgyyFyuHO5gkI',
+ ... 'o0obeJaut3enVgpq2TUUk0M4L8TX4jjKvDGAYNyuPNLAsQFHLj5eLmJSudGStWuA',
+ ... 'WjKLqBHD0M8/OcwnrTMleJl+h50ZsHO1tvvkXelH+w/jD5SMS+ktxq2Te8Vj7BmM',
+ ... '0WQn3Ys7ViA5PgcSpbqNNLdgc1EMcpPI/sfJAORPKVWRPBKDXX/irY2onAMSe5gH',
+ ... 'teNX6bZd/gaoLWqD/1ZhsOCnlV7LY1R929TJ9vxnJcfKKAKwBDfAaSbecUUMECVw',
+ ... 's4u3ZT1pmNslBmH6XSy3ifLYWu/2xsJuhPradT88BJOBARMGg81gOE6zxGRrMLJa',
+ ... 'KojFgqaF2y4nlZAyaJ1Ld4qCaoQogaL9qE1BbmgtBehZ2FNQiIBSLC0fUUl8A4Py',
+ ... '4d9ZxUoSp7nZmgTN5pUH1N9DIC4ntp/Rak2WnpS7+dRPlp9A2SF0RkeLY+JD9gNm',
+ ... 'j44zBkI79KlgaE/cMt6xUXAF/1ZR/Hv/6GUazGx0l23CnSGuqzLpex2uKOxfKiJt',
+ ... 'jfgyZRhIdFJnRuEXt8dTTDiiYA==',
+ ... '=0o+x',
+ ... '-----END PGP MESSAGE-----',
+ ... '',
+ ... ]).encode('us-ascii')
+ >>> output,verified,signatures = verify_bytes(b)
+ >>> output
+ b'Hello'
+ >>> verified
+ False
+ >>> for s in signatures:
+ ... print(s.dumps())
+ ... # doctest: +REPORT_UDIFF
+ DECC812C8795ADD60538B0CD171008BA2F73DE2E signature:
+ summary:
+ CRL missing: False
+ CRL too old: False
+ bad policy: False
+ green: False
+ key expired: False
+ key missing: False
+ key revoked: False
+ red: False
+ signature expired: False
+ system error: False
+ valid: False
+ status: success
+ timestamp: Thu Sep 20 15:29:28 2012
+ expiration timestamp: None
+ wrong key usage: False
+ pka trust: not available
+ chain model: False
+ validity: unknown
+ validity reason: success
+ public key algorithm: RSA
+ hash algorithm: SHA256