Difference between revisions of "History of OP RETURN"
(Created page with "The OP_RETURN opcode has a controversial history that has culminated to it being used as the primary mechanism to store arbitrary data on-chain. The original functionality was...") |
|||
Line 1: | Line 1: | ||
− | The OP_RETURN opcode has a controversial history that has culminated to it being used as the primary mechanism to store arbitrary data on-chain. The original functionality was intended to behave as a return operation that ends execution of the script. The original implementation had a critical bug | + | The OP_RETURN opcode has a controversial history that has culminated to it being used as the primary mechanism to store arbitrary data on-chain. The original functionality was intended to behave as a return operation that ends execution of the script. The original implementation had a critical bug and was quickly disabled by Satoshi Nakamoto. |
=== Original functionality === | === Original functionality === | ||
Line 6: | Line 6: | ||
OP_TRUE OP_RETURN | OP_TRUE OP_RETURN | ||
− | True would be returned from the script. | + | True would be returned from the script - because of this, this example script could prepend any unlocking script, granting the ability for one to steal anyone's Bitcoin. |
Revision as of 17:52, 6 January 2020
The OP_RETURN opcode has a controversial history that has culminated to it being used as the primary mechanism to store arbitrary data on-chain. The original functionality was intended to behave as a return operation that ends execution of the script. The original implementation had a critical bug and was quickly disabled by Satoshi Nakamoto.
Original functionality
OP_RETURN was originally intended to return the top value on the stack. Given the script:
OP_TRUE OP_RETURN
True would be returned from the script - because of this, this example script could prepend any unlocking script, granting the ability for one to steal anyone's Bitcoin.