-
Notifications
You must be signed in to change notification settings - Fork 41
Expand file tree
/
Copy pathCargo.toml
More file actions
106 lines (99 loc) · 3.51 KB
/
Copy pathCargo.toml
File metadata and controls
106 lines (99 loc) · 3.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
[package]
name = "bitwarden-crypto"
description = """
Internal crate for the bitwarden crate. Do not use.
"""
version.workspace = true
authors.workspace = true
edition.workspace = true
rust-version.workspace = true
readme.workspace = true
homepage.workspace = true
repository.workspace = true
license = "GPL-3.0-only OR LicenseRef-Bitwarden-SDK"
keywords.workspace = true
[features]
default = []
no-memory-hardening = [] # Disable memory hardening features
uniffi = [
"argon2/parallel",
"bitwarden-encoding/uniffi",
"dep:bitwarden-uniffi-error",
"dep:uniffi",
] # Uniffi bindings
wasm = [
"dep:tsify",
"dep:wasm-bindgen",
"dep:js-sys",
"dep:serde-wasm-bindgen",
] # WASM support
# WARNING: This feature is for debugging purposes only and should never be enabled in production.
# It disables compile-time debug prevention for cryptographic keys, exposing sensitive key material
# in debug output, and adds tracing debug logs to encrypt/decrypt operations.
dangerous-crypto-debug = []
test-utils = []
[dependencies]
aes = { version = "0.9.0", features = ["zeroize"] }
aes-gcm = { version = "0.11.0-rc.4", features = ["zeroize"] }
argon2 = { version = "=0.6.0-rc.8", features = [
"kdf",
"zeroize",
], default-features = false }
bitwarden-api-key-connector = { workspace = true }
bitwarden-encoding = { workspace = true }
bitwarden-error = { workspace = true }
bitwarden-logging = { workspace = true }
bitwarden-random = { workspace = true }
bitwarden-sensitive-value = { workspace = true }
bitwarden-uniffi-error = { workspace = true, optional = true }
cbc = { version = "0.2.0", features = ["alloc", "zeroize"] }
chacha20poly1305 = { version = "0.11.0-rc.3", features = ["zeroize"] }
ciborium = { workspace = true }
coset = { version = ">=0.4.2, <0.5" }
ed25519-dalek = { workspace = true, features = ["rand_core", "zeroize"] }
hex = { version = ">=0.4.0, <0.5" }
hkdf = "0.13.0"
hmac = { workspace = true, features = ["zeroize"] }
hybrid-array = { version = "0.4.10", features = ["alloc", "serde", "zeroize"] }
js-sys = { workspace = true, optional = true }
ml-dsa = { version = "0.1.0-rc.8", features = ["zeroize"] }
num-bigint = ">=0.4, <0.5"
num-traits = ">=0.2.15, <0.3"
pbkdf2 = { version = "0.13.0-rc.10", default-features = false }
rand = { workspace = true }
rayon = ">=1.8.1, <2.0"
rsa = { workspace = true }
schemars = { workspace = true }
serde = { workspace = true }
serde-wasm-bindgen = { workspace = true, optional = true }
serde_bytes = { workspace = true }
serde_repr.workspace = true
sha1 = { workspace = true, features = ["zeroize"] }
sha2 = { workspace = true, features = ["zeroize"] }
subtle = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["io-util"] }
tracing = { workspace = true }
tsify = { workspace = true, optional = true }
typenum = ">=1.18.0, <1.21.0"
uniffi = { workspace = true, optional = true }
uuid = { workspace = true }
wasm-bindgen = { workspace = true, optional = true }
xaes-256-gcm = { version = "=0.1.0-rc.3", default-features = false, features = ["alloc"] }
zeroize = { workspace = true, features = ["derive", "aarch64"] }
zeroizing-alloc = ">=0.1.0, <0.2"
[dev-dependencies]
criterion = "0.8.0"
rand_chacha = { workspace = true }
serde_json = { workspace = true }
tokio = { workspace = true, features = ["fs", "io-util", "macros", "rt"] }
[[bench]]
name = "default_allocator"
harness = false
required-features = ["no-memory-hardening"]
[[bench]]
name = "zeroizing_allocator"
harness = false
required-features = ["no-memory-hardening"]
[lints]
workspace = true