Add test that public keys of small order are rejected.
This commit is contained in:
parent
b7dfb77cf1
commit
5d3dfc0ff2
|
@ -0,0 +1,15 @@
|
|||
use std::convert::TryFrom;
|
||||
|
||||
use jubjub::{AffinePoint, Fq};
|
||||
|
||||
use redjubjub::*;
|
||||
|
||||
#[test]
|
||||
fn smallorder_publickey_fails() {
|
||||
// (1,0) is a point of order 4 on any Edwards curve
|
||||
let order4 = AffinePoint::from_raw_unchecked(Fq::one(), Fq::zero());
|
||||
assert_eq!(<bool>::from(order4.is_small_order()), true);
|
||||
let bytes = order4.to_bytes();
|
||||
let pk_bytes = PublicKeyBytes::<SpendAuth>::from(bytes);
|
||||
assert!(PublicKey::<SpendAuth>::try_from(pk_bytes).is_err());
|
||||
}
|
Loading…
Reference in New Issue