Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id F3B0E282 for ; Thu, 15 Oct 2015 13:47:34 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-ig0-f170.google.com (mail-ig0-f170.google.com [209.85.213.170]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id F3968144 for ; Thu, 15 Oct 2015 13:47:33 +0000 (UTC) Received: by igbni9 with SMTP id ni9so14340037igb.1 for ; Thu, 15 Oct 2015 06:47:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=d4iMrFPWTzr1bv+eEXwLM/FcyFyqWj6Ykvcs86+4m64=; b=kUfOpTNm3xyg0niz5cg87NWkcXRAwFtxmgUCunSeINtmRmwkRW2LltjhhqVVP+nnCj AbzchpLsweLK7GuqDQI/zzJTBNRH/MiClu8Q0pRM88xiZ9WnaT/jamVdFS545XS786qJ KzweQ8wg8o7qv02X1LA62auN4uV7T8t5o/kcVRwIwzzzFRYYCdqXQFAENDXI0b3DBbPP NpCwc/DthtbYQZH4YCDIvjnOWv+scQLv0cAKpAkhEaioBVFWCzX+bNBLHK9/Tm1qZVhf yBipb66mh9MBl8Jh9g+XDYn6bJQNZOwxVtNHH0pRghPLipTe5stSvFJTYTWimTwAzmbA CFtg== MIME-Version: 1.0 X-Received: by 10.50.111.83 with SMTP id ig19mr10140328igb.82.1444916853425; Thu, 15 Oct 2015 06:47:33 -0700 (PDT) Received: by 10.64.25.80 with HTTP; Thu, 15 Oct 2015 06:47:33 -0700 (PDT) In-Reply-To: <87pp0okeip.fsf@rustcorp.com.au> References: <20151003143056.GA27942@muck> <87lhbgn4fa.fsf@rustcorp.com.au> <20151008174120.GA9291@muck> <87pp0okeip.fsf@rustcorp.com.au> Date: Thu, 15 Oct 2015 09:47:33 -0400 Message-ID: From: Alex Morcos To: Rusty Russell Content-Type: multipart/alternative; boundary=089e013d0bf2c74a90052224eb9c X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: Bitcoin Dev Subject: Re: [bitcoin-dev] CHECKSEQUENCEVERIFY - We need more usecases to motivate the change X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Development Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Oct 2015 13:47:35 -0000 --089e013d0bf2c74a90052224eb9c Content-Type: text/plain; charset=UTF-8 Mark, You seemed interested in changing BIP 68 to use 16 bits for sequence number in both the block and time versions, making time based sequence numbers have a resolution of 512 seconds. I'm in favor of this approach because it leaves aside 14 bits for further soft forks within the semantics of BIP 68. It would be nice to know if you're planning this change, and perhaps people can hold off on review until things are finalized. I'd cast my "vote" against BIP 68 without this change, but am also open to being convinced otherwise. What are other peoples opinions on this? On Thu, Oct 8, 2015 at 9:38 PM, Rusty Russell via bitcoin-dev < bitcoin-dev@lists.linuxfoundation.org> wrote: > Peter Todd writes: > > On Tue, Oct 06, 2015 at 12:28:49PM +1030, Rusty Russell wrote: > >> Peter Todd via bitcoin-dev > >> writes: > >> > However I don't think we've done a good job showing why we need to > >> > implement this feature via nSequence. > >> > >> It could be implemented in other ways, but nSequence is the neatest and > >> most straightforward I've seen. > >> > >> - I'm not aware of any other (even vague) proposal for its use? > Enlighten? > > > > There's three that immediately come to mind: > > > > Gregory Maxwell has proposed it as a way of discouraging miners from > > reorging chains, by including some of the low-order bits of a previous > > block header in nSequence. > > > > A few people have proposed implementing proof-of-stake blocksize voting > > with nSequence. > > Excellent, thanks! It's good to have such ideas as a compass. PoS > voting seems like it won't be a problem in 5 bits. > > The "prevbits" idea would want more bits; naively 64 would be good, but > I think there are some tricks we can use to make 32 work OK. We would > have to then split between nLocktime (if available) and multiple > nSequence fields, and it would weaken it for some txs. > > There is one easy solution: change the BIP wording from: > > -For transactions with an nVersion of 2 or greater, > +For transactions with an nVersion of 2, > > And on every tx bump, we decide whether to keep this scheme (mempool > would enforce it always). > > Cheers, > Rusty. > _______________________________________________ > bitcoin-dev mailing list > bitcoin-dev@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev > --089e013d0bf2c74a90052224eb9c Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Mark,=C2=A0

You seemed interested in changing= BIP 68 to use 16 bits for sequence number in both the block and time versi= ons, making time based sequence numbers have a resolution of 512 seconds.

I'm in favor of this approach because it = leaves aside 14 bits for further soft forks within the semantics of BIP 68.= =C2=A0

It would be nice to know if you're pla= nning this change, and perhaps people can hold off on review until things a= re finalized.

I'd cast my "vote" aga= inst BIP 68 without this change, but am also open to being convinced otherw= ise.

What are other peoples opinions on this?

On Thu, Oc= t 8, 2015 at 9:38 PM, Rusty Russell via bitcoin-dev <<= a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">b= itcoin-dev@lists.linuxfoundation.org> wrote:
Peter Todd <pete@petertodd.org> writes:
> On Tue, Oct 06, 2015 at 12:28:49PM +1030, Rusty Russell wrote:
>> Peter Todd via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org>
>> writes:
>> > However I don't think we've done a good job showing w= hy we need to
>> > implement this feature via nSequence.
>>
>> It could be implemented in other ways, but nSequence is the neates= t and
>> most straightforward I've seen.
>>
>> - I'm not aware of any other (even vague) proposal for its use= ?=C2=A0 Enlighten?
>
> There's three that immediately come to mind:
>
> Gregory Maxwell has proposed it as a way of discouraging miners from > reorging chains, by including some of the low-order bits of a previous=
> block header in nSequence.
>
> A few people have proposed implementing proof-of-stake blocksize votin= g
> with nSequence.

Excellent, thanks!=C2=A0 It's good to have such ideas as a compa= ss.=C2=A0 PoS
voting seems like it won't be a problem in 5 bits.

The "prevbits" idea would want more bits; naively 64 would be goo= d, but
I think there are some tricks we can use to make 32 work OK.=C2=A0 We would=
have to then split between nLocktime (if available) and multiple
nSequence fields, and it would weaken it for some txs.

There is one easy solution: change the BIP wording from:

-For transactions with an nVersion of 2 or greater,
+For transactions with an nVersion of 2,

And on every tx bump, we decide whether to keep this scheme (mempool
would enforce it always).

Cheers,
Rusty.
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.= linuxfoundation.org
https://lists.linuxfoundation.org/mail= man/listinfo/bitcoin-dev

--089e013d0bf2c74a90052224eb9c--