Increasing the OP_CODESEPARATOR weight by 520 (p2sh redeemScript size limit) + 40 (stripped txinput size) + 8 (stripped txoutput size) + a few more (overhead for varints) = 572ish bytes should be enough to completely eliminate any vulnerability caused by OP_CODESEPARATOR within P2SH transactions without the need to remove it ever. I think it is worth attempting to be a bit more clever than such a blunt rule, but it would be much better than eliminating OP_CODESEPARATOR within P2SH entirely. Remember that the goal isn't to eliminate OP_CODESEPARATOR per se; the goal is to eliminate the vulnerability associated with it. On Mon, Mar 11, 2019 at 12:47 PM Dustin Dettmer via bitcoin-dev < bitcoin-dev@lists.linuxfoundation.org> wrote: > What about putting it in a deprecated state for some time. Adjust the > transaction weight so using the op code is more expensive (10x, 20x?) and > get the word out that it will be removed in the future. > > You could even have nodes send a reject code with the message > “OP_CODESEPARATOR is depcrecated.” >