Struct secp256k1::Secp256k1
[−]
[src]
pub struct Secp256k1 { /* fields omitted */ }
The secp256k1 engine, used to execute all signature operations
Methods
impl Secp256k1
[src]
pub fn sign_schnorr(
&self,
msg: &Message,
sk: &SecretKey
) -> Result<Signature, Error>
[src]
&self,
msg: &Message,
sk: &SecretKey
) -> Result<Signature, Error>
Create a Schnorr signature
pub fn verify_schnorr(
&self,
msg: &Message,
sig: &Signature,
pk: &PublicKey
) -> Result<(), Error>
[src]
&self,
msg: &Message,
sig: &Signature,
pk: &PublicKey
) -> Result<(), Error>
Verify a Schnorr signature
pub fn recover_schnorr(
&self,
msg: &Message,
sig: &Signature
) -> Result<PublicKey, Error>
[src]
&self,
msg: &Message,
sig: &Signature
) -> Result<PublicKey, Error>
Retrieves the public key for which sig
is a valid signature for msg
.
Requires a verify-capable context.
impl Secp256k1
[src]
pub fn new() -> Secp256k1
[src]
Creates a new Secp256k1 context
pub fn with_caps(caps: ContextFlag) -> Secp256k1
[src]
Creates a new Secp256k1 context with the specified capabilities
pub fn without_caps() -> Secp256k1
[src]
Creates a new Secp256k1 context with no capabilities (just de/serialization)
pub fn sign(&self, msg: &Message, sk: &SecretKey) -> Result<Signature, Error>
[src]
Constructs a signature for msg
using the secret key sk
and RFC6979 nonce
Requires a signing-capable context.
pub fn sign_recoverable(
&self,
msg: &Message,
sk: &SecretKey
) -> Result<RecoverableSignature, Error>
[src]
&self,
msg: &Message,
sk: &SecretKey
) -> Result<RecoverableSignature, Error>
Constructs a signature for msg
using the secret key sk
and RFC6979 nonce
Requires a signing-capable context.
pub fn recover(
&self,
msg: &Message,
sig: &RecoverableSignature
) -> Result<PublicKey, Error>
[src]
&self,
msg: &Message,
sig: &RecoverableSignature
) -> Result<PublicKey, Error>
Determines the public key for which sig
is a valid signature for
msg
. Requires a verify-capable context.
pub fn verify(
&self,
msg: &Message,
sig: &Signature,
pk: &PublicKey
) -> Result<(), Error>
[src]
&self,
msg: &Message,
sig: &Signature,
pk: &PublicKey
) -> Result<(), Error>
Checks that sig
is a valid ECDSA signature for msg
using the public
key pubkey
. Returns Ok(true)
on success. Note that this function cannot
be used for Bitcoin consensus checking since there may exist signatures
which OpenSSL would verify but not libsecp256k1, or vice-versa. Requires a
verify-capable context.
Trait Implementations
impl Send for Secp256k1
[src]
impl Sync for Secp256k1
[src]
impl Clone for Secp256k1
[src]
fn clone(&self) -> Secp256k1
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl PartialEq for Secp256k1
[src]
fn eq(&self, other: &Secp256k1) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests for !=
.
impl Eq for Secp256k1
[src]
impl Debug for Secp256k1
[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>
[src]
Formats the value using the given formatter. Read more