Skip to content
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

Multisig script is no longer valid: OP_CHECKMULTISIG(VERIFY) with non-null nulldummy #95

Open
arhuaco opened this issue May 19, 2015 · 3 comments

Comments

@arhuaco
Copy link

arhuaco commented May 19, 2015

Hello there.

I'm getting this error:

OP_CHECKMULTISIG(VERIFY) with non-null nulldummy: [48, 68, 2, 32, 62, -19, -78, 21, -25, -76, -2, -88, -75, -49, 60, 104, 53, 80, 23, 111, 40, 39, -109, 27, 35, -48, 86, 21, 80, 60, 37, 72, -112, 99, -98, 0, 2, 32, 29, -73, 28, 4, -31, -10, -61, -3, -85, -109, 10, 67, -116, 63, 58, 43, -44, -72, 54, 48, 81, -107, 54, -95, 5, 66, -30, 95, -16, 20, -4, 51, 1]

With this Counterparty transaction that I am signing. If I understand correctly, some rules changed and some scripts that used to be valid are no longer valid because Bitcoin core implementations are more strict now. See: btcsuite/btcd#131

This is the signed transaction:

0100000001caa1cd766de01294451f1610a0a0136bc9176070f1c22494eb2e28443624aa8e00000000fd5d010047304402203eedb215e7b4fea8b5cf3c683550176f2827931b23d05615503c254890639e0002201db71c04e1f6c3fdab930a438c3f3a2bd4b83630519536a10542e25ff014fc3301483045022100a83b7b516982442700f350bdafa7aa10b91c7930aa05ca20dca82613670292d602207cda3992c1d224cfd0a2bf6b8b6d595e17a9abe1353795879b1e29d5507550cc014cc95241043e12a6cb1c7c156f789110abf8397b714047414b5a32c742f17ccf93ff23bdf3128f946207086bcef012558240cd16182c741123e93ed18327c4cd6ebac668a94104e4168c172283c7dfaa85d2004f763a28bf6d0f1602fc1452ccec62a7c8a66e422af1410fbf24a47355ddc43dfe3491cb1b806574ccd1c434680466dcff926f01410427db4059d24bab05df3f6bcc768fb01bd976b973f93e72cce2dfbfbed5a32056c9040a2c2ea4c10c812a54fed7ff2e6a917dbc843362d398f6ace4000fafa5c653aeffffffff0336150000000000001976a91451bb89eb8fcb138174114315fc8eaf054395c0cc88ac781e00000000000089512103ff58dcadeb5a447162ab629d309c2a28043a3437884b7b280fcfff9baa3119c021024131478633f18da1caec8ee455108b72feb19d70baae9ca86638661e47562bfa410427db4059d24bab05df3f6bcc768fb01bd976b973f93e72cce2dfbfbed5a32056c9040a2c2ea4c10c812a54fed7ff2e6a917dbc843362d398f6ace4000fafa5c653ae9268000000000000c952410427db4059d24bab05df3f6bcc768fb01bd976b973f93e72cce2dfbfbed5a32056c9040a2c2ea4c10c812a54fed7ff2e6a917dbc843362d398f6ace4000fafa5c641043e12a6cb1c7c156f789110abf8397b714047414b5a32c742f17ccf93ff23bdf3128f946207086bcef012558240cd16182c741123e93ed18327c4cd6ebac668a94104e4168c172283c7dfaa85d2004f763a28bf6d0f1602fc1452ccec62a7c8a66e422af1410fbf24a47355ddc43dfe3491cb1b806574ccd1c434680466dcff926f0153ae00000000

More data here:

http://pastebin.com/hYDy1pD3

I can provide more data if needed.

Thanks!

@arhuaco
Copy link
Author

arhuaco commented May 19, 2015

I checked carefully and I think I don't have bugs in the code. Signing with Bitcoind works.

I just noticed that my main reference (bitscavenger.blogspot.com/2014/04/multisig-with-pybitcointools.html) has this note:

"Currently blockchain.info does not like multisig transactions generated like this so we have to submit it to eligius."

So it seems these transactions are currently considered nonstandard by (I guess most) nodes.

@arhuaco
Copy link
Author

arhuaco commented May 19, 2015

Hello there. I don't know well how this works but I put a 75USD bounty on the (what I think it is an) issue:

https://www.bountysource.com/issues/15832046-multisig-script-is-no-longer-valid-op_checkmultisig-verify-with-non-null-nulldummy

@rubensayshi
Copy link
Contributor

bitcoin/bitcoin#8079

the way to fix it is by having 2x as many non-multisig inputs than multisig inputs/outputs, which will tip the balance of bytes:sigop in your favor.

and move away from bare multisig because spending it is problamtic and this won't change

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants