Struct hdk::prelude::x_salsa20_poly1305::nonce::XSalsa20Poly1305Nonce [−][src]
Trait Implementations
impl AsRef<[u8]> for XSalsa20Poly1305Nonce
[src]
impl Clone for XSalsa20Poly1305Nonce
[src]
pub fn clone(&self) -> XSalsa20Poly1305Nonce
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for XSalsa20Poly1305Nonce
[src]
impl Debug for XSalsa20Poly1305Nonce
[src]
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.
@todo maybe we want something like HIDDEN by default and putting the actual bytes behind a feature flag?
See https://docs.rs/subtle-encoding/0.5.1/subtle_encoding/
impl<'de> Deserialize<'de> for XSalsa20Poly1305Nonce
[src]
pub fn deserialize<D>(
deserializer: D
) -> Result<XSalsa20Poly1305Nonce, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
[src]
deserializer: D
) -> Result<XSalsa20Poly1305Nonce, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
impl Eq for XSalsa20Poly1305Nonce
[src]
impl From<[u8; 24]> for XSalsa20Poly1305Nonce
[src]
Trivial new type derivation. Secrets should have private interiors and be constructed directly from fixed length arrays of known length.
impl PartialEq<XSalsa20Poly1305Nonce> for XSalsa20Poly1305Nonce
[src]
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.
pub fn eq(&self, other: &XSalsa20Poly1305Nonce) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl Serialize for XSalsa20Poly1305Nonce
[src]
pub fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
S: Serializer,
[src]
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
S: Serializer,
impl<'_> TryFrom<&'_ [u8]> for XSalsa20Poly1305Nonce
[src]
type Error = SecurePrimitiveError
The type returned in the event of a conversion error.
pub fn try_from(
slice: &[u8]
) -> Result<XSalsa20Poly1305Nonce, <XSalsa20Poly1305Nonce as TryFrom<&'_ [u8]>>::Error>
[src]
slice: &[u8]
) -> Result<XSalsa20Poly1305Nonce, <XSalsa20Poly1305Nonce as TryFrom<&'_ [u8]>>::Error>
impl<'_> TryFrom<&'_ XSalsa20Poly1305Nonce> for SerializedBytes
[src]
type Error = SerializedBytesError
The type returned in the event of a conversion error.
pub fn try_from(
t: &XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
[src]
t: &XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
impl TryFrom<SerializedBytes> for XSalsa20Poly1305Nonce
[src]
type Error = SerializedBytesError
The type returned in the event of a conversion error.
pub fn try_from(
sb: SerializedBytes
) -> Result<XSalsa20Poly1305Nonce, SerializedBytesError>
[src]
sb: SerializedBytes
) -> Result<XSalsa20Poly1305Nonce, SerializedBytesError>
impl TryFrom<XSalsa20Poly1305Nonce> for SerializedBytes
[src]
type Error = SerializedBytesError
The type returned in the event of a conversion error.
pub fn try_from(
t: XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
[src]
t: XSalsa20Poly1305Nonce
) -> Result<SerializedBytes, SerializedBytesError>
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> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
pub fn equivalent(&self, key: &K) -> bool
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub 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;
[src]
Notable traits for Instrumented<T>
impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
pub 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;
[src]
Notable traits for Instrumented<T>
impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,