2

Given OP_VER (0x62) was never used onchain, is disabled and is not considered useful can its meaning be stripped and it be made OP_SUCCESS for the purposes of introducing a new different opcode in future?

As Andrew Poelstra describes "..there was an opcode called OP_VER, OP version. I can see some grimaces. It would push the client version onto the stack. This meant that when you upgraded Bitcoin say from 0.1 to 0.2, that’s a hard fork. Now script will execute OP_VER and push 0.1 onto the stack for some people and 0.2 onto the stack for other people. You’ve forked your chain. Fortunately nobody ever used this opcode which is good. "

3
  • BIP342 does in fact turn it into an OP_SUCCESS. Is that a sufficient answer? – Pieter Wuille Jul 29 '20 at 17:50
  • BIP 342 doesn't refer to 0x62 though...? Unless my BIP foo is off... – Michael Folkson Jul 29 '20 at 18:12
  • 1
    Doh it is. I just can't convert from hex :/ – Michael Folkson Jul 29 '20 at 18:19
3

BIP 342 does exactly this. (Thanks Pieter)

2

Since it was set to an error by Satoshi and not a SUCCESS, this would be a hardfork for all clients in-between no matter if this was already used onchain before.

Just imagine a miner with the new software (which redefines VER as SUCCESS) mining a transaction containing such an OP. All the clients between 0.3.5 and the new one would refuse the block, while all the updated ones would accept it: chain split.

2
  • This would be true if disabled opcodes were being made OP_SUCCESS for SegWit v0 spends but we are only making them OP_SUCCESS for SegWit v1 spends and future SegWit versions. Assuming Taproot is activated, unupgraded clients will treat SegWit v1 spends as anyone-can-spend whether they include a previously disabled opcode or not. – Michael Folkson Oct 26 '20 at 0:43
  • 1
    Yeah i assumed you were not talking about Segwit but raw Script OPs – darosior Oct 26 '20 at 9:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.