-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cargo.toml
71 lines (67 loc) · 4.07 KB
/
Cargo.toml
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
[package]
name = "dcaf"
description = "An implementation of the ACE-OAuth framework"
version = "0.4.0"
edition = "2021"
authors = ["Falko Galperin <[email protected]>"]
rust-version = "1.62"
license = "MIT OR Apache-2.0"
keywords = ["no_std", "framework", "oauth", "ace"]
categories = ["authentication", "data-structures", "embedded", "encoding", "no-std"]
repository = "https://github.com/namib-project/dcaf-rs"
exclude = [
".gitlab/*", ".gitlab-ci.yml", ".github/*"
]
[features]
default = ["std", "openssl"]
std = ["serde/std", "ciborium/std", "serde_bytes/std", "erased-serde/std", "derive_builder/std"]
rustcrypto = ["rustcrypto-aes-gcm", "rustcrypto-aes-kw", "rustcrypto-ecdsa", "rustcrypto-hmac"]
rustcrypto-encrypt = ["rustcrypto-aes-gcm", "rustcrypto-aes-ccm", "rustcrypto-chacha20-poly1305"]
rustcrypto-sign = ["rustcrypto-ecdsa"]
rustcrypto-key-distribution = ["rustcrypto-aes-kw"]
rustcrypto-mac = ["rustcrypto-hmac"]
rustcrypto-aes-gcm = ["dep:aes-gcm", "dep:typenum", "dep:aead", "dep:aes"]
rustcrypto-aes-ccm = ["dep:ccm", "dep:typenum", "dep:aead", "dep:aes"]
rustcrypto-chacha20-poly1305 = ["dep:chacha20poly1305", "dep:typenum", "dep:aead"]
rustcrypto-aes-kw = ["dep:aes-kw", "dep:aes", "dep:typenum", "dep:crypto-common"]
rustcrypto-ecdsa = ["dep:ecdsa", "dep:p256", "dep:p384", "dep:digest", "dep:sha2", "dep:elliptic-curve"]
rustcrypto-hmac = ["dep:hmac", "dep:digest", "dep:sha2"]
[dependencies]
serde = { version = "1.0", default-features = false, features = ["derive"] }
ciborium = { version = "^0.2", default-features = false }
ciborium-io = { version = "^0.2", default-features = false }
coset = { version = "^0.3", default-features = false, git = "https://github.com/namib-project/coset.git", branch = "fix_zero_length_map" }#, path = "../coset" }
serde_bytes = { version = "^0.11", default-features = false, features = ["alloc"] }
erased-serde = { version = "0.4.5", default-features = false, features = ["alloc"] }
derive_builder = { version = "0.20", default-features = false, features = ["alloc"] }
strum = { version = "0.26", default-features = false, features = ["derive"] }
strum_macros = { version = "0.26", default-features = false }
enumflags2 = { version = "^0.7", default-features = false }
rand = { version = "^0.8", default-features = false }
openssl = { version = "^0.10", optional = true }
lazy_static = "1.4.0"
aes-gcm = { version = "0.10.3", optional = true, default-features = false, features = ["alloc", "aes"] }
ccm = { version = "0.5.0", optional = true, default-features = false, features = ["alloc"] }
chacha20poly1305 = { version = "0.10.1", optional = true, default-features = false, features = ["alloc"] }
typenum = { version = "1.17.0", optional = true, default-features = false, features = ["const-generics"] }
crypto-common = { version = "0.1.6", optional = true, default-features = false }
aead = { version = "0.5.2", optional = true, default-features = false }
aes-kw = { version = "0.2.1", optional = true, default-features = false, features = ["alloc"] }
aes = { version = "0.8.4", optional = true, default-features = false }
hmac = { version = "0.12.1", optional = true, default-features = false }
digest = { version = "0.10.7", optional = true, default-features = false }
sha2 = { version = "0.10.8", optional = true, default-features = false }
elliptic-curve = { version = "0.13.8", default-features = false, optional = true }
ecdsa = { version = "0.16.9", optional = true, default-features = false, features = ["sha2"] }
p256 = { version = "0.13.2", optional = true, default-features = false, features = ["alloc", "ecdsa", "arithmetic"] }
p384 = { version = "0.13.0", optional = true, default-features = false, features = ["alloc", "ecdsa", "arithmetic"] }
# P-521 must implement DigestPrimitive in order to be usable in ECDSA, which was only recently added and is not released yet.
# p521 = { version = "0.14.0-pre.1", optional = true }
[dev-dependencies]
hex = { version = "^0.4", features = ["serde"] }
base64 = "0.22.1"
rstest = "0.22.0"
serde_json = "1.0.118"
rand = { version = "^0.8", default-features = false, features = ["std_rng", "std"] }
[build-dependencies]
cfg_aliases = "0.2.1"