hecc: Elliptic Curve Cryptography for Haskell

[ bsd3, codec, cryptography, deprecated, library ] [ Propose Tags ]
Deprecated in favor of eccrypto

Pure math & algorithms for Elliptic Curve Cryptography in Haskell

[Skip to Readme]




Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Versions [RSS] 0.1, 0.2, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.4,,,
Dependencies base (>=3 && <5) [details]
License LicenseRef-OtherLicense
Copyright (c) Marcel Fourné, 2009
Author Marcel Fourné
Maintainer Marcel Fourné (hecc@bitrot.dyndns.org)
Category Cryptography
Uploaded by MarcelFourne at 2009-09-09T16:02:01Z
Distributions NixOS:
Reverse Dependencies 2 direct, 1 indirect [details]
Downloads 7362 total (6 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for hecc-0.1

[back to package description]

RSA just doesn't cut it anymore for fast public-key crypto. Keys are large for reasonable security making it quite slow...
Enter elliptic curves: smaller numbers are necessary and everything is faster. Maybe this library is not for embedded system usage, but now people can experiment with ECC for those use-cases where otherwise some form of RSA would be chosen.


This is the Haskell-Elliptic-Curve-Cryptography-library, or maybe more appropriately atm it is only the basic math for many ECC-algorithms the user of this library may wish to implement.
As an example the EC-variant of the Diffie-Hellman key-exchange is included which shows how the values can be computed with this library.
Also included is a basic speed-test (a point multiplication) for the NIST Curve P-256 (the author wants some usage results and performance-numbers... so...).

...is _not_ stable right now! This is only some ECC-playground. If anybody wants to use the library in its current state for serious cryptographic uses, then by all means contact the author!

The Code began as a prototyped script and has since been polished, but this is best-effort work in progress!


Some algorithms using these primitives will likely follow (also: better versions of the primitives).