mirror of
https://github.com/rosenpass/rosenpass.git
synced 2025-12-05 20:40:02 -08:00
This commit introduces two kinds of benchmarks: 1. Cryptographic Primitives. Measures the performance of all available implementations of cryptographic algorithms using traditional benchmarking. Uses criterion. 2. Protocol Runs. Measures the time each step in the protocol takes. Measured using a tracing-based approach. The benchmarks are run on CI and an interactive visual overview is written to the gh-pages branch. If a benchmark takes more than twice the time than the reference commit (for PR: the main branch), the action fails.
102 lines
3.1 KiB
TOML
102 lines
3.1 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
|
|
members = [
|
|
"rosenpass",
|
|
"cipher-traits",
|
|
"ciphers",
|
|
"util",
|
|
"constant-time",
|
|
"oqs",
|
|
"to",
|
|
"fuzz",
|
|
"secret-memory",
|
|
"rp",
|
|
"wireguard-broker",
|
|
]
|
|
|
|
default-members = ["rosenpass", "rp", "wireguard-broker"]
|
|
|
|
[workspace.metadata.release]
|
|
# ensure that adding `--package` as argument to `cargo release` still creates version tags in the form of `vx.y.z`
|
|
tag-prefix = ""
|
|
|
|
[workspace.dependencies]
|
|
rosenpass = { path = "rosenpass" }
|
|
rosenpass-util = { path = "util" }
|
|
rosenpass-constant-time = { path = "constant-time" }
|
|
rosenpass-cipher-traits = { path = "cipher-traits" }
|
|
rosenpass-ciphers = { path = "ciphers" }
|
|
rosenpass-to = { path = "to" }
|
|
rosenpass-secret-memory = { path = "secret-memory" }
|
|
rosenpass-oqs = { path = "oqs" }
|
|
rosenpass-wireguard-broker = { path = "wireguard-broker" }
|
|
doc-comment = "0.3.3"
|
|
base64ct = { version = "1.6.0", default-features = false }
|
|
zeroize = "1.8.1"
|
|
memoffset = "0.9.1"
|
|
thiserror = "1.0.69"
|
|
paste = "1.0.15"
|
|
env_logger = "0.10.2"
|
|
toml = "0.7.8"
|
|
static_assertions = "1.1.0"
|
|
allocator-api2 = "0.2.14"
|
|
memsec = { git = "https://github.com/rosenpass/memsec.git", rev = "aceb9baee8aec6844125bd6612f92e9a281373df", features = [
|
|
"alloc_ext",
|
|
] }
|
|
rand = "0.8.5"
|
|
typenum = "1.17.0"
|
|
log = { version = "0.4.22" }
|
|
clap = { version = "4.5.23", features = ["derive"] }
|
|
clap_mangen = "0.2.24"
|
|
clap_complete = "4.5.40"
|
|
serde = { version = "1.0.217", features = ["derive"] }
|
|
arbitrary = { version = "1.4.1", features = ["derive"] }
|
|
anyhow = { version = "1.0.95", features = ["backtrace", "std"] }
|
|
mio = { version = "1.0.3", features = ["net", "os-poll"] }
|
|
oqs-sys = { version = "0.9.1", default-features = false, features = [
|
|
'classic_mceliece',
|
|
'kyber',
|
|
] }
|
|
blake2 = "0.10.6"
|
|
sha3 = "0.10.8"
|
|
chacha20poly1305 = { version = "0.10.1", default-features = false, features = [
|
|
"std",
|
|
"heapless",
|
|
] }
|
|
zerocopy = { version = "0.7.35", features = ["derive"] }
|
|
home = "=0.5.9" # 5.11 requires rustc 1.81
|
|
derive_builder = "0.20.1"
|
|
tokio = { version = "1.42", features = ["macros", "rt-multi-thread"] }
|
|
postcard = { version = "1.1.1", features = ["alloc"] }
|
|
libcrux = { version = "0.0.2-pre.2" }
|
|
libcrux-chacha20poly1305 = { version = "0.0.2-beta.3" }
|
|
libcrux-ml-kem = { version = "0.0.2-beta.3" }
|
|
libcrux-blake2 = { git = "https://github.com/cryspen/libcrux.git", rev = "10ce653e9476" }
|
|
libcrux-test-utils = { git = "https://github.com/cryspen/libcrux.git", rev = "0ab6d2dd9c1f" }
|
|
hex-literal = { version = "0.4.1" }
|
|
hex = { version = "0.4.3" }
|
|
heck = { version = "0.5.0" }
|
|
libc = { version = "0.2" }
|
|
uds = { git = "https://github.com/rosenpass/uds" }
|
|
signal-hook = "0.3.17"
|
|
lazy_static = "1.5"
|
|
|
|
#Dev dependencies
|
|
serial_test = "3.2.0"
|
|
tempfile = "3"
|
|
stacker = "0.1.17"
|
|
libfuzzer-sys = "0.4"
|
|
test_bin = "0.4.0"
|
|
criterion = "0.5.1"
|
|
allocator-api2-tests = "0.2.15"
|
|
procspawn = { version = "1.0.1", features = ["test-support"] }
|
|
|
|
#Broker dependencies (might need cleanup or changes)
|
|
wireguard-uapi = { version = "3.0.0", features = ["xplatform"] }
|
|
command-fds = "0.2.3"
|
|
rustix = { version = "0.38.42", features = ["net", "fs", "process"] }
|
|
futures = "0.3"
|
|
futures-util = "0.3"
|
|
x25519-dalek = "2"
|