UltrafastSecp256k1 3.50.0
Ultra high-performance secp256k1 elliptic curve cryptography library
Loading...
Searching...
No Matches
segwit.hpp File Reference
#include <array>
#include <cstdint>
#include <cstddef>
#include <vector>

Go to the source code of this file.

Classes

struct  secp256k1::WitnessProgram
 

Namespaces

namespace  secp256k1
 

Enumerations

enum class  secp256k1::WitnessProgramType : std::uint8_t {
  secp256k1::NONE = 0 , secp256k1::P2WPKH = 1 , secp256k1::P2WSH = 2 , secp256k1::P2TR = 3 ,
  secp256k1::UNKNOWN = 4
}
 

Functions

std::array< std::uint8_t, 22 > secp256k1::segwit_scriptpubkey_p2wpkh (const std::uint8_t pubkey_hash[20]) noexcept
 
std::array< std::uint8_t, 34 > secp256k1::segwit_scriptpubkey_p2wsh (const std::uint8_t script_hash[32]) noexcept
 
std::array< std::uint8_t, 34 > secp256k1::segwit_scriptpubkey_p2tr (const std::uint8_t output_key[32]) noexcept
 
std::vector< std::uint8_t > secp256k1::segwit_scriptpubkey (std::uint8_t version, const std::uint8_t *program, std::size_t program_len) noexcept
 
bool secp256k1::is_witness_program (const std::uint8_t *script, std::size_t script_len) noexcept
 
WitnessProgram secp256k1::parse_witness_program (const std::uint8_t *script, std::size_t script_len) noexcept
 
std::array< std::uint8_t, 32 > secp256k1::witness_script_hash (const std::uint8_t *script, std::size_t script_len) noexcept
 
std::array< std::uint8_t, 25 > secp256k1::p2wpkh_script_code (const std::uint8_t pubkey_hash[20]) noexcept
 
bool secp256k1::validate_p2wpkh_witness (const std::vector< std::vector< std::uint8_t > > &witness, const std::uint8_t program[20]) noexcept
 
bool secp256k1::validate_p2wsh_witness (const std::vector< std::vector< std::uint8_t > > &witness, const std::uint8_t program[32]) noexcept
 
std::size_t secp256k1::witness_weight (const std::vector< std::vector< std::uint8_t > > &witness) noexcept