 |
Bitcoin Core
22.99.0
P2P Digital Currency
|
Go to the documentation of this file.
19 static const auto verify_handle = std::make_unique<ECCVerifyHandle>();
28 explicit FuzzedSignatureChecker(
FuzzedDataProvider& fuzzed_data_provider) : m_fuzzed_data_provider(fuzzed_data_provider)
32 bool CheckECDSASignature(
const std::vector<unsigned char>& scriptSig,
const std::vector<unsigned char>& vchPubKey,
const CScript& scriptCode,
SigVersion sigversion)
const override
52 virtual ~FuzzedSignatureChecker() {}
63 std::vector<std::vector<unsigned char>> stack;
64 (void)
EvalScript(stack, script_1,
flags, FuzzedSignatureChecker(fuzzed_data_provider), sig_version,
nullptr);
68 (void)
VerifyScript(script_1, script_2,
nullptr,
flags, FuzzedSignatureChecker(fuzzed_data_provider),
nullptr);
@ BASE
Bare scripts and BIP16 P2SH-wrapped redeemscripts.
bool IsValidFlagCombination(unsigned flags)
Flags that are not forbidden by an assert in script validation.
virtual bool CheckECDSASignature(const std::vector< unsigned char > &scriptSig, const std::vector< unsigned char > &vchPubKey, const CScript &scriptCode, SigVersion sigversion) const
CScript ConsumeScript(FuzzedDataProvider &fuzzed_data_provider, const bool maybe_p2wsh) noexcept
T PickValueInArray(const T(&array)[size])
bool VerifyScript(const CScript &scriptSig, const CScript &scriptPubKey, const CScriptWitness *witness, unsigned int flags, const BaseSignatureChecker &checker, ScriptError *serror)
virtual bool CheckSchnorrSignature(Span< const unsigned char > sig, Span< const unsigned char > pubkey, SigVersion sigversion, ScriptExecutionData &execdata, ScriptError *serror=nullptr) const
enum ScriptError_t ScriptError
@ WITNESS_V0
Witness v0 (P2WPKH and P2WSH); see BIP 141.
Serialized script, used inside transaction inputs and outputs.
FUZZ_TARGET_INIT(signature_checker, initialize_signature_checker)
bool EvalScript(std::vector< std::vector< unsigned char > > &stack, const CScript &script, unsigned int flags, const BaseSignatureChecker &checker, SigVersion sigversion, ScriptExecutionData &execdata, ScriptError *serror)
virtual bool CheckSequence(const CScriptNum &nSequence) const
void initialize_signature_checker()
virtual bool CheckLockTime(const CScriptNum &nLockTime) const