-
Notifications
You must be signed in to change notification settings - Fork 107
/
Copy pathCargo.toml
139 lines (115 loc) · 3.52 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
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
[package]
name = "age"
description = "[BETA] A simple, secure, and modern encryption library."
version = "0.11.1"
authors.workspace = true
repository.workspace = true
readme = "README.md"
keywords = ["rage", "encryption"]
categories = ["cryptography"]
license.workspace = true
edition.workspace = true
rust-version.workspace = true
[badges]
maintenance = { status = "experimental" }
[dependencies]
age-core.workspace = true
# Dependencies exposed in a public API:
# (Breaking upgrades to these require a breaking upgrade to this crate.)
base64.workspace = true
chacha20poly1305.workspace = true
hmac.workspace = true
i18n-embed.workspace = true
rand.workspace = true
# OpenSSH-specific dependencies:
# - RSAES-OAEP from RFC 8017 with SHA-256 and MGF1
rsa = { version = "0.9", default-features = false, optional = true }
# - Conversion of public keys from Ed25519 to X25519
curve25519-dalek = { version = "4", optional = true }
# Async I/O
futures = { version = "0.3", optional = true }
pin-project = "1"
# Common CLI dependencies
pinentry = { workspace = true, optional = true }
# Dependencies used internally:
# (Breaking upgrades to these are usually backwards-compatible, but check MSRVs.)
bech32.workspace = true
cookie-factory.workspace = true
i18n-embed-fl.workspace = true
lazy_static.workspace = true
nom.workspace = true
rust-embed.workspace = true
scrypt.workspace = true
sha2.workspace = true
subtle.workspace = true
x25519-dalek.workspace = true
zeroize.workspace = true
# OpenSSH-specific dependencies:
# - RSAES-OAEP from RFC 8017 with SHA-256 and MGF1
num-traits = { version = "0.2", optional = true }
# - Encrypted keys
aes = { version = "0.8", optional = true }
aes-gcm = { version = "0.10", optional = true }
bcrypt-pbkdf = { version = "0.10", optional = true }
cbc = { version = "0.1", optional = true }
cipher = { version = "0.4.3", features = ["alloc"], optional = true }
ctr = { version = "0.9", optional = true }
# scrypt Performance timer
web-sys = { version = "0.3", optional = true, features = ["Window", "Performance"]}
# Async I/O
memchr = { version = "2.5", optional = true }
# Common CLI dependencies
console = { version = "0.15", optional = true, default-features = false }
is-terminal = { version = "0.4", optional = true }
rpassword = { version = "7", optional = true }
[target.'cfg(any(unix, windows))'.dependencies]
# Plugin management
which = { version = "4", optional = true }
wsl = { version = "0.1", optional = true }
[dev-dependencies]
criterion = "0.5"
futures-test = "0.3"
hex = "0.4"
i18n-embed = { workspace = true, features = ["desktop-requester"] }
proptest = "1"
test-case = "3"
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
[target.'cfg(unix)'.dev-dependencies]
pprof = { version = "0.13", features = ["criterion", "flamegraph"] }
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64"))'.dev-dependencies]
criterion-cycles-per-byte = "0.6"
[features]
default = []
armor = []
async = ["futures", "memchr"]
cli-common = ["console", "is-terminal", "pinentry", "rpassword"]
plugin = ["age-core/plugin", "which", "wsl"]
ssh = [
"aes",
"aes-gcm",
"bcrypt-pbkdf",
"cbc",
"cipher",
"ctr",
"curve25519-dalek",
"num-traits",
"rsa",
]
unstable = ["age-core/unstable"]
[lib]
bench = false
[[test]]
name = "test_vectors"
required-features = ["ssh"]
[[test]]
name = "testkit"
required-features = ["armor", "async"]
[[bench]]
name = "parser"
harness = false
[[bench]]
name = "throughput"
harness = false
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]