Bitcoin ABC 0.30.5
P2P Digital Currency
|
#include <coins.h>
#include <hash.h>
#include <pubkey.h>
#include <script/interpreter.h>
#include <script/keyorigin.h>
#include <script/sighashtype.h>
#include <streams.h>
Go to the source code of this file.
Classes | |
class | BaseSignatureCreator |
Interface for signature creators. More... | |
class | MutableTransactionSignatureCreator |
A signature creator for transactions. More... | |
struct | SignatureData |
Typedefs | |
typedef std::pair< CPubKey, std::vector< uint8_t > > | SigPair |
Functions | |
template<typename Stream , typename... X> | |
void | SerializeToVector (Stream &s, const X &...args) |
template<typename Stream , typename... X> | |
void | UnserializeFromVector (Stream &s, X &...args) |
template<typename Stream > | |
void | DeserializeHDKeypaths (Stream &s, const std::vector< uint8_t > &key, std::map< CPubKey, KeyOriginInfo > &hd_keypaths) |
template<typename Stream > | |
void | SerializeHDKeypaths (Stream &s, const std::map< CPubKey, KeyOriginInfo > &hd_keypaths, uint8_t type) |
bool | ProduceSignature (const SigningProvider &provider, const BaseSignatureCreator &creator, const CScript &scriptPubKey, SignatureData &sigdata) |
Produce a script signature using a generic signature creator. More... | |
bool | SignSignature (const SigningProvider &provider, const CScript &fromPubKey, CMutableTransaction &txTo, unsigned int nIn, const Amount amount, SigHashType sigHashType) |
Produce a script signature for a transaction. More... | |
bool | SignSignature (const SigningProvider &provider, const CTransaction &txFrom, CMutableTransaction &txTo, unsigned int nIn, SigHashType sigHashType) |
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 | IsSolvable (const SigningProvider &provider, const CScript &script) |
Check whether we know how to sign for an output like this, assuming we have all private keys. More... | |
bool | SignTransaction (CMutableTransaction &mtx, const SigningProvider *provider, const std::map< COutPoint, Coin > &coins, SigHashType sigHashType, std::map< int, std::string > &input_errors) |
Sign the CMutableTransaction. More... | |
Variables | |
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... | |
SignatureData DataFromTransaction | ( | const CMutableTransaction & | tx, |
unsigned int | nIn, | ||
const CTxOut & | txout | ||
) |
void DeserializeHDKeypaths | ( | Stream & | s, |
const std::vector< uint8_t > & | key, | ||
std::map< CPubKey, KeyOriginInfo > & | hd_keypaths | ||
) |
bool IsSolvable | ( | const SigningProvider & | provider, |
const CScript & | script | ||
) |
Check whether we know how to sign for an output like this, assuming we have all private keys.
While this function does not need private keys, the passed keystore is used to look up public keys and redeemscripts by hash. Solvability is unrelated to whether we consider this output to be ours.
Definition at line 424 of file sign.cpp.
bool ProduceSignature | ( | const SigningProvider & | provider, |
const BaseSignatureCreator & | creator, | ||
const CScript & | scriptPubKey, | ||
SignatureData & | sigdata | ||
) |
void SerializeHDKeypaths | ( | Stream & | s, |
const std::map< CPubKey, KeyOriginInfo > & | hd_keypaths, | ||
uint8_t | type | ||
) |
void SerializeToVector | ( | Stream & | s, |
const X &... | args | ||
) |
bool SignSignature | ( | const SigningProvider & | provider, |
const CScript & | fromPubKey, | ||
CMutableTransaction & | txTo, | ||
unsigned int | nIn, | ||
const Amount | amount, | ||
SigHashType | sigHashType | ||
) |
bool SignSignature | ( | const SigningProvider & | provider, |
const CTransaction & | txFrom, | ||
CMutableTransaction & | txTo, | ||
unsigned int | nIn, | ||
SigHashType | sigHashType | ||
) |
bool SignTransaction | ( | CMutableTransaction & | mtx, |
const SigningProvider * | provider, | ||
const std::map< COutPoint, Coin > & | coins, | ||
SigHashType | sigHashType, | ||
std::map< int, std::string > & | input_errors | ||
) |
Sign the CMutableTransaction.
Definition at line 441 of file sign.cpp.
void UnserializeFromVector | ( | Stream & | s, |
X &... | args | ||
) |
void UpdateInput | ( | CTxIn & | input, |
const SignatureData & | data | ||
) |
|
extern |
|
extern |