Struct hdk::prelude::x_salsa20_poly1305::nonce::XSalsa20Poly1305Nonce
[−]pub struct XSalsa20Poly1305Nonce(_);
Trait Implementations
impl AsRef<[u8]> for XSalsa20Poly1305Nonce
impl AsRef<[u8]> for XSalsa20Poly1305Nonce
impl Clone for XSalsa20Poly1305Nonce
impl Clone for XSalsa20Poly1305Nonce
fn clone(&self) -> XSalsa20Poly1305Nonce
fn clone(&self) -> XSalsa20Poly1305Nonce
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreimpl Debug for XSalsa20Poly1305Nonce
impl Debug for XSalsa20Poly1305Nonce
The only meaningful debug information for a cryptograhpic secret is the literal bytes. Also, encodings like base64 are not constant time so debugging could open some weird side channel issue trying to be ‘human friendly’. It seems better to never try to encode secrets.
impl<'de> Deserialize<'de> for XSalsa20Poly1305Nonce
impl<'de> Deserialize<'de> for XSalsa20Poly1305Nonce
fn deserialize<D>(
deserializer: D
) -> Result<XSalsa20Poly1305Nonce, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D
) -> Result<XSalsa20Poly1305Nonce, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl From<[u8; 24]> for XSalsa20Poly1305Nonce
impl From<[u8; 24]> for XSalsa20Poly1305Nonce
Trivial new type derivation. Secrets should have private interiors and be constructed directly from fixed length arrays of known length.
fn from(b: [u8; 24]) -> XSalsa20Poly1305Nonce
fn from(b: [u8; 24]) -> XSalsa20Poly1305Nonce
Converts to this type from the input type.
impl PartialEq<XSalsa20Poly1305Nonce> for XSalsa20Poly1305Nonce
impl PartialEq<XSalsa20Poly1305Nonce> for XSalsa20Poly1305Nonce
Constant time equality check. This mitigates timing attacks where a remote agent can reverse engineer data by measuring tiny changes in latency associated with optimised equality checks. More matching bytes = more latency = vulnerability. This type of attack has been successfully demonstrated over a network despite varied latencies.
fn eq(&self, other: &XSalsa20Poly1305Nonce) -> bool
fn eq(&self, other: &XSalsa20Poly1305Nonce) -> bool
impl Serialize for XSalsa20Poly1305Nonce
impl Serialize for XSalsa20Poly1305Nonce
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 TryFrom<&[u8]> for XSalsa20Poly1305Nonce
impl TryFrom<&[u8]> for XSalsa20Poly1305Nonce
type Error = SecurePrimitiveError
type Error = SecurePrimitiveError
The type returned in the event of a conversion error.
fn try_from(
slice: &[u8]
) -> Result<XSalsa20Poly1305Nonce, <XSalsa20Poly1305Nonce as TryFrom<&[u8]>>::Error>
fn try_from(
slice: &[u8]
) -> Result<XSalsa20Poly1305Nonce, <XSalsa20Poly1305Nonce as TryFrom<&[u8]>>::Error>
Performs the conversion.
impl TryFrom<&XSalsa20Poly1305Nonce> for SerializedBytes
impl TryFrom<&XSalsa20Poly1305Nonce> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
fn try_from(
t: &XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(
t: &XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
impl TryFrom<SerializedBytes> for XSalsa20Poly1305Nonce
impl TryFrom<SerializedBytes> for XSalsa20Poly1305Nonce
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
fn try_from(
sb: SerializedBytes
) -> Result<XSalsa20Poly1305Nonce, SerializedBytesError>
fn try_from(
sb: SerializedBytes
) -> Result<XSalsa20Poly1305Nonce, SerializedBytesError>
Performs the conversion.
impl TryFrom<Vec<u8, Global>> for XSalsa20Poly1305Nonce
impl TryFrom<Vec<u8, Global>> for XSalsa20Poly1305Nonce
impl TryFrom<XSalsa20Poly1305Nonce> for SerializedBytes
impl TryFrom<XSalsa20Poly1305Nonce> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
fn try_from(
t: XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(
t: XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
impl Copy for XSalsa20Poly1305Nonce
impl Eq for XSalsa20Poly1305Nonce
Auto Trait Implementations
impl RefUnwindSafe for XSalsa20Poly1305Nonce
impl Send for XSalsa20Poly1305Nonce
impl Sync for XSalsa20Poly1305Nonce
impl Unpin for XSalsa20Poly1305Nonce
impl UnwindSafe for XSalsa20Poly1305Nonce
Blanket Implementations
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
sourcefn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
T: Future, type Output = <T as Future>::Output;
sourcefn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;