Add test for Montgomery ladder with a scalar with high bit set.

This commit is contained in:
Isis Lovecruft 2017-10-05 02:15:28 +00:00
parent ca5b58c2b7
commit 9da24d8afa
Failed to extract signature

View file

@ -545,6 +545,19 @@ mod test {
assert_eq!(result.compress(), expected.to_montgomery().compress());
}
#[test]
#[should_panic(expected = "assertion failed: self[31] <= 127")]
fn ladder_matches_scalarmult_with_scalar_high_bit_set() {
let mut s: Scalar = Scalar::one();
s[31] = 255;
let result: MontgomeryPoint = &BASE_COMPRESSED_MONTGOMERY.decompress() * &s;
let expected: ExtendedPoint = &constants::ED25519_BASEPOINT_TABLE * &s;
assert_eq!(result.compress(), expected.to_montgomery().compress())
}
}
#[cfg(all(test, feature = "bench"))]