* Rely on elliptic-curve for hash-to-curve and P-256 implementations * Update MSRV * Remove unnecessary `#[macro_use]` * Re-introduce `CipherSuite` * Provide types for length shortcuts * Remove `SUITE_ID` from `Group` * Blanket implementation for RustCrypto `Curve`s * Remove the p256 crate feature * Rename `ristretto_*` crate features to `ristretto-*` for consistency * Remove unnecessary allowed Clippy lints * Remove some unnecessary constraints
36 lines
1.0 KiB
Markdown
36 lines
1.0 KiB
Markdown
# 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](https://github.com/cfrg/draft-irtf-cfrg-voprf).
|
|
|
|
Documentation
|
|
-------------
|
|
|
|
The API can be found [here](https://docs.rs/voprf/) 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.57** or higher.
|
|
|
|
Contributors
|
|
------------
|
|
|
|
The author of this code is Kevin Lewi ([@kevinlewi](https://github.com/kevinlewi)).
|
|
To learn more about contributing to this project, [see this document](./CONTRIBUTING.md).
|
|
|
|
License
|
|
-------
|
|
|
|
This project is [licensed](./LICENSE) under either Apache 2.0 or MIT, at your option.
|