UltrafastSecp256k1 3.50.0
Ultra high-performance secp256k1 elliptic curve cryptography library
Loading...
Searching...
No Matches
schnorr.hpp File Reference
#include <array>
#include <cstdint>
#include "secp256k1/scalar.hpp"
#include "secp256k1/point.hpp"

Go to the source code of this file.

Classes

struct  secp256k1::SchnorrSignature
 
struct  secp256k1::SchnorrKeypair
 
struct  secp256k1::SchnorrXonlyPubkey
 

Namespaces

namespace  secp256k1
 

Functions

SchnorrKeypair secp256k1::schnorr_keypair_create (const fast::Scalar &private_key)
 
SchnorrSignature secp256k1::schnorr_sign (const SchnorrKeypair &kp, const std::array< std::uint8_t, 32 > &msg, const std::array< std::uint8_t, 32 > &aux_rand)
 
SchnorrSignature secp256k1::schnorr_sign_verified (const SchnorrKeypair &kp, const std::array< std::uint8_t, 32 > &msg, const std::array< std::uint8_t, 32 > &aux_rand)
 
SchnorrSignature secp256k1::schnorr_sign (const fast::Scalar &private_key, const std::array< std::uint8_t, 32 > &msg, const std::array< std::uint8_t, 32 > &aux_rand)
 
SchnorrSignature secp256k1::schnorr_sign_verified (const fast::Scalar &private_key, const std::array< std::uint8_t, 32 > &msg, const std::array< std::uint8_t, 32 > &aux_rand)
 
bool secp256k1::schnorr_verify (const std::uint8_t *pubkey_x32, const std::uint8_t *msg32, const SchnorrSignature &sig)
 
bool secp256k1::schnorr_verify (const std::array< std::uint8_t, 32 > &pubkey_x, const std::array< std::uint8_t, 32 > &msg, const SchnorrSignature &sig)
 
bool secp256k1::schnorr_verify (const std::array< std::uint8_t, 32 > &pubkey_x, const std::uint8_t *msg32, const SchnorrSignature &sig)
 
bool secp256k1::schnorr_xonly_pubkey_parse (SchnorrXonlyPubkey &out, const std::uint8_t *pubkey_x32)
 
bool secp256k1::schnorr_xonly_pubkey_parse (SchnorrXonlyPubkey &out, const std::array< std::uint8_t, 32 > &pubkey_x)
 
SchnorrXonlyPubkey secp256k1::schnorr_xonly_from_keypair (const SchnorrKeypair &kp)
 
bool secp256k1::schnorr_verify (const SchnorrXonlyPubkey &pubkey, const std::array< std::uint8_t, 32 > &msg, const SchnorrSignature &sig)
 
bool secp256k1::schnorr_verify (const SchnorrXonlyPubkey &pubkey, const std::uint8_t *msg32, const SchnorrSignature &sig)
 
std::array< std::uint8_t, 32 > secp256k1::tagged_hash (const char *tag, const void *data, std::size_t len)
 
std::array< std::uint8_t, 32 > secp256k1::schnorr_pubkey (const fast::Scalar &private_key)