OP_CAT + OP_CHECKSIGFROMSTACK: how to prevent cross-UTXO signature reuse?

Following up on #130598.

I built a CAT + CSFS oracle-style script on signet (commit, reveal):

OP_CAT OP_SHA256 <oracle_pubkey> OP_CHECKSIGFROMSTACK

Witness: [sig, PART1, PART2] Message: SHA256(PART1 || PART2)

Since CSFS only checks the message, the same (sig, PART1, PART2) appears to be reusable across multiple UTXOs with compatible scripts.

For price oracles this is usually acceptable. But if the goal is single-use authorization (i.e., the signature should only be valid for one specific UTXO):

  • Is committing to the outpoint inside the message the only general approach?
  • Or is there a script-level pattern that avoids requiring the oracle to wait for the UTXO to exist before signing?


from Recent Questions - Bitcoin Stack Exchange https://ift.tt/wHOPXSB
via IFTTT

Popular posts from this blog

Crypto Exec Warns Tokenization Is Moving Faster Than Expected

Bitcoin Mining Could Be Strengthening The Ruble, Russian Central Bank Says

Nigerian SEC Partners With Police To Tackle Crypto Ponzi Schemes – Details