-
Notifications
You must be signed in to change notification settings - Fork 128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OP_CHECKSIGADD got left behind! #151
base: master
Are you sure you want to change the base?
Conversation
Is this function ever used by something that invokes it in a tapscript context? If so, could you add a regression test? |
Hey, yeah so if you try the following transaction, btcdeb wont be able to decode the script itself even if the script lead to an invalid transaction (on purpose, the script itself will be reverted after stack execution):
After the change, the transaction can be executed without any problems. Here is a valid version of the transaction. This transaction includes empty witnesses (so it works with OP_CHECKSIGADD). There is an other bug in btcdeb code. You can reproduce it via the following command (I did not fix it yet.):
Currently this valid transaction error with the following: The error is due to an invalid opcode being decoded: 32765. I would have to debug the code futher to find the cause of that bug. As mentioned in BIP 342, this should be possible: https://en.bitcoin.it/wiki/BIP_0342 Potentially, we should add a check to verify that the transaction is taproot, if its not taproot, this opcode is not valid. This opcode is only usable for tapscript transactions. Here the transaction on my local testnet: |
thanks man, this works like a charm, so far so good when I am using OP_CHECKSIGADD with |
OP_CHECKSIGADD got left behind!
We can not parse a transaction containing OP_CHECKSIGADD opcodes due to the following check: