New answers tagged

1 vote

What is a sane Miniscript? How does it differ to a valid Miniscript?

A WIP "Work In Progress" that may be of interest to you is the Miniscript Templates repo: https://github.com/Blockstream/miniscript-templates One of the goals is to curate miniscript ...
RandyMcMillan's user avatar
1 vote

Is it possible to use Bitcoin Script to implement a quantum-resistant locking script that would be safe to spend from?

With current version of Bitcoin Script, that is not possible. However, with some upgrades to Bitcoin's ScriptVM it would become possible, the prerequisites are: A way to commit to transaction's ...
bca-0353f40e's user avatar
  • 1,014
4 votes
Accepted

What is an "empty vector" in Bitcoin?

I think we first need to distinguish between the script stack as an abstract concept as it exists during script execution, and the initial stack serialization in the transaction input witness. The ...
Pieter Wuille's user avatar
3 votes
Accepted

Is the signature check performed when the signature is the empty vector?

For pre-Tapscript opcodes (CHECKSIG and CHECKMULTISIG), the empty signature is checked against the public key. Note that by standardness if the check fails, the signature is required to be the empty ...
Antoine Poinsot's user avatar
3 votes
Accepted

What would happen if we provide to OP_CHECKMULTISIG more than threshold number (m) of signatures?

Since the activation of BIP147 (nulldummy softfork) in 2017, the answer is no, this will fail. Before that point it would have been generally non-standard but allowed. An input to OP_CHECKMULISIG ...
Pieter Wuille's user avatar
1 vote
Accepted

What are the all benefits/advantages of OP_CHECKSIGADD over OP_CHECKMULTISIG?

You've correctly described three of the benefits: OP_CHECKMULTISIG is inefficient, since it performs up to as many signature checks as there are public keys. OP_CHECKSIGADD always performs one check ...
Vojtěch Strnad's user avatar
3 votes
Accepted

non-mandatory-script-verify-flag (Invalid Schnorr signature) when trying to reveal a TR output

Your transaction is a key path spend, not a script path spend (it only has one witness item, the signature). Perhaps you've calculated the sighash for a script path spend but then only included the ...
Vojtěch Strnad's user avatar
1 vote

Question on the integer size

Question on the integer size Bitcoin uses many sizes of integer from 8-bit integers up to at least 256-bit integers. It also has variable-size integers. It uses a mix of signed and unsigned integers. ...
RedGrittyBrick's user avatar
4 votes
Accepted

How is this transaction valid?

The signature is actually valid. The sighash is 8cc2772af5af61583c5a7ae89f777d3173afa470ce8b1bfa5f8d4b9a54635ccb and you'll find that the signature does indeed validate. So the question is how is this ...
Andrew Chow's user avatar
  • 68.6k

Top 50 recent answers are included