Questions tagged [bip347-op-cat]
BIP 347 proposes adding OP_CAT in Tapscript. OP_CAT pops the two top stack elements, concatenates them, and pushes the result back on the stack.
8 questions
1
vote
1
answer
167
views
How does a 0-conf signature bond work?
Today in the on-going OP_CAT debate, proponents claim that OP_CAT enables an opt-in mechanism that produces 0-conf transactions that cannot be doublespent without leaking the private key.
How does ...
1
vote
1
answer
112
views
How does the addition of OP_CAT improve Lightning?
In a debate about OP_CAT, it was claimed without further evidence that the addition of the OP_CAT opcode would "improve Lightning". Could you expound how OP_CAT would improve lightning?
3
votes
1
answer
192
views
What does `OP_CHECKSEPARATESIG` refer to?
I was reading about potential OP_CAT applications and read about OP_CHECKSEPARATESIG. This seems to refer to some shorthand, as I am not aware of an opcode by that designation. What is ...
3
votes
1
answer
241
views
How can OP_CAT be used to implement additional covenants?
OP_CAT takes the top 2 stack items, concatenates them and pushes the result to the stack. How can this be used to add new restrictions how a UTXO can be spent? (Beyond the existing signature and time ...
1
vote
1
answer
164
views
What is the OP_CAT proposal?
What does the proposed OP_CAT opcode do? What is the history of the OP_CAT opcode?
1
vote
1
answer
148
views
Is it possible to build an Automated Market Maker with OP_CAT?
OP_CAT (BIP 347) would be a fairly simple code change, but advocates have been abuzz with creative ideas what could be built if OP_CAT were introduced. One concern that comes up in the context is ...
0
votes
1
answer
95
views
Consensus Question
With all the recent developments of the spammers and those who want to filter them. I have a few things I don't get. They mention the bug that wasn't fixed (CVE-2023-50428). As I understand, this &...
2
votes
0
answers
58
views
Ways of emulating OP_CAT
I understand that it's possible to emulate concatenation for up to 32 bits by calculating:
x || y = x + (y << len(x)),
where the left shift (L_SHIFT) can be performed through multiple ...