pub struct RootAttachmentBinding {
pub format_version: u32,
pub root_public_key: Vec<u8>,
pub subject_public_key: Vec<u8>,
pub device: Option<EndpointRef>,
pub credential_digest: Vec<u8>,
pub not_before_unix_seconds: i64,
pub expires_at_unix_seconds: i64,
pub account_id: String,
pub pairing_challenge: Vec<u8>,
}Expand description
Portable binding of a proved delegated key to its Iroh endpoint. Authority remains the Biscuit’s complete attenuation chain, not this locator binding. SignedRecord format heddle.root-attachment.v2 carries canonical bytes signed by both endpoint and subject (one signature when the keys are equal). The shared verifier requires a locally trusted root, verifies the Biscuit’s effective proof key and limits, then verifies digest, time and endpoint.
Fields§
§format_version: u32§root_public_key: Vec<u8>§subject_public_key: Vec<u8>§device: Option<EndpointRef>§credential_digest: Vec<u8>§not_before_unix_seconds: i64§expires_at_unix_seconds: i64§account_id: String§pairing_challenge: Vec<u8>Trait Implementations§
Source§impl Clone for RootAttachmentBinding
impl Clone for RootAttachmentBinding
Source§fn clone(&self) -> RootAttachmentBinding
fn clone(&self) -> RootAttachmentBinding
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 moreSource§impl Debug for RootAttachmentBinding
impl Debug for RootAttachmentBinding
Source§impl Default for RootAttachmentBinding
impl Default for RootAttachmentBinding
Source§fn default() -> RootAttachmentBinding
fn default() -> RootAttachmentBinding
Returns the “default value” for a type. Read more
impl Eq for RootAttachmentBinding
Source§impl Hash for RootAttachmentBinding
impl Hash for RootAttachmentBinding
Source§impl Message for RootAttachmentBinding
impl Message for RootAttachmentBinding
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 RootAttachmentBinding
impl PartialEq for RootAttachmentBinding
impl StructuralPartialEq for RootAttachmentBinding
Auto Trait Implementations§
impl Freeze for RootAttachmentBinding
impl RefUnwindSafe for RootAttachmentBinding
impl Send for RootAttachmentBinding
impl Sync for RootAttachmentBinding
impl Unpin for RootAttachmentBinding
impl UnsafeUnpin for RootAttachmentBinding
impl UnwindSafe for RootAttachmentBinding
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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