mirror of
https://github.com/saymrwulf/curve25519-dalek-source.git
synced 2026-09-06 20:41:14 +00:00
Use array_ref! for getting digest during signing.
This commit is contained in:
parent
e4c085706c
commit
f1dd165208
1 changed files with 3 additions and 4 deletions
|
|
@ -253,7 +253,7 @@ impl PublicKey {
|
||||||
let mut a: ExtendedPoint;
|
let mut a: ExtendedPoint;
|
||||||
let ao: Option<ExtendedPoint>;
|
let ao: Option<ExtendedPoint>;
|
||||||
let r: ProjectivePoint;
|
let r: ProjectivePoint;
|
||||||
let mut digest: [u8; 64];
|
let digest: [u8; 64];
|
||||||
let digest_reduced: Scalar;
|
let digest_reduced: Scalar;
|
||||||
|
|
||||||
if signature.0[63] & 224 != 0 {
|
if signature.0[63] & 224 != 0 {
|
||||||
|
|
@ -268,16 +268,15 @@ impl PublicKey {
|
||||||
}
|
}
|
||||||
a = -(&a);
|
a = -(&a);
|
||||||
|
|
||||||
digest = [0u8; 64];
|
|
||||||
|
|
||||||
let top_half: &[u8; 32] = array_ref!(&signature.0, 32, 32);
|
let top_half: &[u8; 32] = array_ref!(&signature.0, 32, 32);
|
||||||
let bottom_half: &[u8; 32] = array_ref!(&signature.0, 0, 32);
|
let bottom_half: &[u8; 32] = array_ref!(&signature.0, 0, 32);
|
||||||
|
|
||||||
h.input(&bottom_half[..]);
|
h.input(&bottom_half[..]);
|
||||||
h.input(&self.to_bytes());
|
h.input(&self.to_bytes());
|
||||||
h.input(&message);
|
h.input(&message);
|
||||||
digest.copy_from_slice(h.result().as_slice());
|
|
||||||
|
|
||||||
|
let digest_bytes = h.result();
|
||||||
|
digest = *array_ref!(digest_bytes, 0, 64);
|
||||||
digest_reduced = Scalar::reduce(&digest);
|
digest_reduced = Scalar::reduce(&digest);
|
||||||
r = curve::double_scalar_mult_vartime(&digest_reduced, &a, &Scalar(*top_half));
|
r = curve::double_scalar_mult_vartime(&digest_reduced, &a, &Scalar(*top_half));
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue