summaryrefslogtreecommitdiff
path: root/90/f8f202220193ca9aec40887a8f819bce2fc40f
blob: f3a3b33a4544c822376316e8cb42cb21f1fec149 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
Received: from sog-mx-2.v43.ch3.sourceforge.com ([172.29.43.192]
	helo=mx.sourceforge.net)
	by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <jtimon@jtimon.cc>) id 1YpiN2-00004u-Ol
	for bitcoin-development@lists.sourceforge.net;
	Tue, 05 May 2015 19:19:08 +0000
Received: from mail-wi0-f177.google.com ([209.85.212.177])
	by sog-mx-2.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
	(Exim 4.76) id 1YpiN0-0003Th-Tn
	for bitcoin-development@lists.sourceforge.net;
	Tue, 05 May 2015 19:19:08 +0000
Received: by widdi4 with SMTP id di4so159256944wid.0
	for <bitcoin-development@lists.sourceforge.net>;
	Tue, 05 May 2015 12:19:00 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:mime-version:in-reply-to:references:date
	:message-id:subject:from:to:cc:content-type
	:content-transfer-encoding;
	bh=vyhd8AKX9X1t+tl1jlsG5CgxX5QPxIYnaxd9axeijxY=;
	b=OEfRgoFFsuhvWKE+8Z/SrYl0umG7Z/BhzTUh9Pw0zl7UsRWPL3E/RMvPd/RZg3cueD
	0N0/KjQ9LT86X1Ae5Hjoi9WE9lMGfewmtDXgbUf5Y1HxAuYRbhTVWjU7+FhD7ifA1i4b
	XWRkrV5ih8fV5yrC4rC1q12JOUIExldiemwusYbaBJPt9P1ASF9mVTOJAyvOo11DxNFU
	Us8u0kHoW2QK1pmp6AJ8/czMf9W9CJfmQIKOnTIBnpSm+N1OuoLS3fVjbsnpDFGrIgab
	Aa/SbHEEpkTVhx2s9pcIIXlac8UVxWfYwXQaaRAv0Lhzxv5yNcHIJNuAQnKMGXpZGPTv
	l1zA==
X-Gm-Message-State: ALoCoQkFEjhddi88ak6vAeB14bLp8BVk+/TqqdFQLrLKlXrtehhrp/YSSwceo1Rnw2b+JTT//guv
MIME-Version: 1.0
X-Received: by 10.194.121.135 with SMTP id lk7mr11338453wjb.26.1430853540773; 
	Tue, 05 May 2015 12:19:00 -0700 (PDT)
Received: by 10.194.124.2 with HTTP; Tue, 5 May 2015 12:19:00 -0700 (PDT)
In-Reply-To: <CADJgMztaJgUH81Bc1s4P45d2u-35Si7=7rON=UdZn4piycxHpw@mail.gmail.com>
References: <20141001130826.GM28710@savin.petertodd.org>
	<55075795.20904@bluematt.me>
	<20150421075912.GA25282@savin.petertodd.org>
	<5546D653.4070404@bluematt.me>
	<CABm2gDqcD4ENex3LzKfeGqaotoO-XxLHhLzOEPwk92SaiD8snQ@mail.gmail.com>
	<CADJgMztaJgUH81Bc1s4P45d2u-35Si7=7rON=UdZn4piycxHpw@mail.gmail.com>
Date: Tue, 5 May 2015 21:19:00 +0200
Message-ID: <CABm2gDpn-VdNQaMzKSA1tvGhhec3UxdGp-9x-U+ruTWd4ApbiA@mail.gmail.com>
From: =?UTF-8?B?Sm9yZ2UgVGltw7Nu?= <jtimon@jtimon.cc>
To: Btc Drak <btcdrak@gmail.com>, Mark Friedenbach <mark@friedenbach.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
X-Headers-End: 1YpiN0-0003Th-Tn
Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Subject: Re: [Bitcoin-development] Relative CHECKLOCKTIMEVERIFY (was CLTV
	proposal)
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Tue, 05 May 2015 19:19:08 -0000

Well, apparently the timestamp can be make compatible with Mark's
nSequence-based RCLTV by adding an additional check at the block level
but I was only explaining the concept using heights (which is the most
interesting part IMO).
I'm also not sure I understood the details and I don't want to confuse
people again, so I'll wait for someone else to explain that part.
ACLTV can work with timestamps too unless I'm missing something. It's
just more complexity and I was never convinced that there's enough use
cases relying on timestamps to justify them. But the timestamp
discussion is quite orthogonal to the nSequence-based RCLTV proposal
itself.

On Tue, May 5, 2015 at 2:41 AM, Btc Drak <btcdrak@gmail.com> wrote:
> On Mon, May 4, 2015 at 12:24 PM, Jorge Tim=C3=B3n <jtimon@jtimon.cc> wrot=
e:
>>
>> What I was describing was an attempt to fix a similar proposal by Mark
>> Friedenbach, but it didn't needed fixing: I was simply
>> misunderstanding it.
>> Mark's RCLTV is completely reorg safe, so there's no need for the 100
>> block restriction. It also keeps the script validation independent
>> from the utxo.
>> Here's is how it works:
>>
>> The operator takes a relative_height parameter and it checks that the
>> nSequence of the input is lower than that parameter.
>>
>> Additionally, a new check at the transaction level:
>>
>> for (unsigned int i =3D 0; i < tx.vin.size(); i++) {
>> // ...
>>             if (coins->nHeight + tx.vin[i].nSequence < nSpendHeight)
>>                 return state.Invalid(false, REJECT_INVALID,
>> "bad-txns-non-final-input");
>> // ...
>> }
>>
>> Well, this is assuming that we're only using it with heights and not
>> timestamps.
>> Mark, feel free to elaborate further.
>
>
> Does dropping timestamp refer just to RCLTV or absolutely CLTV also? For
> absolute CLTV I think it's important to have timestamps so that trust fun=
d
> use cases are practical (e.g. spendable on 18th birthday), because the ex=
act
> date a future block will be mined on is unpredictable if it's far enough =
in
> the future (out by days or even weeks).
>