* 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`
67 lines
2.1 KiB
TOML
67 lines
2.1 KiB
TOML
[package]
|
|
authors = ["Kevin Lewi <[email protected]>"]
|
|
categories = ["no-std", "algorithms", "cryptography"]
|
|
description = "An implementation of a verifiable oblivious pseudorandom function (VOPRF)"
|
|
edition = "2018"
|
|
keywords = ["oprf"]
|
|
license = "MIT"
|
|
name = "voprf"
|
|
readme = "README.md"
|
|
repository = "https://github.com/novifinancial/voprf/"
|
|
resolver = "2"
|
|
rust-version = "1.51"
|
|
version = "0.3.0"
|
|
|
|
[features]
|
|
alloc = []
|
|
danger = []
|
|
default = ["ristretto255_u64", "serde"]
|
|
p256 = [
|
|
"alloc",
|
|
"num-bigint",
|
|
"num-integer",
|
|
"num-traits",
|
|
"once_cell",
|
|
"p256_",
|
|
]
|
|
ristretto255 = ["generic-array/more_lengths"]
|
|
ristretto255_fiat_u32 = ["curve25519-dalek/fiat_u32_backend", "ristretto255"]
|
|
ristretto255_fiat_u64 = ["curve25519-dalek/fiat_u64_backend", "ristretto255"]
|
|
ristretto255_simd = ["curve25519-dalek/simd_backend", "ristretto255"]
|
|
ristretto255_u32 = ["curve25519-dalek/u32_backend", "ristretto255"]
|
|
ristretto255_u64 = ["curve25519-dalek/u64_backend", "ristretto255"]
|
|
std = ["alloc"]
|
|
|
|
[dependencies]
|
|
curve25519-dalek = { version = "3", default-features = false, optional = true }
|
|
derive-where = { version = "1.0.0-rc.1", features = ["zeroize"] }
|
|
digest = "0.10"
|
|
displaydoc = { version = "0.2", default-features = false }
|
|
generic-array = "0.14"
|
|
num-bigint = { version = "0.4", default-features = false, optional = true }
|
|
num-integer = { version = "0.1", default-features = false, optional = true }
|
|
num-traits = { version = "0.2", default-features = false, optional = true }
|
|
once_cell = { version = "1", default-features = false, optional = true }
|
|
p256_ = { package = "p256", version = "0.10", default-features = false, features = [
|
|
"arithmetic",
|
|
], optional = true }
|
|
rand_core = { version = "0.6", default-features = false }
|
|
serde = { version = "1", default-features = false, features = [
|
|
"derive",
|
|
], optional = true }
|
|
subtle = { version = "2.3", default-features = false }
|
|
zeroize = { version = "1", default-features = false }
|
|
|
|
[dev-dependencies]
|
|
generic-array = { version = "0.14", features = ["more_lengths"] }
|
|
hex = "0.4"
|
|
json = "0.12"
|
|
proptest = "1"
|
|
rand = "0.8"
|
|
regex = "1"
|
|
sha2 = "0.10"
|
|
|
|
[package.metadata.docs.rs]
|
|
features = ["danger", "p256", "std"]
|
|
targets = []
|