Cargo Features
[dependencies]
ssh-key = { version = "0.6.3", default-features = false, features = ["std", "alloc", "crypto", "dsa", "ecdsa", "ed25519", "encryption", "getrandom", "p256", "p384", "p521", "rsa", "tdes", "serde"] }
- default = ecdsa, rand_core, std
-
These default features are set whenever
ssh-key
is added without
somewhere in the dependency tree.default-features = false - std default = alloc
-
Enables std of ssh-encoding, optional p256, and optional p384, std of signature, optional rsa, and optional sec1 and std of optional p521
p521:
TODO(tarcieri): RFC6979
- alloc dsa? encryption? rsa? std
-
Enables alloc of ssh-encoding, signature, and zeroize
Affects
authorized_keys::ConfigOpts
,ssh-key::certificate
,ssh-key::known_hosts
,sk::SkEd25519
,sk::SkEcdsaSha2NistP256
… - crypto = ed25519, p256, p384, p521, rsa
-
NOTE:
dsa
is obsolete/weak - dsa = alloc
-
Enables rand_core of signature, num-bigint-dig, dsa, and sha1
- ecdsa default p256? p384? p521?
-
Enables sec1
Affects
sk::SkEcdsaSha2NistP256
,sk::SkEcdsaSha2NistP256
… - ed25519 crypto? = rand_core
-
Enables ed25519-dalek
- encryption tdes? = alloc, rand_core
-
Enables aes-cbc, aes-ctr, aes-gcm and chacha20poly1305 of ssh-cipher and bcrypt-pbkdf
bcrypt-pbkdf:
optional dependencies
- getrandom
- p256 crypto? = ecdsa
- p384 crypto? = ecdsa
- p521 crypto? = ecdsa
- rsa crypto? = alloc, rand_core
-
Enables num-bigint-dig and rsa
- tdes = encryption
-
Enables tdes of ssh-cipher
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features.