Bitcoin Core 31.0.0
P2P Digital Currency
Loading...
Searching...
No Matches
WitnessV1Taproot Struct Reference

#include <addresstype.h>

Inheritance diagram for WitnessV1Taproot:
[legend]
Collaboration diagram for WitnessV1Taproot:
[legend]

Public Member Functions

 WitnessV1Taproot ()
 WitnessV1Taproot (const XOnlyPubKey &xpk)
Public Member Functions inherited from XOnlyPubKey
 XOnlyPubKey ()=default
 Construct an empty x-only pubkey.
 XOnlyPubKey (const XOnlyPubKey &)=default
XOnlyPubKeyoperator= (const XOnlyPubKey &)=default
bool IsFullyValid () const
 Determine if this pubkey is fully valid.
bool IsNull () const
 Test whether this is the 0 key (the result of default construction).
constexpr XOnlyPubKey (std::span< const unsigned char > bytes)
 Construct an x-only pubkey from exactly 32 bytes.
 XOnlyPubKey (const CPubKey &pubkey)
 Construct an x-only pubkey from a normal pubkey.
bool VerifySchnorr (const uint256 &msg, std::span< const unsigned char > sigbytes) const
 Verify a Schnorr signature against this public key.
uint256 ComputeTapTweakHash (const uint256 *merkle_root) const
 Compute the Taproot tweak as specified in BIP341, with *this as internal key:
bool CheckTapTweak (const XOnlyPubKey &internal, const uint256 &merkle_root, bool parity) const
 Verify that this is a Taproot tweaked output point, against a specified internal key, Merkle root, and parity.
std::optional< std::pair< XOnlyPubKey, bool > > CreateTapTweak (const uint256 *merkle_root) const
 Construct a Taproot tweaked output point with this point as internal key.
std::vector< CKeyIDGetKeyIDs () const
 Returns a list of CKeyIDs for the CPubKeys that could have been used to create this XOnlyPubKey.
std::vector< CPubKeyGetCPubKeys () const
 Returns this XOnlyPubKey with 0x02 and 0x03 prefixes.
CPubKey GetEvenCorrespondingCPubKey () const
const unsigned char & operator[] (int pos) const
const unsigned char * data () const
const unsigned char * begin () const
const unsigned char * end () const
unsigned char * data ()
unsigned char * begin ()
unsigned char * end ()
bool operator== (const XOnlyPubKey &other) const
bool operator< (const XOnlyPubKey &other) const
 SERIALIZE_METHODS (XOnlyPubKey, obj)
 Implement serialization without length prefixes since it is a fixed length.

Additional Inherited Members

Static Public Member Functions inherited from XOnlyPubKey
static constexpr size_t size ()
Static Public Attributes inherited from XOnlyPubKey
static const XOnlyPubKey NUMS_H
 Nothing Up My Sleeve point H Used as an internal key for provably disabling the key path spend see BIP341 for more details.

Detailed Description

Definition at line 88 of file addresstype.h.

Constructor & Destructor Documentation

◆ WitnessV1Taproot() [1/2]

WitnessV1Taproot::WitnessV1Taproot ( )
inline

Definition at line 90 of file addresstype.h.

Here is the call graph for this function:

◆ WitnessV1Taproot() [2/2]

WitnessV1Taproot::WitnessV1Taproot ( const XOnlyPubKey & xpk)
inlineexplicit

Definition at line 91 of file addresstype.h.

Here is the call graph for this function:

The documentation for this struct was generated from the following file: