Cargo Features

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 default-features = false somewhere in the dependency tree.

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


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


optional dependencies


Enables getrandom of rand_core

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.

rand_core default ed25519? encryption? rsa?
serde implicit feature

With default (std)