https://github.com/bytemare/secp256k1
Go implementation of Secp256k1 based on Fiat-Crypto, with RFC9380 hash-to-curve.
https://github.com/bytemare/secp256k1
cryptography golang hash-to-curve prime-order-group secp256k1
Last synced: 2 months ago
JSON representation
Go implementation of Secp256k1 based on Fiat-Crypto, with RFC9380 hash-to-curve.
- Host: GitHub
- URL: https://github.com/bytemare/secp256k1
- Owner: bytemare
- License: mit
- Created: 2023-04-18T23:21:16.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2026-04-07T00:14:03.000Z (3 months ago)
- Last Synced: 2026-04-07T00:28:14.491Z (3 months ago)
- Topics: cryptography, golang, hash-to-curve, prime-order-group, secp256k1
- Language: Go
- Homepage:
- Size: 219 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
README
# secp256k1
[](https://github.com/bytemare/secp256k1/actions/workflows/wf-analysis.yaml)
[](https://pkg.go.dev/github.com/bytemare/secp256k1)
[](https://codecov.io/gh/bytemare/secp256k1)
```go
import "github.com/bytemare/secp256k1"
```
This package implements the secp256k1 prime-order elliptic curve group with
- [RFC9380](https://datatracker.ietf.org/doc/rfc9380/) hash-to-curve capabilities
- [complete addition formulas](https://eprint.iacr.org/2015/1060.pdf)
- formally verified scalar and field arithmetics provided by [Fiat-Crypto](https://github.com/mit-plv/fiat-crypto)
- square root in the field and inversions generated by [addchain](https://github.com/mmcloughlin/addchain)
- great effort for constant-time operations where possible
- no external dependencies outside the standard go library
## Documentation [](https://pkg.go.dev/github.com/bytemare/secp256k1)
You can find the documentation and usage examples in [the package doc](https://pkg.go.dev/github.com/bytemare/secp256k1).
## Versioning
[SemVer](http://semver.org) is used for versioning. For the versions available, see the [tags on the repository](https://github.com/bytemare/secp256k1/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.