hecc 0.4.1.0 → 0.4.1.1
raw patch · 2 files changed
+8/−8 lines, 2 files
Files
- hecc.cabal +1/−1
- src/Codec/Crypto/ECC/Base.hs +7/−7
hecc.cabal view
@@ -1,5 +1,5 @@ Name: hecc-Version: 0.4.1.0+Version: 0.4.1.1 Synopsis: Elliptic Curve Cryptography for Haskell Description: Pure math & algorithms for Elliptic Curve Cryptography in Haskell. The implementation should be timing-attack resistant, pure Haskell and reasonably fast.
src/Codec/Crypto/ECC/Base.hs view
@@ -12,7 +12,7 @@ ----------------------------------------------------------------------------- {-# OPTIONS_GHC -O2 -fllvm -optlo-O3 -feager-blackholing #-}-{-# LANGUAGE GADTs, PatternGuards, FlexibleInstances #-}+{-# LANGUAGE GADTs, PatternGuards, FlexibleInstances, BangPatterns #-} module Codec.Crypto.ECC.Base (EC(..), getBitLength,@@ -569,7 +569,7 @@ montgladder b@(ECPa _ _ _) k' = let p = getp $ getCurve b k = k' `mod` (p - 1)- ex p1 p2 i+ ex !p1 !p2 i | i < 0 = p1 | not (B.testBit k i) = ex (pdouble p1) (padd p1 p2) (i - 1) | otherwise = ex (padd p1 p2) (pdouble p2) (i - 1)@@ -577,7 +577,7 @@ montgladder b@(ECPp _ _ _ _) k' = let p = getp $ getCurve b k = k' `mod` (p - 1)- ex p1 p2 i+ ex !p1 !p2 i | i < 0 = p1 | not (B.testBit k i) = ex (pdouble p1) (padd p1 p2) (i - 1) | otherwise = ex (padd p1 p2) (pdouble p2) (i - 1)@@ -585,7 +585,7 @@ montgladder b@(ECPj _ _ _ _) k' = let p = getp $ getCurve b k = k' `mod` (p - 1)- ex p1 p2 i+ ex !p1 !p2 i | i < 0 = p1 | not (B.testBit k i) = ex (pdouble p1) (padd p1 p2) (i - 1) | otherwise = ex (padd p1 p2) (pdouble p2) (i - 1)@@ -593,7 +593,7 @@ montgladder b@(ECPmj _ _ _ _ _) k' = let p = getp $ getCurve b k = k' `mod` (p - 1)- ex p1 p2 i+ ex !p1 !p2 i | i < 0 = p1 | not (B.testBit k i) = ex (pdouble p1) (padd p1 p2) (i - 1) | otherwise = ex (padd p1 p2) (pdouble p2) (i - 1)@@ -601,7 +601,7 @@ montgladder b@(ECPaF2 _ _ _) k' = let p = getp $ getCurve b k = k' `mod` ((F2.toInteger p) - 1)- ex p1 p2 i+ ex !p1 !p2 i | i < 0 = p1 | not (B.testBit k i) = ex (pdouble p1) (padd p1 p2) (i - 1) | otherwise = ex (padd p1 p2) (pdouble p2) (i - 1)@@ -609,7 +609,7 @@ montgladder b@(ECPpF2 _ _ _ _) k' = let p = getp $ getCurve b k = k' `mod` ((F2.toInteger p) - 1)- ex p1 p2 i+ ex !p1 !p2 i | i < 0 = p1 | not (B.testBit k i) = ex (pdouble p1) (padd p1 p2) (i - 1) | otherwise = ex (padd p1 p2) (pdouble p2) (i - 1)