diff options
author | Justus Winter <justus@sequoia-pgp.org> | 2020-07-02 13:07:10 +0200 |
---|---|---|
committer | Justus Winter <justus@sequoia-pgp.org> | 2020-07-06 12:52:53 +0200 |
commit | 82926d579db305dec9dc491fa8d97428976b07d3 (patch) | |
tree | ccac5f5c3d24c41b40137c438aca59e24073b2d5 /sqv | |
parent | 4b4c503c64ce1b1c4070fce27d2b3c3da1a9d540 (diff) |
sqv: Improve test.
- Make dates more plausible, add userid to make certificates more
compatible.
Diffstat (limited to 'sqv')
26 files changed, 32 insertions, 10 deletions
diff --git a/sqv/tests/data/revoked-key-cert-not-revoked.pgp b/sqv/tests/data/revoked-key-cert-not-revoked.pgp Binary files differindex b54bd712..d14e954e 100644 --- a/sqv/tests/data/revoked-key-cert-not-revoked.pgp +++ b/sqv/tests/data/revoked-key-cert-not-revoked.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-compromised.pgp b/sqv/tests/data/revoked-key-cert-revoked-compromised.pgp Binary files differindex 97ddd18e..7d43d847 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-compromised.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-compromised.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-compromised.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-compromised.sk.pgp Binary files differindex ad6cf793..8952867a 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-compromised.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-compromised.sk.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-key_retired.pgp b/sqv/tests/data/revoked-key-cert-revoked-key_retired.pgp Binary files differindex f16ab029..9478494e 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-key_retired.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-key_retired.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-key_retired.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-key_retired.sk.pgp Binary files differindex 95762735..9ec67628 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-key_retired.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-key_retired.sk.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.pgp b/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.pgp Binary files differindex d7c2ecc5..530347b2 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.sk.pgp Binary files differindex 9c554046..d302429f 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-no_subpacket.sk.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-private.pgp b/sqv/tests/data/revoked-key-cert-revoked-private.pgp Binary files differindex 9fc6568c..59f4b5ba 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-private.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-private.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-private.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-private.sk.pgp Binary files differindex 528732ec..7a0c04b5 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-private.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-private.sk.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-superseded.pgp b/sqv/tests/data/revoked-key-cert-revoked-superseded.pgp Binary files differindex b9debcf9..61125f28 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-superseded.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-superseded.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-superseded.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-superseded.sk.pgp Binary files differindex cae4e042..891dfe8e 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-superseded.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-superseded.sk.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-uid_retired.pgp b/sqv/tests/data/revoked-key-cert-revoked-uid_retired.pgp Binary files differindex f54fe768..fea734b9 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-uid_retired.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-uid_retired.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-uid_retired.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-uid_retired.sk.pgp Binary files differindex 910e89fc..3bd4d9fd 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-uid_retired.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-uid_retired.sk.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-unknown.pgp b/sqv/tests/data/revoked-key-cert-revoked-unknown.pgp Binary files differindex 3f896d7a..83d9e299 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-unknown.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-unknown.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-unknown.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-unknown.sk.pgp Binary files differindex 9950548b..a4baef41 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-unknown.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-unknown.sk.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-unspecified.pgp b/sqv/tests/data/revoked-key-cert-revoked-unspecified.pgp Binary files differindex 2c5e53df..0d77cfd1 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-unspecified.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-unspecified.pgp diff --git a/sqv/tests/data/revoked-key-cert-revoked-unspecified.sk.pgp b/sqv/tests/data/revoked-key-cert-revoked-unspecified.sk.pgp Binary files differindex 358eaf65..c6d7644e 100644 --- a/sqv/tests/data/revoked-key-cert-revoked-unspecified.sk.pgp +++ b/sqv/tests/data/revoked-key-cert-revoked-unspecified.sk.pgp diff --git a/sqv/tests/data/revoked-key-sig-t0.pgp b/sqv/tests/data/revoked-key-sig-t0.pgp Binary files differindex a2d5d733..1c87b4c5 100644 --- a/sqv/tests/data/revoked-key-sig-t0.pgp +++ b/sqv/tests/data/revoked-key-sig-t0.pgp diff --git a/sqv/tests/data/revoked-key-sig-t0.sk.pgp b/sqv/tests/data/revoked-key-sig-t0.sk.pgp Binary files differindex 83dcea08..80732cbb 100644 --- a/sqv/tests/data/revoked-key-sig-t0.sk.pgp +++ b/sqv/tests/data/revoked-key-sig-t0.sk.pgp diff --git a/sqv/tests/data/revoked-key-sig-t1-t2.pgp b/sqv/tests/data/revoked-key-sig-t1-t2.pgp Binary files differindex 63ed6170..a1ae9e93 100644 --- a/sqv/tests/data/revoked-key-sig-t1-t2.pgp +++ b/sqv/tests/data/revoked-key-sig-t1-t2.pgp diff --git a/sqv/tests/data/revoked-key-sig-t1-t2.sk.pgp b/sqv/tests/data/revoked-key-sig-t1-t2.sk.pgp Binary files differindex 2f81ca3d..9d54de30 100644 --- a/sqv/tests/data/revoked-key-sig-t1-t2.sk.pgp +++ b/sqv/tests/data/revoked-key-sig-t1-t2.sk.pgp diff --git a/sqv/tests/data/revoked-key-sig-t2-t3.pgp b/sqv/tests/data/revoked-key-sig-t2-t3.pgp Binary files differindex 2e2f5611..47970df3 100644 --- a/sqv/tests/data/revoked-key-sig-t2-t3.pgp +++ b/sqv/tests/data/revoked-key-sig-t2-t3.pgp diff --git a/sqv/tests/data/revoked-key-sig-t2-t3.sk.pgp b/sqv/tests/data/revoked-key-sig-t2-t3.sk.pgp Binary files differindex 1b42061d..b8b36ed6 100644 --- a/sqv/tests/data/revoked-key-sig-t2-t3.sk.pgp +++ b/sqv/tests/data/revoked-key-sig-t2-t3.sk.pgp diff --git a/sqv/tests/data/revoked-key-sig-t3-now.pgp b/sqv/tests/data/revoked-key-sig-t3-now.pgp Binary files differindex e3541c6e..7bb16851 100644 --- a/sqv/tests/data/revoked-key-sig-t3-now.pgp +++ b/sqv/tests/data/revoked-key-sig-t3-now.pgp diff --git a/sqv/tests/data/revoked-key-sig-t3-now.sk.pgp b/sqv/tests/data/revoked-key-sig-t3-now.sk.pgp Binary files differindex 338af8b1..dad31e65 100644 --- a/sqv/tests/data/revoked-key-sig-t3-now.sk.pgp +++ b/sqv/tests/data/revoked-key-sig-t3-now.sk.pgp diff --git a/sqv/tests/revoked-key.rs b/sqv/tests/revoked-key.rs index 65e03255..652d8f1e 100644 --- a/sqv/tests/revoked-key.rs +++ b/sqv/tests/revoked-key.rs @@ -259,9 +259,11 @@ fn create_key() { Key, key::{ Key4, + SecretParts, PrimaryRole, SubordinateRole, }, + UserID, }, serialize::Serialize, types::{ @@ -276,25 +278,39 @@ fn create_key() { use chrono::offset::TimeZone; let msg = b"Hello, World"; - let t0 = chrono::offset::Utc.timestamp(915145200, 0); // 1999-01-01 - let t1 = chrono::offset::Utc.timestamp(946681200, 0); // 2000-01-01 - let t2 = chrono::offset::Utc.timestamp(978303600, 0); // 2001-01-01 - let t3 = chrono::offset::Utc.timestamp(1009839600, 0); // 2002-01-01 + let t0 = chrono::offset::Utc.timestamp(1483228800, 0); // 2017-01-01 + let t1 = chrono::offset::Utc.timestamp(1514764800, 0); // 2018-01-01 + let t2 = chrono::offset::Utc.timestamp(1546300800, 0); // 2019-01-01 + let t3 = chrono::offset::Utc.timestamp(1577836800, 0); // 2020-01-01 let f1: f32 = 0.4; // Chosen by fair dice roll. let f2: f32 = 0.7; // Likewise. let t12 = t1 + chrono::Duration::days((300.0 * f1) as i64); let t_sk_binding = t12 + chrono::Duration::days(1); let t23 = t2 + chrono::Duration::days((300.0 * f2) as i64); + let compatible = false; + + let make_key = || -> Key<SecretParts, PrimaryRole> { + if compatible { + Key4::generate_rsa(2048).unwrap().into() + } else { + Key4::generate_ecc(true, Curve::Ed25519).unwrap().into() + } + }; // Create primary key. - let mut key: Key<_, PrimaryRole> = - Key4::generate_ecc(true, Curve::Ed25519).unwrap().into(); + let mut key: Key<_, PrimaryRole> = make_key().into(); key.set_creation_time(t1).unwrap(); let mut signer = key.clone().into_keypair().unwrap(); + // Create a UserID. + let uid: UserID = "juliet@example.org".into(); + let uid_binding = + signature::SignatureBuilder::new(SignatureType::PositiveCertification) + .set_signature_creation_time(t1).unwrap() + .sign_userid_binding(&mut signer, &key, &uid).unwrap(); + // Create subkey. - let mut subkey: Key<_, SubordinateRole> = - Key4::generate_ecc(true, Curve::Ed25519).unwrap().into(); + let mut subkey: Key<_, SubordinateRole> = make_key().into(); subkey.set_creation_time(t1 + chrono::Duration::days(1)).unwrap(); let mut sk_signer = subkey.clone().into_keypair().unwrap(); @@ -315,7 +331,7 @@ fn create_key() { .set_embedded_signature( signature::SignatureBuilder::new(SignatureType::PrimaryKeyBinding) .set_signature_creation_time(t_sk_binding).unwrap() - .sign_subkey_binding(&mut sk_signer, &key, &subkey).unwrap()) + .sign_primary_key_binding(&mut sk_signer, &key, &subkey).unwrap()) .unwrap(); let sk_bind1 = b.sign_subkey_binding(&mut signer, &key, &subkey).unwrap(); @@ -336,7 +352,7 @@ fn create_key() { .set_embedded_signature( signature::SignatureBuilder::new(SignatureType::PrimaryKeyBinding) .set_signature_creation_time(t3).unwrap() - .sign_subkey_binding(&mut sk_signer, &key, &subkey).unwrap()) + .sign_primary_key_binding(&mut sk_signer, &key, &subkey).unwrap()) .unwrap(); let sk_bind2 = b.sign_subkey_binding(&mut signer, &key, &subkey).unwrap(); @@ -344,6 +360,8 @@ fn create_key() { key.clone().into(), direct1.clone().into(), direct2.clone().into(), + uid.clone().into(), + uid_binding.clone().into(), subkey.clone().into(), sk_bind1.clone().into(), sk_bind2.clone().into(), @@ -376,6 +394,8 @@ fn create_key() { direct1.clone().into(), rev.clone().into(), direct2.clone().into(), + uid.clone().into(), + uid_binding.clone().into(), subkey.clone().into(), sk_bind1.clone().into(), sk_bind2.clone().into(), @@ -400,6 +420,8 @@ fn create_key() { key.clone().into(), direct1.clone().into(), direct2.clone().into(), + uid.clone().into(), + uid_binding.clone().into(), subkey.clone().into(), sk_bind1.clone().into(), rev.clone().into(), |