[package] name = "opaque-ke" version = "2.0.0-pre.1" repository = "https://github.com/novifinancial/opaque-ke" keywords = ["cryptography", "crypto", "opaque", "passwords", "authentication"] description = "An implementation of the OPAQUE password-authenticated key exchange protocol" authors = ["Kevin Lewi ", "François Garillot "] license = "MIT" edition = "2018" readme = "README.md" [features] default = ["u64_backend", "serialize"] slow-hash = ["argon2"] p256 = ["num-bigint", "num-integer", "num-traits", "once_cell", "p256_"] bench = [] u64_backend = ["curve25519-dalek/u64_backend"] u32_backend = ["curve25519-dalek/u32_backend"] serialize = ["serde", "base64", "generic-array/serde", "curve25519-dalek/serde"] [dependencies] argon2 = { version = "0.2", optional = true } base64 = { version = "0.13", optional = true } constant_time_eq = "0.1" curve25519-dalek = { version = "3", default-features = false, features = ["std"] } digest = "0.9" displaydoc = "0.2" generic-array = "0.14" generic-bytes = { version = "0.1" } hkdf = "0.11" hmac = "0.11" num-bigint = { version = "0.4", optional = true } num-integer = { version = "0.1", optional = true } num-traits = { version = "0.2", optional = true } once_cell = { version = "1", optional = true } p256_ = { package = "p256", version = "0.9", optional = true } rand = "0.8" serde = { version = "1", features = ["derive"], optional = true } subtle = { version = "2.3", default-features = false } thiserror = "1" zeroize = { version = "1", features = ["zeroize_derive"] } [dev-dependencies] anyhow = "1" base64 = "0.13" bincode = "1" chacha20poly1305 = "0.8" criterion = "0.3" hex = "0.4" lazy_static = "1" serde_json = "1" sha2 = "0.9" proptest = "1" rustyline = "8" [[bench]] name = "oprf" harness = false required-features = ["bench"]