Method: Bitcoin::Tx#verify_input_sig
- Defined in:
- lib/bitcoin/tx.rb
#verify_input_sig(input_index, script_pubkey, amount: nil, flags: STANDARD_SCRIPT_VERIFY_FLAGS, prevouts: []) ⇒ Boolean
verify input signature.
233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 |
# File 'lib/bitcoin/tx.rb', line 233 def verify_input_sig(input_index, script_pubkey, amount: nil, flags: STANDARD_SCRIPT_VERIFY_FLAGS, prevouts: []) script_sig = inputs[input_index].script_sig has_witness = inputs[input_index].has_witness? if script_pubkey.p2sh? flags << SCRIPT_VERIFY_P2SH redeem_script = Script.parse_from_payload(script_sig.chunks.last) script_pubkey = redeem_script if redeem_script.p2wpkh? end if has_witness verify_input_sig_for_witness(input_index, script_pubkey, amount, flags, prevouts) else verify_input_sig_for_legacy(input_index, script_pubkey, flags) end end |