Author: ZmnSCPxj 2018-05-01 07:12:35
Published on: 2018-05-01T07:12:35+00:00
This message discusses the key points of a paper on SIGHASH_NOINPUT. It explains that this feature removes all inputs of the transaction copy before signing/verifying and can be combined with SIGHASH_SINGLE but is dangerous to combine with SIGHASH_NONE or possibly pointless to combine with SIGHASH_ANYONECANPAY. The message then goes on to describe the four kinds of transactions used in the study, including funding transactions, offchain trigger transactions paying out to the update transaction script, offchain update transactions signed with SIGHASH_NOINPUT flags, and offchain settlement transactions. The update transaction script has two branches: a CSV-encumbered N-of-N "settlement" branch and a CLTV-encumbered N-of-N "update" branch. Notably, past Unix timestamps are used for the CLTV encumbrance on the update. This ensures that if a past update transaction is confirmed, it can be spent using any later update transaction since CLTV uses stack top.
Updated on: 2023-05-24T23:51:14.453857+00:00