652fd1d1d0c0c4eefb58eaf5ca9b4b2ee978c315
Group trait overhaul (#52)
* Decouple element from `Group` * Change `SUITE_ID` to `u16` and rework `get_context_string()` * Rework scalar de-serialization * Rename `Group` methods - `random_nonzero_scalar` -> `random_scalar` - `scalar_as_bytes` -> `serialize_scalar` - `scalar_invert` -> `invert_scalar` * Rework element de-serialization * Rename and remove `Group` methods `to_arr` -> `serialize_elem` `base_point` -> `base_elem` `is_identity` -> removed `identity` -> `identity_elem` `zero_scalar` -> hidden behind `cfg(test)` * Sort `Group` methods * Rework `expand_message_xmd` and remove utility * Improve P256 `hash_to_scalar`
voprf 
An implementation of a (verifiable) oblivious pseudorandom function (VOPRF)
A VOPRF is a verifiable oblivious pseudorandom function, a protocol between a client and a server. The regular (non-verifiable) OPRF is also supported in this implementation.
This implementation is based on the Internet Draft for VOPRF.
Documentation
The API can be found here along with an example for usage.
Installation
Add the following line to the dependencies of your Cargo.toml:
voprf = "0.3"
Minimum Supported Rust Version
Rust 1.51 or higher.
Contributors
The author of this code is Kevin Lewi (@kevinlewi). To learn more about contributing to this project, see this document.
License
This project is licensed under either Apache 2.0 or MIT, at your option.
Description
An implementation of a verifiable oblivious pseudorandom function (RFC 9497) - fork of (https://github.com/facebook/voprf)
574 KiB