#[non_exhaustive]
pub enum KeypairData {
    Dsa(DsaKeypair),
    Ecdsa(EcdsaKeypair),
    Ed25519(Ed25519Keypair),
    Encrypted(Vec<u8>),
    Rsa(RsaKeypair),
    SkEcdsaSha2NistP256(SkEcdsaSha2NistP256),
    SkEd25519(SkEd25519),
}
Expand description

Private key data: digital signature key pairs.

SSH private keys contain pairs of public and private keys for various supported digital signature algorithms.

Variants (Non-exhaustive)

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.

Dsa(DsaKeypair)

Available on crate feature alloc only.

Digital Signature Algorithm (DSA) keypair.

Ecdsa(EcdsaKeypair)

Available on crate feature ecdsa only.

ECDSA keypair.

Ed25519(Ed25519Keypair)

Ed25519 keypair.

Encrypted(Vec<u8>)

Available on crate feature alloc only.

Encrypted private key (ciphertext).

Rsa(RsaKeypair)

Available on crate feature alloc only.

RSA keypair.

SkEcdsaSha2NistP256(SkEcdsaSha2NistP256)

Available on crate features alloc and ecdsa only.

Security Key (FIDO/U2F) using ECDSA/NIST P-256 as specified in PROTOCOL.u2f.

SkEd25519(SkEd25519)

Available on crate feature alloc only.

Security Key (FIDO/U2F) using Ed25519 as specified in PROTOCOL.u2f.

Implementations

Get the Algorithm for this private key.

Available on crate feature alloc only.

Get DSA keypair if this key is the correct type.

Available on crate feature ecdsa only.

Get ECDSA private key if this key is the correct type.

Get Ed25519 private key if this key is the correct type.

Available on crate feature alloc only.

Get the encrypted ciphertext if this key is encrypted.

Available on crate feature alloc only.

Get RSA keypair if this key is the correct type.

Available on crate features alloc and ecdsa only.

Get FIDO/U2F ECDSA/NIST P-256 private key if this key is the correct type.

Available on crate feature alloc only.

Get FIDO/U2F Ed25519 private key if this key is the correct type.

Available on crate feature alloc only.

Is this key a DSA key?

Available on crate feature ecdsa only.

Is this key an ECDSA key?

Is this key an Ed25519 key?

Is this key encrypted?

Available on crate feature alloc only.

Is this key an RSA key?

Available on crate features alloc and ecdsa only.

Is this key a FIDO/U2F ECDSA/NIST P-256 key?

Available on crate feature alloc only.

Is this key a FIDO/U2F Ed25519 key?

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Determine if two items are equal. Read more
Formats the value using the given formatter. Read more
Type returned in the event of a decoding error.
Attempt to decode a value of this type using the provided Reader.
Type returned in the event of an encoding error.
Get the length of this type encoded in bytes, prior to Base64 encoding.
Encode this value using the provided Writer.
Return the length of this type after encoding when prepended with a uint32 length prefix. Read more
Encode this value, first prepending a uint32 length prefix set to Encode::encoded_len. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
Attempt to sign the given message, returning a digital signature on success, or an error if something went wrong. Read more
Sign the given message and return a digital signature
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
Attempt to sign the given message, updating the state, and returning a digital signature on success, or an error if something went wrong. Read more
Sign the given message, update the state, and return a digital signature
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.