Rework SecretKey API to facilitate async (#371)

* Rework `SecretKey` API to facilitate async

* Remove left-over constraints
This commit is contained in:
daxpedda
2025-04-22 00:08:17 -07:00
committed by GitHub
parent 6b69e93dc9
commit d324584d79
20 changed files with 952 additions and 382 deletions
+12 -2
View File
@@ -17,7 +17,7 @@ curve25519 = ["dep:curve25519-dalek"]
default = ["ristretto255-voprf", "serde"]
ristretto255 = ["dep:curve25519-dalek", "voprf/ristretto255"]
ristretto255-voprf = ["ristretto255", "voprf/ristretto255-ciphersuite"]
serde = ["dep:serde", "generic-array/serde", "voprf/serde"]
serde = ["dep:serde", "generic-array/serde", "voprf/serde", "zeroize/serde"]
std = ["dep:getrandom"]
[dependencies]
@@ -27,7 +27,7 @@ argon2 = { version = "0.5", default-features = false, features = [
curve25519-dalek = { version = "4", default-features = false, features = [
"zeroize",
], optional = true }
derive-where = { version = "1", features = ["zeroize-on-drop"] }
derive-where = { version = "1.3", features = ["zeroize-on-drop"] }
digest = "0.10"
displaydoc = { version = "0.2", default-features = false }
elliptic-curve = { version = "0.13", features = ["hash2curve", "sec1"] }
@@ -46,25 +46,32 @@ zeroize = { version = "1.8", features = ["zeroize_derive"] }
getrandom = { version = "0.2", features = ["js"], optional = true }
[dev-dependencies]
anyhow = "1"
bincode = "1"
chacha20poly1305 = "0.10"
criterion = "0.5"
cryptoki = "0.9"
elliptic-curve = { version = "0.13", features = ["alloc", "pkcs8"] }
hex = "0.4"
p256 = { version = "0.13", default-features = false, features = [
"hash2curve",
"pkcs8",
"voprf",
] }
p384 = { version = "0.13", default-features = false, features = [
"hash2curve",
"pkcs8",
"voprf",
] }
p521 = { version = "0.13.3", default-features = false, features = [
"hash2curve",
"pkcs8",
"voprf",
] }
proptest = "1"
rand = "0.8"
regex = "1"
thiserror = "2"
# MSRV
rustyline = "15"
scrypt = "0.11"
@@ -82,3 +89,6 @@ targets = []
[[example]]
name = "simple_login"
required-features = ["argon2"]
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_hsm)'] }