diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2015-10-23 18:52:10 +0200 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2015-10-23 19:00:41 +0200 |
commit | fd6b95b7750600088699397ae5103586c63146a3 (patch) | |
tree | 4fcdc18a0d80620f2a36cd34dadbc62a69e81a39 | |
parent | 5f2814e261ed76663979c0831fb89f7975911d34 (diff) | |
download | libuecc-fd6b95b7750600088699397ae5103586c63146a3.tar libuecc-fd6b95b7750600088699397ae5103586c63146a3.zip |
Add README and CHANGELOG
-rw-r--r-- | CHANGELOG | 15 | ||||
-rw-r--r-- | README | 30 |
2 files changed, 45 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG new file mode 100644 index 0000000..2ab4d4c --- /dev/null +++ b/CHANGELOG @@ -0,0 +1,15 @@ +libuecc v6 (in development) + +* Fixes a bug which might have caused a point's y coordinate to be negated + in certain circumstances when the point was stored in packed + representation and loaded again. It is extremely improbable that this + has ever actually happened, as only a small range of coordinates was + affected. +* Use stdint types to clarify ABI and add support for systems with + sizeof(int) < 4 (this is not an ABI break in practise as all systems on + which libuecc has been used in the past should have int == int32_t) +* Add point negation and subtraction functions +* Rename all point access functions to bear a _legacy suffix (the old names + are still available, but marked as deprecated) +* Add new point access functions and a new generator point that are + compatible with Ed25519 @@ -0,0 +1,30 @@ +libuecc is a very small generic-purpose Elliptic Curve Cryptography library +compatible with Ed25519. + +Most documentation can be found as Doxygen comments in the ecc.h header +file. You can use `make doxygen` after running CMake to create HTML +documenation from it. + +There are two sets of functions converting between libuecc's internal point +representation and coordinates or compressed representation. The functions +ending with _ed25519 use the same representation as original Ed25519 +implementation and should be used by new software. The functions with the +suffix _legacy are provided for compatiblity with libuecc version before +v6. + +Ed25519 and the legacy representation are isomorphic, they use a Twisted +Edwards Curve + + ax^2 + y^2 = 1 + dx^2y^2 + +over the prime field for p = 2^255 - 19. + +Ed25519 uses the parameters + + a = -1 and + d = -(121665/121666), + +while the legacy curve has + + a = 486664 + d = 486660. |