Skip to content

Very small Elliptic Curve Cryptography library

Notifications You must be signed in to change notification settings

neocturne/libuecc

Repository files navigation

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.

About

Very small Elliptic Curve Cryptography library

Resources

Stars

Watchers

Forks

Packages

No packages published