Struct evm_state::transactions::PublicKey [−][src]
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>(secp: &Secp256k1<C>, sk: &SecretKey) -> PublicKey where
C: Signing,
[src]
C: Signing,
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>(&mut self, secp: &Secp256k1<C>) where
C: Verification,
[src]
C: Verification,
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>(
&mut self,
secp: &Secp256k1<C>,
other: &[u8]
) -> Result<(), Error> where
C: Verification,
[src]
&mut self,
secp: &Secp256k1<C>,
other: &[u8]
) -> Result<(), Error> where
C: Verification,
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>(
&mut self,
secp: &Secp256k1<C>,
other: &[u8]
) -> Result<(), Error> where
C: Verification,
[src]
&mut self,
secp: &Secp256k1<C>,
other: &[u8]
) -> Result<(), Error> where
C: Verification,
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
pub fn as_c_ptr(&self) -> *const <PublicKey as CPtr>::Target
[src]
pub fn as_mut_c_ptr(&mut self) -> *mut <PublicKey as CPtr>::Target
[src]
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.
pub fn from_str(s: &str) -> Result<PublicKey, Error>
[src]
impl Hash for PublicKey
[src]
pub fn hash<__H>(&self, state: &mut __H) where
__H: Hasher,
[src]
__H: Hasher,
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl LowerHex for PublicKey
[src]
impl Ord for PublicKey
[src]
pub fn cmp(&self, other: &PublicKey) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl PartialEq<PublicKey> for PublicKey
[src]
impl PartialOrd<PublicKey> for PublicKey
[src]
pub fn partial_cmp(&self, other: &PublicKey) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[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]
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,
pub 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> MaybeDebug for T where
T: Debug,
[src]
T: Debug,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
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.
pub 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.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,