Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/skaunov/hash_to_curve

Noir lib for hashing to bigger curves
https://github.com/skaunov/hash_to_curve

curve field hashing-library noir zero-knowledge zk-snarks

Last synced: about 1 month ago
JSON representation

Noir lib for hashing to bigger curves

Awesome Lists containing this project

README

        

This Noir `lib` is for hashing to a curve bigger than your backend field (currently default seems to be Grumkin). If you want to hash to a smaller curve it would be more reasonable to leverage `std` library facilities.

Exposes standard interface, consisting of: **`hash_to_curve`, `map_to_curve`, and `hash_to_field`**.

Currently limited to `secp256k1_XMD:SHA-256_SSWU_RO_` with _DST shorter than 256_. \
Other suites and features will be added upon demand.

If [the hasher] in your app is used for other purposes or shared -- pay attention to [Domain Separation Variants](https://www.rfc-editor.org/rfc/rfc9380.html#name-domain-separation-for-expan).
[the hasher]: w.r.t. current limitations it's

# how to `use`
In your <./Nargo.toml> file, add it to the `dependencies` section.
```toml
[dependencies]
hash_to_curve = { tag = "v0.1.1", git = "https://github.com/skaunov/hash_to_curve" }
```