BIP 68 Questions

BIP 68 Questions
2015-07-03  1:19 ` Rusty Russell
  
From: Rusty Russell @ 2015-07-02  2:38 UTC (permalink / raw)
  To: Mark Friedenbach;  bitcoin-dev

Hi Mark,

        It looks like the code in BIP 68 compares the input's nSequence
against the transaction's nLockTime:

        if ((int64_t)tx.nLockTime < LOCKTIME_THRESHOLD)
            nMinHeight = std::max(nMinHeight, (int)tx.nLockTime);
        else
            nMinTime = std::max(nMinTime, (int64_t)tx.nLockTime);
    
        if (nMinHeight >= nBlockHeight)
            return nMinHeight;
        if (nMinTime >= nBlockTime)
            return nMinTime;
            
So if transaction B spends the output of transaction A:

1.  If A is in the blockchain already, you don't need a relative
    locktime since you know A's time.
2.  If it isn't, you can't create B since you don't know what
    value to set nLockTime to.

How was this supposed to work?

Thanks,
Rusty.


 permalink raw reply	[|nested]
2015-07-02  2:38 [bitcoin-dev] BIP 68 Questions Rusty Russell

  
From: Rusty Russell @ 2015-07-03  1:19 UTC (permalink / raw)
  To: Mark Friedenbach;  bitcoin-dev

Rusty Russell <rusty@rustcorp•com.au> writes:
> Hi Mark,
>
>         It looks like the code in BIP 68 compares the input's nSequence
> against the transaction's nLockTime:

No, forget this.  I misread the code.  Mark ELI5'd to me offlist, thanks!

FWIW, the code works :)

Cheers,
Rusty.


 permalink raw reply	[|nested]