diff options
author | Kai Michaelis <kai@sequoia-pgp.org> | 2018-12-14 12:48:17 +0100 |
---|---|---|
committer | Kai Michaelis <kai@sequoia-pgp.org> | 2018-12-14 12:51:43 +0100 |
commit | 37851af37fbd2f0beb68a62d837b98557c67e70b (patch) | |
tree | 7ad1ebc799b6847054e011020040e7d45f1c7aa4 | |
parent | 92232474771052a3fc38aeaa3c0848d674cab519 (diff) |
openpgp: add test verifying 3rd party cert by GPG
-rw-r--r-- | openpgp/src/packet/signature/mod.rs | 16 | ||||
-rw-r--r-- | openpgp/tests/data/keys/test1-certification-key.pgp | bin | 0 -> 1219 bytes | |||
-rw-r--r-- | openpgp/tests/data/keys/test2-signed-by-test1.pgp | bin | 0 -> 1529 bytes |
3 files changed, 16 insertions, 0 deletions
diff --git a/openpgp/src/packet/signature/mod.rs b/openpgp/src/packet/signature/mod.rs index fec63fe0..98a9f615 100644 --- a/openpgp/src/packet/signature/mod.rs +++ b/openpgp/src/packet/signature/mod.rs @@ -1096,4 +1096,20 @@ mod test { Builder::new(SignatureType::Text) .sign_hash(&key, &private_mpis, HashAlgorithm::SHA256, hash).unwrap(); } + + #[test] + fn verify_gpg_3rd_party_cert() { + use {packet::KeyFlags, TPK}; + + let cert_kf = KeyFlags::default().set_certify(true); + let test1 = TPK::from_file( + path_to("keys/test1-certification-key.pgp")).unwrap(); + let cert_key1 = test1.select_keys(cert_kf, None)[0]; + let test2 = TPK::from_file( + path_to("keys/test2-signed-by-test1.pgp")).unwrap(); + let uid_binding = &test2.primary_key_signature_full().unwrap().0.unwrap(); + let cert = uid_binding.certifications().next().unwrap(); + + assert_eq!(cert.verify_userid_binding(cert_key1, test2.primary(), uid_binding.userid()).ok(), Some(true)); + } } diff --git a/openpgp/tests/data/keys/test1-certification-key.pgp b/openpgp/tests/data/keys/test1-certification-key.pgp Binary files differnew file mode 100644 index 00000000..de188dc8 --- /dev/null +++ b/openpgp/tests/data/keys/test1-certification-key.pgp diff --git a/openpgp/tests/data/keys/test2-signed-by-test1.pgp b/openpgp/tests/data/keys/test2-signed-by-test1.pgp Binary files differnew file mode 100644 index 00000000..f41d491f --- /dev/null +++ b/openpgp/tests/data/keys/test2-signed-by-test1.pgp |