Elliptic Curve Cryptography in Go

This repository contains the implementation of several Elliptic Curve Cryptography Algorithms. The algorithms rely on Go-Ristretto to manage points and scalars in Elliptic Curve (Edwards25519). I put each algorithm in a separate sub-module, so it can be used independently with other ones. Supported algorithms include: ElGamal, Pedersen Commitment Scheme, ECIES

I initially implement these algorithms to learn elliptic curve cryptography and use them in my academic papers. Since there are many attacks in Elliptic Curve Cryptography Implementation that are not tested, this module should not be used in the industry.