Bitcoin Core 32.99.0
P2P Digital Currency
Classes | Typedefs | Functions | Variables
sign.h File Reference
#include <attributes.h>
#include <consensus/amount.h>
#include <pubkey.h>
#include <script/interpreter.h>
#include <script/keyorigin.h>
#include <script/script.h>
#include <script/signingprovider.h>
#include <uint256.h>
#include <cstdint>
#include <map>
#include <optional>
#include <set>
#include <utility>
#include <vector>
Include dependency graph for sign.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SignOptions
 
class  BaseSignatureCreator
 Interface for signature creators. More...
 
class  MutableTransactionSignatureCreator
 A signature creator for transactions. More...
 
struct  SignatureData
 

Typedefs

typedef std::pair< CPubKey, std::vector< unsigned char > > SigPair
 

Functions

bool ProduceSignature (const SigningProvider &provider, const BaseSignatureCreator &creator, const CScript &scriptPubKey, SignatureData &sigdata)
 Produce a script signature using a generic signature creator. More...
 
SignatureData DataFromTransaction (const CMutableTransaction &tx, unsigned int nIn, const CTxOut &txout)
 Extract signature data from a transaction input, and insert it. More...
 
void UpdateInput (CTxIn &input, const SignatureData &data)
 
bool IsSegWitOutput (const SigningProvider &provider, const CScript &script)
 Check whether a scriptPubKey is known to be segwit. More...
 
bool SignTransaction (CMutableTransaction &mtx, const SigningProvider *provider, const std::map< COutPoint, Coin > &coins, const SignOptions &options, std::map< int, bilingual_str > &input_errors)
 Sign the CMutableTransaction. More...
 

Variables

const BaseSignatureChecker & DUMMY_CHECKER
 A signature checker that accepts all signatures. More...
 
const BaseSignatureCreator & DUMMY_SIGNATURE_CREATOR
 A signature creator that just produces 71-byte empty signatures. More...
 
const BaseSignatureCreator & DUMMY_MAXIMUM_SIGNATURE_CREATOR
 A signature creator that just produces 72-byte empty signatures. More...
 

Typedef Documentation

◆ SigPair

typedef std::pair<CPubKey, std::vector<unsigned char> > SigPair

Definition at line 82 of file sign.h.

Function Documentation

◆ DataFromTransaction()

SignatureData DataFromTransaction ( const CMutableTransaction &  tx,
unsigned int  nIn,
const CTxOut &  txout 
)

Extract signature data from a transaction input, and insert it.

Definition at line 858 of file sign.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsSegWitOutput()

bool IsSegWitOutput ( const SigningProvider &  provider,
const CScript &  script 
)

Check whether a scriptPubKey is known to be segwit.

Definition at line 1011 of file sign.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ProduceSignature()

bool ProduceSignature ( const SigningProvider &  provider,
const BaseSignatureCreator &  creator,
const CScript &  scriptPubKey,
SignatureData &  sigdata 
)

Produce a script signature using a generic signature creator.

Definition at line 750 of file sign.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SignTransaction()

bool SignTransaction ( CMutableTransaction &  mtx,
const SigningProvider *  provider,
const std::map< COutPoint, Coin > &  coins,
const SignOptions &  options,
std::map< int, bilingual_str > &  input_errors 
)

Sign the CMutableTransaction.

Definition at line 1030 of file sign.cpp.

Here is the call graph for this function:

◆ UpdateInput()

void UpdateInput ( CTxIn &  input,
const SignatureData &  data 
)

Definition at line 923 of file sign.cpp.

Here is the caller graph for this function:

Variable Documentation

◆ DUMMY_CHECKER

const BaseSignatureChecker& DUMMY_CHECKER
extern

A signature checker that accepts all signatures.

Definition at line 958 of file sign.cpp.

◆ DUMMY_MAXIMUM_SIGNATURE_CREATOR

const BaseSignatureCreator& DUMMY_MAXIMUM_SIGNATURE_CREATOR
extern

A signature creator that just produces 72-byte empty signatures.

Definition at line 1009 of file sign.cpp.

◆ DUMMY_SIGNATURE_CREATOR

const BaseSignatureCreator& DUMMY_SIGNATURE_CREATOR
extern

A signature creator that just produces 71-byte empty signatures.

Definition at line 1008 of file sign.cpp.