NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #2893 most downloaded on crates.io
Pure Rust implementation of SSH key file format decoders/encoders as described in RFC4251/RFC4253 and OpenSSH key formats, as well as "sshsig" signatures and certificates (including certificate validation and certificate authority support), with further support for the `authorized_keys` and `known_hosts` file formats.
Last release 3 months ago
29 Jun 2026
Release timing varies
gaps range from 9 days to 8 months
Nearly every release is documented
notes for 17 of 17 stable releases
1 version withdrawn
withdrawn after publishing
5 years old
38 releases · first in 2021
ssh-key v0.7.0-rc.11
ssh-key v0.7.0-rc.11 (#563)
ssh-protocol: enable workspace-level lints
ssh-protocol: enable workspace-level lints (#524)
One column per quarter.
Releases the following: ssh-cipher v0.3.0-rc.8 ssh-encoding v0.3.0-rc.8 ssh-key v0.7.0-rc.9
Releases the following:
ssh-cipher v0.3.0-rc.8ssh-encoding v0.3.0-rc.8ssh-key v0.7.0-rc.9Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Parsing AuthorizedKeys with whitespace in comments ([#289])
impl decode_as for KeypairData ([#211])
Sk* constructors ([#201], [#204])
Algorithm::Other signature support ([#189])
SkEcdsaSha2NistP256 signature validation ([#169])
SshSig usage examples ([#166], [#167])
minimal-versions correctness for sec1 dependency ([#154])
minimal-versions correctness for sec1 dependency (#154)Partial support for U2F signature verification ([#44])
aes256-gcm@openssh.com encryption (#75)PrivateKey::encrypt_with_cipher (#79)ssh_key::Error through signature::Error (#82)crypto feature (#83)Hash for PublicKey and its parts (#145, #149)signature crate dependency to v2 (#58)ssh_key::Error as error type for TryFrom<&[u8]> impl on Signature (#59)bcrypt-pbkdf v0.10dsa v0.6p256 v0.13p384 v0.13sec1 v0.7&mut impl CryptoRngCore for RNGs (#67)certificate::Builder::new fallible (#71)MPInt => Mpint (#76)AlgorithmUnknown and AlgorithmUnsupported (#81)rsa dependency to v0.9 (#107)ssh-cipher crate (#125)ed25519-dalek dependency to v2 (#146)ssh-encoding dependency to v0.2 (#147)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[#41]: https://github.com/RustCrypto/SSH/pull/41
Use ssh-encoding encoding crate ([#29], [#37])
Nothing published for this version
Nothing published for this version
Move source code repository to ([#1])
Support for parsing keys out of the ssh known_hosts file format
RsaPrivateKeyFrom conversions between algorithmic-specific key types and PublicKey/PrivateKeyBump pem-rfc7468 dependency to v0.6.0
UnixTime helper typepem-rfc7468 dependency to v0.6.0Ed25519 keygen/sign/verify support using ed25519-dalek
ed25519-daleksk-*) certificate and key supportcertificate::Builder (i.e. SSH CA support)p256 cratersa crateserde supportKdfAlg and KdfOpts into KdfCipherAlg => CipherPrivateKey::kdf_algPrivateKey::public_key and From conversions
FromStr impls for key typesPublicKey encoderAuthorizedKeys parserPrivateKey::public_key and From conversionsPrivateKey encoderPrivateKey and PublicKeypem-rfc7468 for private key PEM parserPublicKey/PrivateKey fields privateMPInt validates the correct number of leading zeroes are used
MPInt::as_positive_bytesMPInt validates the correct number of leading zeroes are used- Initial release
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →