[−][src]Struct hdwallet::extended_key::ExtendedPrivKey
ExtendedPrivKey is used for child key derivation. See secp256k1 crate documentation for SecretKey signatures usage.
Examples
use hdwallet::{ExtendedPrivKey, KeyIndex}; let master_key = ExtendedPrivKey::random().unwrap(); let hardened_key_index = KeyIndex::hardened_from_normalize_index(0).unwrap(); let hardended_child_priv_key = master_key.derive_private_key(hardened_key_index).unwrap(); let normal_key_index = KeyIndex::Normal(0); let noamal_child_priv_key = master_key.derive_private_key(normal_key_index).unwrap();
Fields
private_key: SecretKey
chain_code: Vec<u8>
Methods
impl ExtendedPrivKey
[src]
pub fn random() -> Result<ExtendedPrivKey, Error>
[src]
Generate an ExtendedPrivKey, use 256 size random seed.
pub fn random_with_seed_size(
seed_size: KeySeed
) -> Result<ExtendedPrivKey, Error>
[src]
seed_size: KeySeed
) -> Result<ExtendedPrivKey, Error>
Generate an ExtendedPrivKey which use 128 or 256 or 512 bits random seed.
pub fn with_seed(seed: &[u8]) -> Result<ExtendedPrivKey, Error>
[src]
Generate an ExtendedPrivKey from seed
pub fn derive_private_key(
&self,
key_index: KeyIndex
) -> Result<ExtendedPrivKey, Error>
[src]
&self,
key_index: KeyIndex
) -> Result<ExtendedPrivKey, Error>
Derive a child key from ExtendedPrivKey.
Trait Implementations
impl Clone for ExtendedPrivKey
[src]
fn clone(&self) -> ExtendedPrivKey
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for ExtendedPrivKey
[src]
impl<'_> Deserialize<&'_ [u8], Error> for ExtendedPrivKey
[src]
impl Eq for ExtendedPrivKey
[src]
impl PartialEq<ExtendedPrivKey> for ExtendedPrivKey
[src]
fn eq(&self, other: &ExtendedPrivKey) -> bool
[src]
fn ne(&self, other: &ExtendedPrivKey) -> bool
[src]
impl Serialize<Vec<u8>> for ExtendedPrivKey
[src]
impl StructuralEq for ExtendedPrivKey
[src]
impl StructuralPartialEq for ExtendedPrivKey
[src]
Auto Trait Implementations
impl RefUnwindSafe for ExtendedPrivKey
impl Send for ExtendedPrivKey
impl Sync for ExtendedPrivKey
impl Unpin for ExtendedPrivKey
impl UnwindSafe for ExtendedPrivKey
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,