-
Notifications
You must be signed in to change notification settings - Fork 68
/
Cargo.toml
78 lines (69 loc) · 2.97 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
72
73
74
75
76
77
78
[package]
name = "parsec-service"
version = "1.4.1"
authors = ["Parsec Project Contributors"]
description = "A language-agnostic API to secure services in a platform-agnostic way"
license = "Apache-2.0"
repository = "https://github.com/parallaxsecond/parsec"
readme = "README.md"
keywords = ["security", "service"]
categories = ["cryptography", "hardware-support"]
edition = "2018"
rust-version = "1.67.0"
[[bin]]
name = "parsec"
path = "src/bin/main.rs"
[dependencies]
parsec-interface = "0.29.1"
rand = { version = "0.8.3", features = ["small_rng"], optional = true }
base64 = "0.21.0"
threadpool = "1.8.1"
signal-hook = "0.3.4"
sd-notify = "0.4.1"
toml = "0.8.0"
serde = { version = "1.0.123", features = ["derive"] }
env_logger = "0.10.0"
log = { version = "0.4.14", features = ["serde"] }
cryptoki = { version = "0.6.0", optional = true, default-features = false }
picky-asn1-der = { version = "0.4.0", optional = true }
picky-asn1 = { version = "0.8.0", optional = true }
tss-esapi = { version = "7.5.0", optional = true }
bincode = "1.3.1"
# TODO: Fixed until the MSRV is bumped!
clap = { version = "=4.3.24", features = ["derive", "std"] }
derivative = "2.2.0"
hex = { version = "0.4.2", optional = true }
psa-crypto = { version = "0.12.0", default-features = false, features = ["operations","std"], optional = true }
zeroize = { version = "1.2.0", features = ["zeroize_derive"] }
picky-asn1-x509 = { version = "0.12.0", optional = true }
libc = "0.2.86"
anyhow = "1.0.38"
rust-cryptoauthlib = { version = "0.4.5", optional = true }
spiffe = { version = "0.2.1", optional = true }
prost = { version = "0.9.0", optional = true }
rusqlite = { version = "0.29.0", features = ["bundled"] }
num-traits = "0.2.14"
[dev-dependencies]
rand = { version = "0.8.3", features = ["small_rng"] }
rust-cryptoauthlib = { version = "0.4.4", features=["software-backend"]}
[build-dependencies]
bindgen = { version = "0.66.1", optional = true }
prost-build = { version = "0.9.0", optional = true }
[package.metadata.docs.rs]
features = ["pkcs11-provider", "tpm-provider", "mbed-crypto-provider", "cryptoauthlib-provider", "direct-authenticator"]
# The features should not be modified in a breaking way.
# See https://github.com/parallaxsecond/parsec/issues/408 for details.
[features]
default = ["unix-peer-credentials-authenticator"]
# Providers
mbed-crypto-provider = ["psa-crypto"]
pkcs11-provider = ["cryptoki", "picky-asn1-der", "picky-asn1", "picky-asn1-x509", "psa-crypto", "rand", "hex"]
tpm-provider = ["tss-esapi", "picky-asn1-der", "picky-asn1", "picky-asn1-x509", "hex"]
cryptoauthlib-provider = ["rust-cryptoauthlib"]
trusted-service-provider = ["psa-crypto", "bindgen", "prost-build", "prost"]
all-providers = ["tpm-provider", "pkcs11-provider", "mbed-crypto-provider", "trusted-service-provider"]
# Authenticators
direct-authenticator = []
unix-peer-credentials-authenticator = []
jwt-svid-authenticator = ["spiffe"]
all-authenticators = ["direct-authenticator", "unix-peer-credentials-authenticator", "jwt-svid-authenticator"]