Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bytemare/hash2curve
Go implementation of RFC 9380 - Hashing to Elliptic Curves
https://github.com/bytemare/hash2curve
cryptography ecc elliptic-curves go golang hash hash-to-curve rfc9380 secp256k1
Last synced: 4 days ago
JSON representation
Go implementation of RFC 9380 - Hashing to Elliptic Curves
- Host: GitHub
- URL: https://github.com/bytemare/hash2curve
- Owner: bytemare
- License: mit
- Created: 2022-08-02T23:23:53.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-08T19:43:07.000Z (9 days ago)
- Last Synced: 2024-11-08T20:30:58.276Z (9 days ago)
- Topics: cryptography, ecc, elliptic-curves, go, golang, hash, hash-to-curve, rfc9380, secp256k1
- Language: Go
- Homepage:
- Size: 206 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
# Hash To Curve
[![hash2curve](https://github.com/bytemare/hash2curve/actions/workflows/code-scan.yml/badge.svg)](https://github.com/bytemare/hash2curve/actions/workflows/code-scan.yml)
[![Go Reference](https://pkg.go.dev/badge/github.com/bytemare/hash2curve.svg)](https://pkg.go.dev/github.com/bytemare/hash2curve)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/bytemare/hash2curve/badge)](https://securityscorecards.dev/viewer/?uri=github.com/bytemare/hash2curve)
[![codecov](https://codecov.io/gh/bytemare/hash2curve/branch/main/graph/badge.svg?token=5bQfB0OctA)](https://codecov.io/gh/bytemare/hash2curve)```
import "github.com/bytemare/hash2curve"
```Package hash2curve implements Hashing to Elliptic Curves as specified in [RFC 9380](https://datatracker.ietf.org/doc/rfc9380).
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/hash2curve |#### 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.#### References
## Documentation [![Go Reference](https://pkg.go.dev/badge/github.com/bytemare/hash2curve.svg)](https://pkg.go.dev/github.com/bytemare/hash2curve)
You can find the documentation and usage examples in [the package doc](https://pkg.go.dev/github.com/bytemare/hash2curve) and [the project wiki](https://github.com/bytemare/hash2curve/wiki) .
## Versioning
[SemVer](http://semver.org) is used for versioning. For the versions available, see the [tags on the repository](https://github.com/bytemare/hash2curve/tags).
## Contributing
Please read [CONTRIBUTING.md](.github/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](LICENSE) file for details.