[][src]Module rustica_keys::ssh

Functions or structs for dealing with SSH Certificates. Parsing, and creating certs happens here. This module is a heavily modified version of the sshkeys crate that adds certificate verification, and many other things to support that. The original licence for the code is in the source code provided

Structs

Certificate

A type which represents an OpenSSH certificate key. Please refer to [PROTOCOL.certkeys] for more details about OpenSSH certificates. [PROTOCOL.certkeys]: https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/PROTOCOL.certkeys?annotate=HEAD

Curve

A type which represents a cryptographic curve.

EcdsaPrivateKey

ECDSA private key.

EcdsaPublicKey

ECDSA public key. The format of ECDSA public keys is described in RFC 5656, section 3.1.

Ed25519PrivateKey

ED25519 private key.

Ed25519PublicKey

ED25519 public key. The format of ED25519 public keys is described in https://tools.ietf.org/html/draft-bjh21-ssh-ed25519-02

Error

The Error type represents the possible errors that may occur when working with OpenSSH keys.

Fingerprint

A type that represents an OpenSSH public key fingerprint.

KeyType

KeyType represents the type of an OpenSSH key.

PrivateKey

A type which represents an OpenSSH public key.

PublicKey

A type which represents an OpenSSH public key.

Reader

A Reader is used for reading from a byte sequence representing an encoded OpenSSH public key or certificate.

RsaPrivateKey

RSA private key.

RsaPublicKey

RSA public key. The format of RSA public keys is described in RFC 4253, section 6.6

Writer

A Writer is used for encoding a key in OpenSSH compatible format.

Enums

CertType

Represents the different types a certificate can be.

CriticalOptions

Type that encapsulates the normal usage of the critical options field. I used a structure instead of an Option for consistency and possible future expansion into a ForceCommand type.

CurveKind

Represents the different kinds of supported curves.

Extensions

Type that encapsulates the normal usage of the extensions field.

FingerprintKind

The FingerprintKind enum represents the different fingerprint representation.

KeyTypeKind

A type which represents the various kinds of keys.

PrivateKeyKind

A type which represents the different kinds a public key can be.

PublicKeyKind

A type which represents the different kinds a public key can be.

Type Definitions

Result

A Result type alias where the Err variant is Error