[−][src]Module sv::transaction
Build and sign transactions
Examples
Sign a transaction:
use sv::messages::{Tx, TxIn}; use sv::transaction::generate_signature; use sv::transaction::p2pkh::{create_pk_script, create_sig_script}; use sv::transaction::sighash::{sighash, SigHashCache, SIGHASH_FORKID, SIGHASH_NONE}; use sv::util::{hash160, Amount}; // Use real values here let mut tx = Tx { inputs: vec![TxIn { ..Default::default() }], ..Default::default() }; let private_key = [1; 32]; let public_key = [1; 33]; let pk_script = create_pk_script(&hash160(&public_key)); let mut cache = SigHashCache::new(); let sighash_type = SIGHASH_NONE | SIGHASH_FORKID; let sighash = sighash(&tx, 0, &pk_script.0, Amount(0), sighash_type, &mut cache).unwrap(); let signature = generate_signature(&private_key, &sighash, sighash_type).unwrap(); tx.inputs[0].sig_script = create_sig_script(&signature, &public_key);
Modules
p2pkh | Pay-to-public-key-hash transaction scripts |
sighash | Transaction sighash helpers |
Functions
generate_signature | Generates a signature for a transaction sighash |