An encapsulated public key.
More...
#include <pubkey.h>
An encapsulated public key.
Definition at line 42 of file pubkey.h.
◆ CPubKey() [1/3]
Construct an invalid public key.
Definition at line 91 of file pubkey.h.
◆ CPubKey() [2/3]
| CPubKey::CPubKey |
( |
const T |
pbegin, |
|
|
const T |
pend |
|
) |
| |
|
inline |
Construct a public key using begin/end iterators to byte data.
Definition at line 109 of file pubkey.h.
◆ CPubKey() [3/3]
| CPubKey::CPubKey |
( |
std::span< const uint8_t > |
_vch | ) |
|
|
inlineexplicit |
Construct a public key from a byte vector.
Definition at line 115 of file pubkey.h.
◆ begin()
◆ CheckLowS()
Check whether a signature is normalized (lower-S).
Definition at line 393 of file pubkey.cpp.
◆ data()
◆ Decompress()
| bool CPubKey::Decompress |
( |
| ) |
|
Turn this public key into an uncompressed public key.
Definition at line 327 of file pubkey.cpp.
◆ Derive()
Derive BIP32 child pubkey.
Definition at line 341 of file pubkey.cpp.
◆ end()
◆ GetHash()
Get the 256-bit hash of this public key.
Definition at line 175 of file pubkey.h.
◆ GetID()
| CKeyID CPubKey::GetID |
( |
| ) |
const |
|
inline |
Get the KeyID of this public key (hash of its serialization)
Definition at line 169 of file pubkey.h.
◆ GetLen()
Compute the length of a pubkey with a given first byte.
Definition at line 69 of file pubkey.h.
◆ Invalidate()
| void CPubKey::Invalidate |
( |
| ) |
|
|
inlineprivate |
Set this key data to be invalid.
Definition at line 79 of file pubkey.h.
◆ IsCompressed()
| bool CPubKey::IsCompressed |
( |
| ) |
const |
|
inline |
Check whether this is a compressed public key.
Definition at line 209 of file pubkey.h.
◆ IsFullyValid()
| bool CPubKey::IsFullyValid |
( |
| ) |
const |
fully validate whether this is a valid public key (more expensive than IsValid())
Definition at line 320 of file pubkey.cpp.
◆ IsValid()
| bool CPubKey::IsValid |
( |
| ) |
const |
|
inline |
◆ IsValidNonHybrid()
| bool CPubKey::IsValidNonHybrid |
( |
| ) |
const |
|
inlinenoexcept |
Check if a public key is a syntactically valid compressed or uncompressed key.
Definition at line 200 of file pubkey.h.
◆ operator[]()
◆ RecoverCompact()
Recover a public key from a compact signature.
Definition at line 300 of file pubkey.cpp.
◆ Serialize()
| void CPubKey::Serialize |
( |
Stream & |
s | ) |
const |
|
inline |
Implement serialization, as if this was a byte vector.
Definition at line 146 of file pubkey.h.
◆ Set()
| void CPubKey::Set |
( |
const T |
pbegin, |
|
|
const T |
pend |
|
) |
| |
|
inline |
Initialize a public key using begin/end iterators to byte data.
Definition at line 98 of file pubkey.h.
◆ size()
Simple read-only vector-like interface to the pubkey data.
Definition at line 121 of file pubkey.h.
◆ Unserialize()
| void CPubKey::Unserialize |
( |
Stream & |
s | ) |
|
|
inline |
◆ ValidSize()
◆ Verify()
Verify a DER signature (~72 bytes).
If this public key is not fully valid, the return value will be false.
Definition at line 283 of file pubkey.cpp.
◆ operator<
◆ operator==
Comparator implementation.
Definition at line 128 of file pubkey.h.
◆ operator>
◆ COMPACT_SIGNATURE_SIZE
◆ COMPRESSED_SIZE
◆ SIGNATURE_SIZE
◆ SIZE
secp256k1:
Definition at line 48 of file pubkey.h.
◆ vch
see www.keylength.com script supports up to 75 for single byte push
Just store the serialized data. Its length can very cheaply be computed from the first byte.
Definition at line 66 of file pubkey.h.
The documentation for this class was generated from the following files: