[][src]Struct bitcoin::util::key::PublicKey

pub struct PublicKey {
    pub compressed: bool,
    pub key: PublicKey,
}

A Bitcoin ECDSA public key

Fields

compressed: bool

Whether this public key should be serialized as compressed

key: PublicKey

The actual ECDSA key

Methods

impl PublicKey[src]

pub fn pubkey_hash(&self) -> PubkeyHash[src]

Returns bitcoin 160-bit hash of the public key

pub fn wpubkey_hash(&self) -> Option<WPubkeyHash>[src]

Returns bitcoin 160-bit hash of the public key for witness program

pub fn write_into<W: Write>(&self, writer: W) -> Result<(), Error>[src]

Write the public key into a writer

pub fn read_from<R: Read>(reader: R) -> Result<Self, Error>[src]

Read the public key from a reader

This internally reads the first byte before reading the rest, so use of a BufReader is recommended.

pub fn to_bytes(&self) -> Vec<u8>[src]

Serialize the public key to bytes

pub fn from_slice(data: &[u8]) -> Result<PublicKey, Error>[src]

Deserialize a public key from a slice

pub fn from_private_key<C: Signing>(
    secp: &Secp256k1<C>,
    sk: &PrivateKey
) -> PublicKey
[src]

Computes the public key as supposed to be used with this secret

Trait Implementations

impl Serialize for PublicKey[src]

impl Deserialize for PublicKey[src]

impl Ord for PublicKey[src]

fn max(self, other: Self) -> Self1.21.0[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self1.21.0[src]

Compares and returns the minimum of two values. Read more

fn clamp(self, min: Self, max: Self) -> Self[src]

🔬 This is a nightly-only experimental API. (clamp)

Restrict a value to a certain interval. Read more

impl PartialOrd<PublicKey> for PublicKey[src]

impl Clone for PublicKey[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl PartialEq<PublicKey> for PublicKey[src]

impl Eq for PublicKey[src]

impl Copy for PublicKey[src]

impl Display for PublicKey[src]

impl Debug for PublicKey[src]

impl Hash for PublicKey[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl FromStr for PublicKey[src]

type Err = Error

The associated error which can be returned from parsing.

Auto Trait Implementations

impl Unpin for PublicKey

impl Sync for PublicKey

impl Send for PublicKey

impl UnwindSafe for PublicKey

impl RefUnwindSafe for PublicKey

Blanket Implementations

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

impl<T> ToString for T where
    T: Display + ?Sized
[src]

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

type Owned = T

The resulting type after obtaining ownership.

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

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<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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

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