#[non_exhaustive]pub enum Bip43 {
Bip44,
Bip84,
Bip49,
Bip86,
Bip45,
Bip48Nested,
Bip48Native,
Bip87,
Bip43 {
purpose: HardenedIndex,
},
}Expand description
Specific derivation scheme after BIP-43 standards
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Bip44
Account-based P2PKH derivation.
m / 44' / coin_type' / account'
Bip84
Account-based native P2WPKH derivation.
m / 84' / coin_type' / account'
Bip49
Account-based legacy P2WPH-in-P2SH derivation.
m / 49' / coin_type' / account'
Bip86
Account-based single-key P2TR derivation.
m / 86' / coin_type' / account'
Bip45
Cosigner-index-based multisig derivation.
`m / 45’ / cosigner_index
Bip48Nested
Account-based multisig derivation with sorted keys & P2WSH nested. scripts
m / 48' / coin_type' / account' / 1'
Bip48Native
Account-based multisig derivation with sorted keys & P2WSH native. scripts
m / 48' / coin_type' / account' / 2'
Bip87
Account- & descriptor-based derivation for multi-sig wallets.
m / 87' / coin_type' / account'
Bip43
Generic BIP43 derivation with custom (non-standard) purpose value.
m / purpose'
Fields
purpose: HardenedIndexPurpose value
Implementations§
Source§impl Bip43
impl Bip43
Sourcepub const PKH: Bip43 = Bip43::Bip44
pub const PKH: Bip43 = Bip43::Bip44
Constructs derivation standard corresponding to a single-sig P2PKH.
Sourcepub const WPKH_SH: Bip43 = Bip43::Bip49
pub const WPKH_SH: Bip43 = Bip43::Bip49
Constructs derivation standard corresponding to a single-sig P2WPKH-in-P2SH.
Sourcepub const WPKH: Bip43 = Bip43::Bip84
pub const WPKH: Bip43 = Bip43::Bip84
Constructs derivation standard corresponding to a single-sig P2WPKH.
Sourcepub const TR_SINGLE: Bip43 = Bip43::Bip86
pub const TR_SINGLE: Bip43 = Bip43::Bip86
Constructs derivation standard corresponding to a single-sig P2TR.
Sourcepub const MULTI_SH_SORTED: Bip43 = Bip43::Bip45
pub const MULTI_SH_SORTED: Bip43 = Bip43::Bip45
Constructs derivation standard corresponding to a multi-sig P2SH BIP45.
Sourcepub const MULTI_WSH_SH: Bip43 = Bip43::Bip48Nested
pub const MULTI_WSH_SH: Bip43 = Bip43::Bip48Nested
Constructs derivation standard corresponding to a multi-sig sorted P2WSH-in-P2SH.
Sourcepub const MULTI_WSH: Bip43 = Bip43::Bip48Native
pub const MULTI_WSH: Bip43 = Bip43::Bip48Native
Constructs derivation standard corresponding to a multi-sig sorted P2WSH.
Sourcepub const DESCRIPTOR: Bip43 = Bip43::Bip87
pub const DESCRIPTOR: Bip43 = Bip43::Bip87
Constructs derivation standard corresponding to a multi-sig BIP87.
Trait Implementations§
Source§impl DerivationStandard for Bip43
impl DerivationStandard for Bip43
Source§fn deduce(derivation: &DerivationPath) -> Option<Bip43>
fn deduce(derivation: &DerivationPath) -> Option<Bip43>
Source§fn purpose(&self) -> Option<HardenedIndex>
fn purpose(&self) -> Option<HardenedIndex>
Source§fn account_depth(&self) -> Option<u8>
fn account_depth(&self) -> Option<u8>
Source§fn coin_type_depth(&self) -> Option<u8>
fn coin_type_depth(&self) -> Option<u8>
coin_type key, i.e. the used
blockchain. Read moreSource§fn is_account_last_hardened(&self) -> Option<bool>
fn is_account_last_hardened(&self) -> Option<bool>
script_type in BIP-48). Read moreSource§fn is_testnet(
&self,
path: &DerivationPath,
) -> Result<bool, Option<DerivationIndex>>
fn is_testnet( &self, path: &DerivationPath, ) -> Result<bool, Option<DerivationIndex>>
Source§fn account_template_string(&self, testnet: bool) -> String
fn account_template_string(&self, testnet: bool) -> String
* wildcard fragment.Source§fn to_origin_derivation(&self, testnet: bool) -> DerivationPath<HardenedIndex>
fn to_origin_derivation(&self, testnet: bool) -> DerivationPath<HardenedIndex>
Source§fn to_account_derivation(
&self,
account_index: HardenedIndex,
testnet: bool,
) -> DerivationPath<HardenedIndex>
fn to_account_derivation( &self, account_index: HardenedIndex, testnet: bool, ) -> DerivationPath<HardenedIndex>
Source§fn to_key_derivation(
&self,
account_index: HardenedIndex,
testnet: bool,
keychain: NormalIndex,
index: NormalIndex,
) -> DerivationPath
fn to_key_derivation( &self, account_index: HardenedIndex, testnet: bool, keychain: NormalIndex, index: NormalIndex, ) -> DerivationPath
Source§fn extract_coin_type(
&self,
path: &DerivationPath,
) -> Result<HardenedIndex, Option<NormalIndex>>
fn extract_coin_type( &self, path: &DerivationPath, ) -> Result<HardenedIndex, Option<NormalIndex>>
Source§fn extract_account_index(
&self,
path: &DerivationPath,
) -> Result<HardenedIndex, Option<NormalIndex>>
fn extract_account_index( &self, path: &DerivationPath, ) -> Result<HardenedIndex, Option<NormalIndex>>
impl Copy for Bip43
impl Eq for Bip43
impl StructuralPartialEq for Bip43
Auto Trait Implementations§
impl Freeze for Bip43
impl RefUnwindSafe for Bip43
impl Send for Bip43
impl Sync for Bip43
impl Unpin for Bip43
impl UnwindSafe for Bip43
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<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
key and return true if they are equal.