pub struct SignedChallengeResponse {
pub challenge_nonce: Vec<u8>,
pub public_key: Vec<u8>,
pub signature: Vec<u8>,
pub timestamp: Option<Timestamp>,
pub device_type: i32,
pub certificates: Vec<Vec<u8>>,
}Expand description
Signed response to authentication challenge
Fields§
§challenge_nonce: Vec<u8>Original challenge nonce (for correlation)
public_key: Vec<u8>Responder’s Ed25519 public key (32 bytes)
signature: Vec<u8>Ed25519 signature (64 bytes) over: nonce || challenger_id || timestamp
timestamp: Option<Timestamp>Response creation timestamp
device_type: i32Responder’s device type
certificates: Vec<Vec<u8>>X.509 certificate chain (DER-encoded) - optional for MVP
Implementations§
Source§impl SignedChallengeResponse
impl SignedChallengeResponse
Sourcepub fn device_type(&self) -> DeviceType
pub fn device_type(&self) -> DeviceType
Returns the enum value of device_type, or the default if the field is set to an invalid enum value.
Sourcepub fn set_device_type(&mut self, value: DeviceType)
pub fn set_device_type(&mut self, value: DeviceType)
Sets device_type to the provided enum value.
Trait Implementations§
Source§impl Clone for SignedChallengeResponse
impl Clone for SignedChallengeResponse
Source§fn clone(&self) -> SignedChallengeResponse
fn clone(&self) -> SignedChallengeResponse
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SignedChallengeResponse
impl Debug for SignedChallengeResponse
Source§impl Default for SignedChallengeResponse
impl Default for SignedChallengeResponse
Source§fn default() -> SignedChallengeResponse
fn default() -> SignedChallengeResponse
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for SignedChallengeResponse
impl<'de> Deserialize<'de> for SignedChallengeResponse
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<SignedChallengeResponse, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<SignedChallengeResponse, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Message for SignedChallengeResponse
impl Message for SignedChallengeResponse
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.Source§impl PartialEq for SignedChallengeResponse
impl PartialEq for SignedChallengeResponse
Source§impl Serialize for SignedChallengeResponse
impl Serialize for SignedChallengeResponse
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for SignedChallengeResponse
Auto Trait Implementations§
impl Freeze for SignedChallengeResponse
impl RefUnwindSafe for SignedChallengeResponse
impl Send for SignedChallengeResponse
impl Sync for SignedChallengeResponse
impl Unpin for SignedChallengeResponse
impl UnsafeUnpin for SignedChallengeResponse
impl UnwindSafe for SignedChallengeResponse
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more