pub struct ExternalKey {
pub xpub: String,
pub master_fingerprint: Vec<u8>,
pub derivation_path: String,
}Expand description
This message represents an external key used for deriving and managing hierarchical deterministic (HD) wallet addresses according to BIP-86.
Fields§
§xpub: StringThis field specifies the extended public key derived at depth 3 of the BIP-86 hierarchy (e.g., m/86’/0’/0’). This key serves as the parent key for deriving child public keys and addresses.
master_fingerprint: Vec<u8>This field specifies the fingerprint of the master key, derived from the first 4 bytes of the hash160 of the master public key. It is used to identify the master key in BIP-86 derivation schemes.
derivation_path: StringThis field specifies the extended BIP-86 derivation path used to derive a child key from the XPub. Starting from the base path of the XPub (e.g., m/86’/0’/0’), this path must contain exactly 5 components in total (e.g., m/86’/0’/0’/0/0), with the additional components defining specific child keys, such as individual addresses.
Trait Implementations§
Source§impl Clone for ExternalKey
impl Clone for ExternalKey
Source§fn clone(&self) -> ExternalKey
fn clone(&self) -> ExternalKey
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ExternalKey
impl Debug for ExternalKey
Source§impl Default for ExternalKey
impl Default for ExternalKey
Source§impl Message for ExternalKey
impl Message for ExternalKey
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
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,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
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,
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,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
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,
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,
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,
self.Source§impl PartialEq for ExternalKey
impl PartialEq for ExternalKey
Source§fn eq(&self, other: &ExternalKey) -> bool
fn eq(&self, other: &ExternalKey) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ExternalKey
Auto Trait Implementations§
impl Freeze for ExternalKey
impl RefUnwindSafe for ExternalKey
impl Send for ExternalKey
impl Sync for ExternalKey
impl Unpin for ExternalKey
impl UnsafeUnpin for ExternalKey
impl UnwindSafe for ExternalKey
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request