From ad34f0e1e89a9caa13b975e74e38bd5a68c12ca3 Mon Sep 17 00:00:00 2001 From: Vincent Hanquez Date: Sun, 3 May 2015 20:15:26 +0100 Subject: [PATCH] use mod after add/sub --- Crypto/PubKey/ECC/P256.hs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Crypto/PubKey/ECC/P256.hs b/Crypto/PubKey/ECC/P256.hs index fa1c510..4c46df0 100644 --- a/Crypto/PubKey/ECC/P256.hs +++ b/Crypto/PubKey/ECC/P256.hs @@ -78,13 +78,15 @@ scalarZero = withNewScalarFreeze $ \d -> ccryptonite_p256_init d scalarAdd :: Scalar -> Scalar -> Scalar scalarAdd a b = - withNewScalarFreeze $ \d -> withScalar a $ \pa -> withScalar b $ \pb -> + withNewScalarFreeze $ \d -> withScalar a $ \pa -> withScalar b $ \pb -> do void $ ccryptonite_p256_add pa pb d + ccryptonite_p256_mod ccryptonite_SECP256r1_n d d scalarSub :: Scalar -> Scalar -> Scalar scalarSub a b = - withNewScalarFreeze $ \d -> withScalar a $ \pa -> withScalar b $ \pb -> + withNewScalarFreeze $ \d -> withScalar a $ \pa -> withScalar b $ \pb -> do void $ ccryptonite_p256_sub pa pb d + ccryptonite_p256_mod ccryptonite_SECP256r1_n d d scalarCmp :: Scalar -> Scalar -> Ordering scalarCmp a b = unsafeDoIO $