So, I just came across this Bitcoin transaction link and it got me thinking... what if OP_CAT is actually already implemented in some way? The transaction shows some interesting patterns that might hint at it.
If you look closely, there are aspects that seem to mimic the functionality OP_CAT would provide. This has me curious about whether some developers have been quietly experimenting with it.
Does anyone else see the potential here, or am I just reading too much into this? Would love to hear your thoughts on whether OP_CAT could already be in the mix.
So here's what's going on in here.
In tapscript, the hex value 0x7e (or 126 in decimal) is a valid opcode (OP_SUCCESS) and you can verify that by looking at the validation of tapscripts. However, when Satoshi designed the first client, he assigned that value (126, 0x7e) as the OP_CAT value, which is disabled (verify that by looking in here). Therefore it's either a mistake of mempool.space which instead of OP_SUCCESS, displays OP_CAT, or maybe deliberate choice to support the potential upcoming softfork.
You cannot concatenate two strings in Bitcoin, as we speak.
so, we see script ( "What " + "if " + "we " + "already " + "have " + "OP_CAT?" ) equals ( "What if we already have OP_CAT?" )
but it executes as trivial "return true"?
If you read "buffalo" on an elephant's cage, don't believe your eyes.
(c) Kozma Prutkov, 1854
There is no OP_CAT anymore. The script inside a Taproot script is interpreted differently and when it encounters 0x7e, it is interpreted as OP_SUCCESS.
What are you trying to do here?
You know OP_SUCCESS is nonstandard and such transactions won't propagate, right? It would be difficult for you to create that branch, convince someone to send coins to, then spend it using OP_SUCCESS
I am just asking questions.
These are not my transactions (funding&spending), but I am interested in bitcoin innovations
Today I know about it. A week ago I didn't
The transaction was created by @rot13maxi, a supporter of OP_CAT: https://x.com/rot13maxi/status/1822342752505413814.
I read that OP_CAT was disabled in 2010. Is there any recorded transaction that used it before that?
Here's a fun way to spot a non-standard transaction: If the transaction fee is a round number, it was probably constructed by hand!