Struct secp256k1::key::PublicKey[][src]

pub struct PublicKey(_);

A Secp256k1 public key, used for verification of signatures

Implementations

impl PublicKey[src]

pub fn as_ptr(&self) -> *const PublicKey[src]

Obtains a raw const pointer suitable for use with FFI functions

pub fn as_mut_ptr(&mut self) -> *mut PublicKey[src]

Obtains a raw mutable pointer suitable for use with FFI functions

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

Creates a new public key from a secret key.

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

Creates a public key directly from a slice

pub fn serialize(&self) -> [u8; 33][src]

Serialize the key as a byte-encoded pair of values. In compressed form the y-coordinate is represented by only a single bit, as x determines it up to one bit.

pub fn serialize_uncompressed(&self) -> [u8; 65][src]

Serialize the key as a byte-encoded pair of values, in uncompressed form

pub fn negate_assign<C: Verification>(&mut self, secp: &Secp256k1<C>)[src]

Negates the pk to the pk self in place Will return an error if the pk would be invalid.

pub fn add_exp_assign<C: Verification>(
    &mut self,
    secp: &Secp256k1<C>,
    other: &[u8]
) -> Result<(), Error>
[src]

Adds the pk corresponding to other to the pk self in place Will return an error if the resulting key would be invalid or if the tweak was not a 32-byte length slice.

pub fn mul_assign<C: Verification>(
    &mut self,
    secp: &Secp256k1<C>,
    other: &[u8]
) -> Result<(), Error>
[src]

Muliplies the pk self in place by the scalar other Will return an error if the resulting key would be invalid or if the tweak was not a 32-byte length slice.

pub fn combine(&self, other: &PublicKey) -> Result<PublicKey, Error>[src]

Adds a second key to this one, returning the sum. Returns an error if the result would be the point at infinity, i.e. we are adding this point to its own negation

Trait Implementations

impl CPtr for PublicKey[src]

type Target = PublicKey

impl Clone for PublicKey[src]

impl Copy for PublicKey[src]

impl Debug for PublicKey[src]

impl Display for PublicKey[src]

impl Eq for PublicKey[src]

impl From<PublicKey> for PublicKey[src]

Creates a new public key from a FFI public key

impl FromStr for PublicKey[src]

type Err = Error

The associated error which can be returned from parsing.

impl Hash for PublicKey[src]

impl LowerHex for PublicKey[src]

impl Ord for PublicKey[src]

impl PartialEq<PublicKey> for PublicKey[src]

impl PartialOrd<PublicKey> for PublicKey[src]

impl StructuralEq for PublicKey[src]

impl StructuralPartialEq for PublicKey[src]

Auto Trait Implementations

impl RefUnwindSafe for PublicKey

impl Send for PublicKey

impl Sync for PublicKey

impl Unpin for PublicKey

impl UnwindSafe for PublicKey

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[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.