mirror of
https://github.com/zerotier/identity.git
synced 2026-05-22 16:29:03 -07:00
More tests, it passes them.
This commit is contained in:
@@ -535,4 +535,32 @@ mod tests {
|
||||
.eq(&secret.public));
|
||||
assert!(x25519::IdentitySecret::from_bytes(secret.to_bytes().as_slice()).unwrap().eq(&secret));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn known_good() {
|
||||
const KNOWN_GOOD: [&str; 4] = [
|
||||
"491287db97:0:00f7254a5e88878cc92e41d5be9533b3d52774a22a937ce4a2d2ff24915be138b3d6494264f5f208ccef162f27a3a7879472b141f3167975f4d0fc17b94d765f:4dfc009c3ee6103147f302fb71f1a3b11add9dd7c6ae4651976cffd8d1b2bf6bd11d0d50bcc5713524184323c29ffd4cd3009897b06b4c0f743a5e541de5479c",
|
||||
"2fd3e47197:0:b42f063109e84fc39d01fd14b923739b64193a403ff88281590f35a13a42c966ebb5f0b8044d140a39982bc951e7841de931442b2bb63a06801e565a4770b65b:0e844a9ccda42451ccef921527826e6dcb917f8f8dc95fc030624c1d40fc9b18e163d7a98c36ae27a45e00afeb043fa58f41c2f9ac64bd817ed6b49ff965ddc2",
|
||||
"f732a2db3a:0:6652843b5b0cc886be24b49f250b32b9d3057952cb801d818f492af7ef78f47fc32dc46fe7c3d3180c4bc5fce92635d7c07af3978ea10904f9bc219dfe154d0f:a2e24b9c6c537f37aae3f6c3caa117dec196ec58e48a8bb5be51c063e41ce645264d7c68e8c888ed1acc2f1a08586c9755625e264a0617e503334cc784afddcf",
|
||||
"bfa6e78018:0:04d6e19a1b5c9bad615b453e7ce30988949aff7dbaa9e4cf4afb315d1d5aca0642a67c79e4f16c55c1306109a44c203e6e04dc3229f4bc37098b2ce14fd2f8be:77b068d3bc02d7bbb25d9051faef46fa66745d121b619a1d789d93984dac27571a3be106d7bead9ca7b6eeec2c6e56a35b680b101e750136aa13da9147a2edad",
|
||||
];
|
||||
for s in KNOWN_GOOD {
|
||||
let secret = x25519::IdentitySecret::from_str(s).unwrap();
|
||||
let sig = secret.sign(b"asdf");
|
||||
assert!(secret.public.verify_signature(b"asdf", &sig));
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn known_bad() {
|
||||
const KNOWN_BAD: [&str; 4] = [
|
||||
"491287db97:0:00f7254f5e88878cc92e41d5be9533b3d52774a22a937ce4a2d2ff24915be138b3d6494264f5f208ccef162f27a3a7879472b141f3167975f4d0fc17b94d765f:4dfc009c3ee6103147f302fb71f1a3b11add9dd7c6ae4651976cffd8d1b2bf6bd11d0d50bcc5713524184323c29ffd4cd3009897b06b4c0f743a5e541de5479c",
|
||||
"2fd3e57197:0:b42f063109e84fc39d01fd14b923739b64193a403ff88281590f35a13a42c966ebb5f0b8044d140a39982bc951e7841de931442b2bb63a06801e565a4770b65b:0e844a9ccda42451ccef921527826e6dcb917f8f8dc95fc030624c1d40fc9b18e163d7a98c36ae27a45e00afeb043fa58f41c2f9ac64bd817ed6b49ff965ddc2",
|
||||
"f732a2db3a:1:6652843b5b0cc886be24b49f250b32b9d3057952cb801d818f492af7ef78f47fc32dc46fe7c3d3180c4bc5fce92635d7c07af3978ea10904f9bc219dfe154d0f:a2e24b9c6c537f37aae3f6c3caa117dec196ec58e48a8bb5be51c063e41ce645264d7c68e8c888ed1acc2f1a08586c9755625e264a0617e503334cc784afddcf",
|
||||
"0fa6e78018:0:04d6e19a1b5c9bad615b353e7ce30988949aff7dbaa9e4cf4afb315d1d5aca0642a67c79e4f16c55c1306109a44c203e6e04dc3229f4bc37098b2ce14fd2f8be:77b068d3bc02d7bbb25d9051faef46fa66745d121b619a1d789d93984dac27571a3be106d7bead9ca7b6eeec2c6e56a35b680b101e750136aa13da9147a2edad",
|
||||
];
|
||||
for s in KNOWN_BAD {
|
||||
assert!(x25519::IdentitySecret::from_str(s).is_err());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user