Struct holochain::prelude::X25519PubKey
pub struct X25519PubKey(_);
Trait Implementations
impl AsRef<[u8]> for X25519PubKey
impl AsRef<[u8]> for X25519PubKey
impl Clone for X25519PubKey
impl Clone for X25519PubKey
fn clone(&self) -> X25519PubKey
fn clone(&self) -> X25519PubKey
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 X25519PubKey
impl Debug for X25519PubKey
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 X25519PubKey
impl<'de> Deserialize<'de> for X25519PubKey
fn deserialize<D>(
deserializer: D
) -> Result<X25519PubKey, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D
) -> Result<X25519PubKey, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl From<[u8; 32]> for X25519PubKey
impl From<[u8; 32]> for X25519PubKey
Trivial new type derivation. Secrets should have private interiors and be constructed directly from fixed length arrays of known length.
fn from(b: [u8; 32]) -> X25519PubKey
fn from(b: [u8; 32]) -> X25519PubKey
Converts to this type from the input type.
impl PartialEq<X25519PubKey> for X25519PubKey
impl PartialEq<X25519PubKey> for X25519PubKey
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: &X25519PubKey) -> bool
fn eq(&self, other: &X25519PubKey) -> bool
impl Serialize for X25519PubKey
impl Serialize for X25519PubKey
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 X25519PubKey
impl TryFrom<&[u8]> for X25519PubKey
type Error = SecurePrimitiveError
type Error = SecurePrimitiveError
The type returned in the event of a conversion error.
fn try_from(
slice: &[u8]
) -> Result<X25519PubKey, <X25519PubKey as TryFrom<&[u8]>>::Error>
fn try_from(
slice: &[u8]
) -> Result<X25519PubKey, <X25519PubKey as TryFrom<&[u8]>>::Error>
Performs the conversion.
impl TryFrom<&X25519PubKey> for SerializedBytes
impl TryFrom<&X25519PubKey> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
fn try_from(t: &X25519PubKey) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: &X25519PubKey) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
impl TryFrom<SerializedBytes> for X25519PubKey
impl TryFrom<SerializedBytes> for X25519PubKey
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
fn try_from(sb: SerializedBytes) -> Result<X25519PubKey, SerializedBytesError>
fn try_from(sb: SerializedBytes) -> Result<X25519PubKey, SerializedBytesError>
Performs the conversion.
impl TryFrom<Vec<u8, Global>> for X25519PubKey
impl TryFrom<Vec<u8, Global>> for X25519PubKey
impl TryFrom<X25519PubKey> for SerializedBytes
impl TryFrom<X25519PubKey> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
fn try_from(t: X25519PubKey) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: X25519PubKey) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
impl Copy for X25519PubKey
impl Eq for X25519PubKey
Auto Trait Implementations
impl RefUnwindSafe for X25519PubKey
impl Send for X25519PubKey
impl Sync for X25519PubKey
impl Unpin for X25519PubKey
impl UnwindSafe for X25519PubKey
Blanket Implementations
impl<T> Any for Twhere
T: Any + ?Sized,
impl<T> Any for Twhere
T: Any + ?Sized,
fn type_id_compat(&self) -> TypeId
fn type_id_compat(&self) -> TypeId
TODO: once 1.33.0 is the minimum supported compiler version, remove
Any::type_id_compat and use StdAny::type_id instead.
https://github.com/rust-lang/rust/issues/27745 Read more
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.impl<T> FutureExt for T
impl<T> FutureExt for T
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
sourcefn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
sourcefn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read morefn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.impl<T> Upcastable for Twhere
T: 'static + Any + Send + Sync,
impl<T> Upcastable for Twhere
T: 'static + Any + Send + Sync,
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref