breakingbread 903cfd4af3
Rust CI / cargo fmt (pull_request) Successful in 2s
Rust CI / cargo clippy (pull_request) Successful in 29s
Rust CI / test (1.87.0 / no backend / no frontend) (pull_request) Successful in 1m24s
Rust CI / test (stable / no backend / no frontend) (pull_request) Successful in 1m17s
Rust CI / test (1.87.0 / no backend / --features danger) (pull_request) Successful in 1m23s
Rust CI / test (stable / no backend / --features danger) (pull_request) Successful in 1m19s
Rust CI / test (1.87.0 / no backend / --features serde) (pull_request) Successful in 1m28s
Rust CI / test (stable / no backend / --features serde) (pull_request) Successful in 1m22s
Rust CI / test (1.87.0 / --features ristretto255-ciphersuite / no frontend) (pull_request) Successful in 1m34s
Rust CI / test (stable / --features ristretto255-ciphersuite / no frontend) (pull_request) Successful in 1m30s
Rust CI / test (1.87.0 / --features ristretto255-ciphersuite / --features danger) (pull_request) Successful in 1m34s
Rust CI / test (stable / --features ristretto255-ciphersuite / --features danger) (pull_request) Successful in 1m28s
Rust CI / test (1.87.0 / --features ristretto255-ciphersuite / --features serde) (pull_request) Successful in 1m38s
Rust CI / test (stable / --features ristretto255-ciphersuite / --features serde) (pull_request) Successful in 1m29s
Rust CI / cargo audit (pull_request) Successful in 5s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (pull_request) Successful in 11s
Rust CI / no-std (thumbv6m-none-eabi / --features ristretto255-ciphersuite) (pull_request) Successful in 15s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (pull_request) Successful in 13s
Rust CI / no-std (wasm32-unknown-unknown / --features ristretto255-ciphersuite) (pull_request) Successful in 15s
chore: bump to v1.0.0-rc.1, reject trailing bytes, reject identity elemnts, more tests
2026-07-02 23:34:08 +02:00
2023-06-27 15:10:37 -07:00
2021-09-09 01:56:54 -07:00
2021-09-27 18:53:06 -07:00
2021-09-09 01:56:54 -07:00
2022-04-01 16:08:18 -07:00

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 RFC 9497.

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 = { package = "voprf-vx", version = "1.0.0-rc.1" }

Minimum Supported Rust Version

Rust 1.87 or higher.

Contributors

This is a fork of facebook/voprf maintained by VexaHub.

The original author is Kevin Lewi (@kevinlewi). To learn more about contributing to this project, see this document.

License

This project is dual-licensed under either the MIT license or the Apache License, Version 2.0. You may select, at your option, one of the above-listed licenses.

S
Description
An implementation of a verifiable oblivious pseudorandom function (RFC 9497) - fork of (https://github.com/facebook/voprf)
Readme
567 KiB
v1.0.0
Latest
2026-07-08 23:45:14 +02:00
Languages
Rust 100%