Struct iop_keyvault::Bip44PublicKey[][src]

pub struct Bip44PublicKey<C: KeyDerivationCrypto + 'static> { /* fields omitted */ }

Represents a public key with a given index used on the chain for verifying signatures or validating key identifiers.

Implementations

impl<C: KeyDerivationCrypto + 'static> Bip44PublicKey<C>[src]

pub fn new(
    path: Bip44KeyPath,
    network: &'static dyn Network<Suite = C>,
    node: Bip32PublicNode<C>
) -> Self
[src]

Backdoor to mount a BIP44 key at any place in the BIP32 tree. Use only for implementing advanced or fringe non-standard use-cases.

pub fn node(&self) -> &Bip32PublicNode<C>[src]

Accessor for the underlying BIP32 node.

pub fn bip44_path(&self) -> &Bip44KeyPath[src]

Accessor for the BIP44 path of the key.

pub fn bip32_path(&self) -> &Path[src]

Accessor for the BIP32 path of the key.

pub fn to_public_key(&self) -> C::PublicKey[src]

Creates the public key for verifying authentications done by this key.

pub fn to_key_id(&self) -> C::KeyId[src]

Creates the key identifier for the public key. This is an extra layer of security for single-use keys, so the revealing of the public key can be delayed to the point when the authenticated action (spending some coin or revoking access) makes the public key irrelevant after the action is successful.

pub fn network(&self) -> &'static dyn Network<Suite = C>[src]

Accessor for the underlying nwtwork.

impl Bip44PublicKey<Secp256k1>[src]

pub fn to_p2pkh_addr(&self) -> String[src]

Returns the P2PKH address that belongs key with the version byte of the network.

Trait Implementations

impl<C: Clone + KeyDerivationCrypto + 'static> Clone for Bip44PublicKey<C>[src]

impl<C: Debug + KeyDerivationCrypto + 'static> Debug for Bip44PublicKey<C>[src]

Auto Trait Implementations

impl<C> !RefUnwindSafe for Bip44PublicKey<C>

impl<C> !Send for Bip44PublicKey<C>

impl<C> !Sync for Bip44PublicKey<C>

impl<C> Unpin for Bip44PublicKey<C> where
    <C as KeyDerivationCrypto>::ExtendedPublicKey: Unpin

impl<C> !UnwindSafe for Bip44PublicKey<C>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,