#[non_exhaustive]pub enum KeyData {
Dsa(DsaPublicKey),
Ecdsa(EcdsaPublicKey),
Ed25519(Ed25519PublicKey),
Rsa(RsaPublicKey),
SkEcdsaSha2NistP256(SkEcdsaSha2NistP256),
SkEd25519(SkEd25519),
}
Expand description
Public key data.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Dsa(DsaPublicKey)
Digital Signature Algorithm (DSA) public key data.
Ecdsa(EcdsaPublicKey)
Elliptic Curve Digital Signature Algorithm (ECDSA) public key data.
Ed25519(Ed25519PublicKey)
Ed25519 public key data.
Rsa(RsaPublicKey)
RSA public key data.
SkEcdsaSha2NistP256(SkEcdsaSha2NistP256)
Security Key (FIDO/U2F) using ECDSA/NIST P-256 as specified in PROTOCOL.u2f.
SkEd25519(SkEd25519)
Security Key (FIDO/U2F) using Ed25519 as specified in PROTOCOL.u2f.
Implementations§
source§impl KeyData
impl KeyData
sourcepub fn dsa(&self) -> Option<&DsaPublicKey>
pub fn dsa(&self) -> Option<&DsaPublicKey>
Get DSA public key if this key is the correct type.
sourcepub fn ecdsa(&self) -> Option<&EcdsaPublicKey>
pub fn ecdsa(&self) -> Option<&EcdsaPublicKey>
Get ECDSA public key if this key is the correct type.
sourcepub fn ed25519(&self) -> Option<&Ed25519PublicKey>
pub fn ed25519(&self) -> Option<&Ed25519PublicKey>
Get Ed25519 public key if this key is the correct type.
sourcepub fn fingerprint(&self, hash_alg: HashAlg) -> Fingerprint
pub fn fingerprint(&self, hash_alg: HashAlg) -> Fingerprint
Compute key fingerprint.
Use Default::default()
to use the default hash function (SHA-256).
sourcepub fn rsa(&self) -> Option<&RsaPublicKey>
pub fn rsa(&self) -> Option<&RsaPublicKey>
Get RSA public key if this key is the correct type.
sourcepub fn sk_ecdsa_p256(&self) -> Option<&SkEcdsaSha2NistP256>
pub fn sk_ecdsa_p256(&self) -> Option<&SkEcdsaSha2NistP256>
Get FIDO/U2F ECDSA/NIST P-256 public key if this key is the correct type.
sourcepub fn sk_ed25519(&self) -> Option<&SkEd25519>
pub fn sk_ed25519(&self) -> Option<&SkEd25519>
Get FIDO/U2F Ed25519 public key if this key is the correct type.
sourcepub fn is_ed25519(&self) -> bool
pub fn is_ed25519(&self) -> bool
Is this key an Ed25519 key?
sourcepub fn is_sk_ecdsa_p256(&self) -> bool
pub fn is_sk_ecdsa_p256(&self) -> bool
Is this key a FIDO/U2F ECDSA/NIST P-256 key?
sourcepub fn is_sk_ed25519(&self) -> bool
pub fn is_sk_ed25519(&self) -> bool
Is this key a FIDO/U2F Ed25519 key?
Trait Implementations§
source§impl From<&PrivateKey> for KeyData
impl From<&PrivateKey> for KeyData
source§fn from(private_key: &PrivateKey) -> KeyData
fn from(private_key: &PrivateKey) -> KeyData
source§impl From<DsaPublicKey> for KeyData
impl From<DsaPublicKey> for KeyData
source§fn from(public_key: DsaPublicKey) -> KeyData
fn from(public_key: DsaPublicKey) -> KeyData
source§impl From<EcdsaPublicKey> for KeyData
impl From<EcdsaPublicKey> for KeyData
source§fn from(public_key: EcdsaPublicKey) -> KeyData
fn from(public_key: EcdsaPublicKey) -> KeyData
source§impl From<Ed25519PublicKey> for KeyData
impl From<Ed25519PublicKey> for KeyData
source§fn from(public_key: Ed25519PublicKey) -> KeyData
fn from(public_key: Ed25519PublicKey) -> KeyData
source§impl From<PrivateKey> for KeyData
impl From<PrivateKey> for KeyData
source§fn from(private_key: PrivateKey) -> KeyData
fn from(private_key: PrivateKey) -> KeyData
source§impl From<RsaPublicKey> for KeyData
impl From<RsaPublicKey> for KeyData
source§fn from(public_key: RsaPublicKey) -> KeyData
fn from(public_key: RsaPublicKey) -> KeyData
source§impl From<SkEcdsaSha2NistP256> for KeyData
impl From<SkEcdsaSha2NistP256> for KeyData
source§fn from(public_key: SkEcdsaSha2NistP256) -> KeyData
fn from(public_key: SkEcdsaSha2NistP256) -> KeyData
source§impl Ord for KeyData
impl Ord for KeyData
source§impl PartialOrd for KeyData
impl PartialOrd for KeyData
source§impl TryFrom<&KeypairData> for KeyData
impl TryFrom<&KeypairData> for KeyData
impl Eq for KeyData
impl StructuralPartialEq for KeyData
Auto Trait Implementations§
impl Freeze for KeyData
impl RefUnwindSafe for KeyData
impl Send for KeyData
impl Sync for KeyData
impl Unpin for KeyData
impl UnwindSafe for KeyData
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)