pyelligator - Python binding for libelligator
Alfonso De Gregorio (adg at secYOUre dot com)
pyelligator is a Python binding for libelligator. Based on the code authored by agl in the ed25519/extra25519, libelligator is a C++ implementation of "Elligator: Elliptic-curve points indistinguishable from uniform random strings" for Curve25519.
import elligator from os import urandom # Generate keys while True: private = urandom(32) (valid, public, representative) = elligator.scalarbasemult(private) if valid: break # Convert a uniform representative value for Curve25519 public key, # as produced by scalarbasemult, to a Curve25519 public key public = elligator.representativetopublic(representative)
make make install make test