More thoughts on NOINPUT safety



Summary:

In a recent conversation regarding the use of codeseparator for enforcing timelocks in Lightning Network transactions, ZmnSCPxj suggested an alternative method of requiring locktime using OP_CHECKLOCKTIMEVERIFY and OP_DROP. He also proposed using OP_CHECKDLSVERIFY and OP_CHECKDLS for update transactions with a set timelock. Settlement transactions would have an absolute or relative timelock via sequence and commit to the script code. However, ZmnSCPxj expressed concern about the lack of OP_CSV in the settlement branch. The issue of relative timelocks was addressed by refusing to sign a settlement transaction that doesn't have the timelock set. This would make the use of OP_CSV redundant. The conversation also touched on the concept of offchain transactions and how they are affected by settlement transactions. Specifically, if an update transaction is placed on-chain, it is not immediately spendable by the corresponding settlement transaction due to BIP-68 being enforced by consensus.


Updated on: 2023-05-23T01:57:56.497380+00:00