sshkey_attest/
proto.rs

1//! Serialisable formats of attested ssh keys
2
3use serde::{Deserialize, Serialize};
4use webauthn_rs_core::proto::{AttestationFormat, ParsedAttestation, RegisteredExtensions};
5
6pub use sshkeys::PublicKey;
7
8/// An attested public key. This contains the ssh public key as well as the
9/// attestation metadata.
10#[derive(Clone, Debug, Serialize, Deserialize)]
11pub struct AttestedPublicKey {
12    /// The ssh public key
13    pub pubkey: PublicKey,
14    /// The set of extensions that were verified at registration, that can
15    /// be used in future authentication attempts
16    pub extensions: RegisteredExtensions,
17    /// The parser attestation data
18    pub attestation: ParsedAttestation,
19    /// The format of the attestation presented by the device.
20    pub attestation_format: AttestationFormat,
21}