Skip to content

bytemare/hash2curve

Repository files navigation

Hash To Curve

hash2curve Go Reference codecov OpenSSF Scorecard

  import "github.com/bytemare/hash2curve"

Package hash2curve implements Hashing to Elliptic Curves as specified in RFC 9380. It exposed a minimal API so you don't have to worry about the parameters.

The following table shows supported groups with hash-to-curve capability and links each one to the underlying implementations:

Curve Backend
Ristretto255 github.com/gtank/ristretto255
P-256 filippo.io/nistec
P-384 filippo.io/nistec
P-521 filippo.io/nistec
Edwards25519 filippo.io/edwards25519
Secp256k1 github.com/bytemare/secp256k1

What is hash2curve?

Hashing to Elliptic Curves allows for encoding or hashing an arbitrary string to a point on an elliptic curve (or element in a group), therefore benefiting from interesting mathematical properties very useful in cryptographic protocols, like CPace, VOPRF, and OPAQUE.

Documentation Go Reference

You can find the documentation and usage examples in the package doc.

Versioning

SemVer is used for versioning. For the versions available, see the tags on the repository.

Contributing

Please read CONTRIBUTING.md for details on the code of conduct, and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Go implementation of RFC 9380 - Hashing to Elliptic Curves

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages