Oh ok you mean a semantic difference for the purpose of explaining. It doesn't actually change the code.

Regarding saving more bits, there really isn't much room if you consider time-based relative locktimes and long-lived channels on the order of a year or more.

On Thu, May 28, 2015 at 8:18 AM, Tier Nolan <tier.nolan@gmail.com> wrote:
On Thu, May 28, 2015 at 3:59 PM, Mark Friedenbach <mark@friedenbach.org> wrote:

Why 3? Do we have a version 2?

I meant whatever the next version is, so you are right, it's version 2.

As for doing it in serialization, that would alter the txid making it a hard fork change.

The change is backwards compatible (since there is no restrictions on sequence numbers).   This makes it a soft fork.

That doesn't change the fact that you are changing what a field in the transaction represents.

You could say that the sequence number is no longer encoded in the serialization, it is assumed to be 0xFFFFFFFF for all version 2+ transactions and the relative locktime is a whole new field that is the same size (and position).

I think keeping some of the bytes for other uses is a good idea.  The entire top 2 bytes could be ignored when working out relative locktime verify.  That leaves them fully free to be set to anything. 

It could be that if the MSB of the bottom 2 bytes is set, then that activates the rule and the top 2 bytes are ignored.

Are there any use-cases which need a RLTV of more than 8191 blocks delay (that can't be covered by the absolute version)? 

------------------------------------------------------------------------------

_______________________________________________
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development