Frequently Asked Questions

# Where do I find the source code?
In the GitHub repository.
# How do I add an initial stack to a script?
You can push the required stack items at the beginning of a script.
# How does the script debugger differ from Bitcoin Core's script interpreter?
Here is a non-exhaustive list of differences:
  • Because we're executing scripts without knowing the rest of the transaction, several opcodes behave differently:
    • All signature-checking opcodes succeed on non-empty signatures and public keys. Consequently, OP_CODESEPARATOR does not do anything.
    • OP_CHECKLOCKTIMEVERIFY and OP_CHECKSEQUENCEVERIFY succeed on any valid locktime value.
  • Stack limits and the opcode limit are not enforced.
  • Both OP_CHECKMULTISIG and OP_CHECKSIGADD are implemented and can be used in the same script, which wouldn't normally be possible.
  • Standardness rules are not enforced, though some are implemented as warnings.