Re: [bitcoin-dev] Note on Sequence Lock Upgrades Defect

2021-09-09 Thread Antoine Riard via bitcoin-dev
Hi Jeremy, Answering here from #22871 discussions. I agree on the general principle to not blur mempool policies signaling in committed transaction data. Beyond preserving upgradeability, another good argument is to let L2 nodes update the mempool policies signaling their pre-signed transactions

Re: [bitcoin-dev] Note on Sequence Lock Upgrades Defect

2021-09-08 Thread Jeremy via bitcoin-dev
See the current patchset proposed: https://github.com/bitcoin/bitcoin/pull/22871/commits Two things are happening that are separate: 1) Fixing the semantics of arg in OP_CHECKSEQUENCEVERIFY 2) Fixing the semantics on nSequence in each tx input There is no sense in conditioning part 1 on RBF or

Re: [bitcoin-dev] Note on Sequence Lock Upgrades Defect

2021-09-06 Thread darosior via bitcoin-dev
Hi Jeremy, I think it would be nice to have and suggested something similar (enforce minimality) in the context of Miniscript a few months ago [0]. However your code: const bool seq_is_reserved = (txin.nSequence < CTxIn::SEQUENCE_FINAL-2) && ( // when sequence is set to disabled, it is reserved

Re: [bitcoin-dev] Note on Sequence Lock Upgrades Defect

2021-09-05 Thread Jeremy via bitcoin-dev
BIP 68 says >= 2: *This specification defines the meaning of sequence numbers for transactions with an nVersion greater than or equal to 2 for which the rest of this specification relies on.* BIP-112 says not < 2 // Fail if the transaction's version number is not set high // enough to trigger BIP 6

Re: [bitcoin-dev] Note on Sequence Lock Upgrades Defect

2021-09-05 Thread David A. Harding via bitcoin-dev
On Fri, Sep 03, 2021 at 08:32:19PM -0700, Jeremy via bitcoin-dev wrote: > Hi Bitcoin Devs, > > I recently noticed a flaw in the Sequence lock implementation with respect > to upgradability. It might be the case that this is protected against by > some transaction level policy (didn't see any in po

Re: [bitcoin-dev] Note on Sequence Lock Upgrades Defect

2021-09-04 Thread Jeremy via bitcoin-dev
In working on resolving this issue, one issue that has come up is what sequence values get used by wallet implementations? E.g., in Bitcoin Core a script test says BIP125_SEQUENCE_NUMBER = 0xfffd # Sequence number that is rbf-opt-in (BIP 125) and csv-opt-out (BIP 68) Are any other numbers c