pub struct MachinePrivateKey(/* private fields */);Expand description
The X25519 private key of a unique piece of hardware running one or more Tailscale nodes.
Implementations§
Source§impl MachinePrivateKey
impl MachinePrivateKey
Sourcepub const KEY_LEN_BYTES: usize = 32
pub const KEY_LEN_BYTES: usize = 32
The length of this key type, in bytes.
Sourcepub const KEY_LEN_HEX_STR: usize
pub const KEY_LEN_HEX_STR: usize
The length of a hexidecimal string representation of this key, excluding the prefix and colon.
Sourcepub const KEY_LEN_FULL_STR: usize
pub const KEY_LEN_FULL_STR: usize
The length of a hexidecimal string representation of this key, including the prefix and colon.
Sourcepub const KEY_PREFIX: &'static str = "privkey"
pub const KEY_PREFIX: &'static str = "privkey"
The prefix placed in front of string representations of this key type, such as “$key_prefix:abcd…”
Source§impl MachinePrivateKey
impl MachinePrivateKey
Sourcepub fn public_key(self) -> MachinePublicKey
pub fn public_key(self) -> MachinePublicKey
Calculate the corresponding public key for this private key.
Trait Implementations§
Source§impl Clone for MachinePrivateKey
impl Clone for MachinePrivateKey
Source§fn clone(&self) -> MachinePrivateKey
fn clone(&self) -> MachinePrivateKey
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for MachinePrivateKey
Source§impl Debug for MachinePrivateKey
impl Debug for MachinePrivateKey
Source§impl Display for MachinePrivateKey
impl Display for MachinePrivateKey
impl Eq for MachinePrivateKey
Source§impl From<&MachinePrivateKey> for StaticSecret
impl From<&MachinePrivateKey> for StaticSecret
Source§fn from(v: &MachinePrivateKey) -> Self
fn from(v: &MachinePrivateKey) -> Self
Converts to this type from the input type.
Source§impl From<&MachinePrivateKey> for SecretKey
impl From<&MachinePrivateKey> for SecretKey
Source§fn from(v: &MachinePrivateKey) -> Self
fn from(v: &MachinePrivateKey) -> Self
Converts to this type from the input type.
Source§impl From<MachinePrivateKey> for StaticSecret
impl From<MachinePrivateKey> for StaticSecret
Source§fn from(v: MachinePrivateKey) -> Self
fn from(v: MachinePrivateKey) -> Self
Converts to this type from the input type.
Source§impl From<MachinePrivateKey> for SecretKey
impl From<MachinePrivateKey> for SecretKey
Source§fn from(v: MachinePrivateKey) -> Self
fn from(v: MachinePrivateKey) -> Self
Converts to this type from the input type.
Source§impl From<MachinePrivateKey> for MachinePublicKey
impl From<MachinePrivateKey> for MachinePublicKey
Source§fn from(v: MachinePrivateKey) -> Self
fn from(v: MachinePrivateKey) -> Self
Converts to this type from the input type.
Source§impl From<MachinePrivateKey> for MachineKeyPair
impl From<MachinePrivateKey> for MachineKeyPair
Source§fn from(private: MachinePrivateKey) -> Self
fn from(private: MachinePrivateKey) -> Self
Converts to this type from the input type.
Source§impl FromBytes for MachinePrivateKey
impl FromBytes for MachinePrivateKey
Source§fn ref_from_bytes(
source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
Self: KnownLayout + Immutable,
fn ref_from_bytes(
source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
Self: KnownLayout + Immutable,
Source§fn ref_from_prefix(
source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
Self: KnownLayout + Immutable,
fn ref_from_prefix(
source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
Self: KnownLayout + Immutable,
Source§fn ref_from_suffix(
source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
Self: Immutable + KnownLayout,
fn ref_from_suffix(
source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, Infallible>>where
Self: Immutable + KnownLayout,
Interprets the suffix of the given bytes as a
&Self. Read moreSource§fn mut_from_bytes(
source: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
Self: IntoBytes + KnownLayout,
fn mut_from_bytes(
source: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
Self: IntoBytes + KnownLayout,
Source§fn mut_from_prefix(
source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
Self: IntoBytes + KnownLayout,
fn mut_from_prefix(
source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
Self: IntoBytes + KnownLayout,
Source§fn mut_from_suffix(
source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
Self: IntoBytes + KnownLayout,
fn mut_from_suffix(
source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, Infallible>>where
Self: IntoBytes + KnownLayout,
Source§impl FromStr for MachinePrivateKey
impl FromStr for MachinePrivateKey
Source§impl FromZeros for MachinePrivateKey
impl FromZeros for MachinePrivateKey
impl Immutable for MachinePrivateKey
Source§impl IntoBytes for MachinePrivateKey
impl IntoBytes for MachinePrivateKey
Source§fn as_mut_bytes(&mut self) -> &mut [u8]where
Self: FromBytes,
fn as_mut_bytes(&mut self) -> &mut [u8]where
Self: FromBytes,
Gets the bytes of this value mutably. Read more
Source§fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
Source§impl KnownLayout for MachinePrivateKeywhere
Self: Sized,
impl KnownLayout for MachinePrivateKeywhere
Self: Sized,
Source§type PointerMetadata = ()
type PointerMetadata = ()
The type of metadata stored in a pointer to
Self. Read moreSource§fn size_for_metadata(meta: Self::PointerMetadata) -> Option<usize>
fn size_for_metadata(meta: Self::PointerMetadata) -> Option<usize>
Computes the size of an object of type
Self with the given pointer
metadata. Read moreSource§impl PartialEq for MachinePrivateKey
impl PartialEq for MachinePrivateKey
Source§fn eq(&self, other: &MachinePrivateKey) -> bool
fn eq(&self, other: &MachinePrivateKey) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for MachinePrivateKey
Source§impl TryFromBytes for MachinePrivateKey
impl TryFromBytes for MachinePrivateKey
Source§fn try_ref_from_bytes(
source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: KnownLayout + Immutable,
fn try_ref_from_bytes(
source: &[u8],
) -> Result<&Self, ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: KnownLayout + Immutable,
Source§fn try_ref_from_prefix(
source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: KnownLayout + Immutable,
fn try_ref_from_prefix(
source: &[u8],
) -> Result<(&Self, &[u8]), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: KnownLayout + Immutable,
Source§fn try_ref_from_suffix(
source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: KnownLayout + Immutable,
fn try_ref_from_suffix(
source: &[u8],
) -> Result<(&[u8], &Self), ConvertError<AlignmentError<&[u8], Self>, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: KnownLayout + Immutable,
Source§fn try_mut_from_bytes(
bytes: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
Self: KnownLayout + IntoBytes,
fn try_mut_from_bytes(
bytes: &mut [u8],
) -> Result<&mut Self, ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
Self: KnownLayout + IntoBytes,
Source§fn try_mut_from_prefix(
source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
Self: KnownLayout + IntoBytes,
fn try_mut_from_prefix(
source: &mut [u8],
) -> Result<(&mut Self, &mut [u8]), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
Self: KnownLayout + IntoBytes,
Source§fn try_mut_from_suffix(
source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
Self: KnownLayout + IntoBytes,
fn try_mut_from_suffix(
source: &mut [u8],
) -> Result<(&mut [u8], &mut Self), ConvertError<AlignmentError<&mut [u8], Self>, SizeError<&mut [u8], Self>, ValidityError<&mut [u8], Self>>>where
Self: KnownLayout + IntoBytes,
Source§fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Auto Trait Implementations§
impl Freeze for MachinePrivateKey
impl RefUnwindSafe for MachinePrivateKey
impl Send for MachinePrivateKey
impl Sync for MachinePrivateKey
impl Unpin for MachinePrivateKey
impl UnsafeUnpin for MachinePrivateKey
impl UnwindSafe for MachinePrivateKey
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