Copyright | (c) Marcel Fourné 20[09..14] |
---|---|
License | BSD3 |
Maintainer | Marcel Fourné (haskell@marcelfourne.de) |
Stability | beta |
Portability | Good |
Safe Haskell | None |
Language | Haskell98 |
ECC Base algorithms & point formats for NIST Curves as specified in NISTReCur.pdf[http:/csrc.nist.govgroupsSTtoolkitdocumentsdss/NISTReCur.pdf] Re Timing-Attacks: The field backends differ in timing-attack resistance. Due to the nature of NIST-curves, there are pitfalls in this module.
Documentation
F2 consist of an exact length of meaningful bits and a representation of those bits in a possibly larger Vector of Words | Note: The vectors use small to large indices, but the Data.Word endianness is of no concern as it is hidden by Data.Bits | This results in indices from 0 to l-1 mapped from left to right across Words | Be careful with those indices! The usage of quotRem with them has caused some headache.
all Elliptic Curves, the parameters being the BitLength L, A, B and P
data of Elliptic Curve Points
export :: EC a -> ECPF a -> (Integer, Integer) Source #
translate point in internal format to a pair of Integers in affine x and y coordinate | this is intended as interface to other libraries