// first we create a transaction var tx = new Transaction() .from(utxo) .to(toAddress, 100000) .sign(privateKey); // we then extract the signature from the first input var inputIndex = 0; var signature = tx.getSignatures(privateKey)[inputIndex].signature; var scriptSig = Script.buildPublicKeyHashIn(publicKey, signature); var flags = Interpreter.SCRIPT_VERIFY_P2SH | Interpreter.SCRIPT_VERIFY_STRICTENC; var verified = Interpreter().verify(scriptSig, scriptPubkey, tx, inputIndex, flags);