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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
|
Return-Path: <alex.mutovkin@gmail.com>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
[172.17.192.35])
by mail.linuxfoundation.org (Postfix) with ESMTPS id 6884D949
for <bitcoin-dev@lists.linuxfoundation.org>;
Tue, 26 Sep 2017 07:10:48 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-wr0-f180.google.com (mail-wr0-f180.google.com
[209.85.128.180])
by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 004C5D9
for <bitcoin-dev@lists.linuxfoundation.org>;
Tue, 26 Sep 2017 07:10:45 +0000 (UTC)
Received: by mail-wr0-f180.google.com with SMTP id a43so11763359wrc.0
for <bitcoin-dev@lists.linuxfoundation.org>;
Tue, 26 Sep 2017 00:10:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
h=mime-version:in-reply-to:references:from:date:message-id:subject:to
:cc; bh=GUqj+xari5IYS5sjqMM0O8Upy+xjw95BhLgFtdqatT0=;
b=vHps+pILl5cFbFOpwUuK/DZVkg4JRLcZViiDAzgYYt4xSeppUb9dvXGr5ucbaIyVuM
Z97r0xf//jCys6pKcPuoK3xNqd8PprmT4iKI6Olah+9K+/QkPgYPd68jePi1fQXzLo2t
M5rwYGSq7w9Z3sILczFXCONoEIcp1JR2Sk/WFOuMCHwoNGeHy7T59qpyM5ww5S120xcM
J4TOQsxSAisGVLLswX8kcMM3z05scbxcuZZwtugKPvfttCrdM7UePTNSTUG9FuyxSaHq
QqiUgrSLDJ2+0CmE0PRn5Nai3vG+eDkYoaoXq6E8HUMRWsOWaR4boDj/KVtRDXuA2PGs
WArA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20161025;
h=x-gm-message-state:mime-version:in-reply-to:references:from:date
:message-id:subject:to:cc;
bh=GUqj+xari5IYS5sjqMM0O8Upy+xjw95BhLgFtdqatT0=;
b=DWK0byYQGgr0zTFTGauL+bvYGMz6RYRMhkGXxZFsMVo1rRUfPelbAnTG2hX1fw12Jg
wksa1hW2q4bH1wQC8wKunytbFhbU1T1KUdao3vBYJfqNhDBPrNKxOOVaWZR9nUlczc1G
MZwgnDoAqgW4p+fYQWdDd23D4KTciw5gEX17s9O0sFe4tE/Vn9NR+wvDjq/G+4LeX5xz
hw/JWiMmHTnV1Wb3qQS88c8NpLsbwTO8ugpq1FKNw2KCdMqXb1QYoyPh92L3e4SbttjK
26OR72IgN1xRrdBsSGDxgrHfNPhBjCCPNG11xWJjqhmqJpiSqvYV1YXqWiTDL7y3sZx5
gcgQ==
X-Gm-Message-State: AHPjjUgsAma3DsN2Q/Qz6awd6gDwocUOpAngYDCSmfK/Kz9LMwGKD8YU
0ae6csMBtDwU2IHpAFUUvZd97FCPInh2HuQBFzM=
X-Google-Smtp-Source: AOwi7QAEQTTnikfCHMjBv2Km+9vUMP+jpkNt2b+ua2y0aseIwFFwMvcoIQkSbrLlMwoeJ7nFtdVuSftq1bNusLuDidM=
X-Received: by 10.223.134.236 with SMTP id 41mr7405534wry.81.1506409844508;
Tue, 26 Sep 2017 00:10:44 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.28.152.136 with HTTP; Tue, 26 Sep 2017 00:10:43 -0700 (PDT)
In-Reply-To: <CAES+R-rWiyn65+HYadu+OVBuG0zDeuw+0GN404rZ233CSEFVxA@mail.gmail.com>
References: <CAES+R-qpBwXdROKnXW0idierJYf7pSRe3Z=KSYvcGwB_S6nXrA@mail.gmail.com>
<9Rdn-Mm90LWD4Tk_F0x04feUwKQp3nL8yTou9435kqjPCwjXWzNXsYTbWDA8YvO4p6_jBu1sFXEAa1ybvtcIrOqbv7qkghwENdHch6n_EEM=@protonmail.com>
<CAES+R-rWiyn65+HYadu+OVBuG0zDeuw+0GN404rZ233CSEFVxA@mail.gmail.com>
From: =?UTF-8?B?0JDQu9C10LrRgdC10Lkg0JzRg9GC0L7QstC60LjQvQ==?=
<alex.mutovkin@gmail.com>
Date: Tue, 26 Sep 2017 10:10:43 +0300
Message-ID: <CAEadUTLeg69Cz-tkfcYk6B_Fn=J+vdL0sFB4hW8iD+k98Z=FJg@mail.gmail.com>
To: Patrick Sharp <psharp.x13@gmail.com>,
Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Content-Type: multipart/alternative; boundary="001a1149236aab0ccd055a125f43"
X-Spam-Status: No, score=0.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID,
DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,
RCVD_IN_SORBS_SPAM autolearn=disabled version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
smtp1.linux-foundation.org
X-Mailman-Approved-At: Tue, 26 Sep 2017 09:51:42 +0000
Subject: Re: [bitcoin-dev] idea post: trimming and demurrage
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Tue, 26 Sep 2017 07:10:48 -0000
--001a1149236aab0ccd055a125f43
Content-Type: text/plain; charset="UTF-8"
Lets call it blocktrain instead of blockchain. Because it is fixed amount
of blocks moving forward on the time axis. Oldest blocks are detached from
the tail of that blockTrain and goes to depot.
2017-09-26 4:33 GMT+03:00 Patrick Sharp via bitcoin-dev <
bitcoin-dev@lists.linuxfoundation.org>:
> Thank you for your responses. I have been enlightened. For the time being
> the combination of the UTXO's and pruning will accomplish what I desire. I
> suspect that there will come a time when the UTXO database becomes too
> large, but I guess that is a problem for another day. If that day ever
> comes 10 years was just an example, like you said there are reasons to
> preserve value beyond that point, perhaps a human lifetime or two would be
> a better choice.
>
> Side question: wouldn't it be a good idea to store the hash of the current
> or previous UTXO's in the block header so that pruned nodes can verify
> their UTXO's are accurate without having to check the full chain? and/or
> maybe include a snap shot of the UTXO's every x blocks?
>
> You guys are totally awesome!!!
>
> I here by withdraw my proposal for the time being.
>
> On Mon, Sep 25, 2017 at 5:34 PM, ZmnSCPxj <ZmnSCPxj@protonmail.com> wrote:
>
>> Good morning Patrick,
>>
>> Demurrage is simply impossible.
>>
>> In Bitcoin we already have implemented OP_CHECKLOCKTIMEVERIFY.
>>
>> This opcode requires that a certain block height or date has passed
>> before the output can be spent.
>>
>> It can be used to make an "in trust for" address, where you disallow
>> spending of that address. For example, you may have a child to whom you
>> wish to dedicate some inheritance to, and ensure that the child will not
>> spend it recklessly until they achieve some age (when hopefully they would
>> be more mature), regardless of what happens to you.
>>
>> If I made a P2SH address with OP_CHECKLOCKTIMEVERIFY that allows spending
>> 18 years from birth of my child, and then suddenly Bitcoin Core announces
>> demurrage, I would be very angry.
>>
>> OP_CHECKLOCKTIMEVERIFY cannot be countermanded, and it would be
>> impossible to refresh the UTXO's as required by demurrage, without
>> requiring a hardfork that ignores OP_CHECKLOCKTIMEVERIFY.
>>
>> It would be better to put such additional features as demurrage in a
>> sidechain rather than on mainchain.
>>
>>
>> Regards,
>> ZmnSCPxj
>>
>> -------- Original Message --------
>> Subject: [bitcoin-dev] idea post: trimming and demurrage
>> Local Time: September 25, 2017 9:54 PM
>> UTC Time: September 25, 2017 9:54 PM
>> From: bitcoin-dev@lists.linuxfoundation.org
>> To: bitcoin-dev@lists.linuxfoundation.org
>>
>> Hello Devs,
>>
>> I am Patrick Sharp. I just graduated with a BS is computer science.
>> Forgive my ignorance.
>>
>> As per bip-0002 I have scoured each bip available on the wiki to see if
>> these ideas have already been formally proposed and now as per bip-0002
>> post these ideas here.
>>
>> First and foremost I acknowledge that these ideas are not original nor
>> new.
>>
>> Trimming and demurrage:
>>
>> I am fully aware that demurrage is a prohibited change. I hereby contest.
>> For the record I am not a miner, I am just aware of the economics that
>> drive the costs of bitcoin.
>>
>> Without the ability to maintain some sort of limit on the maximum length
>> or size of the block chain, block chain is not only unsustainable in the
>> long run but becomes more and more centralized as the block chain becomes
>> more and more unwieldy.
>>
>> Trimming is not a foreign concept. Old block whose transactions are now
>> spent hold no real value. Meaningful trimming is expensive and inhibited by
>> unspent transactions. Old unspent transactions add unnecessary and unfair
>> burden.
>> Old transactions take up real world space that continues incur cost while
>> these transactions they do not continue to contribute to any sort of
>> payment for this cost.
>> One can assume that anybody with access to their bitcoins has the power
>> to move these bitcoins from one address to another (or at least that the
>> software that holds the keys to their coins can do it for them) and it is
>> not unfair to require them to do so at least once every 5 to 10 years.
>> Given the incentive to move it or lose it and software that will do it
>> for them, we can assume that any bitcoin not moved is most likey therefore
>> lost.
>> moving these coins will cost a small transaction fee which is fair as
>> their transactions take up space, they need to contribute
>> most people who use their coins regularly will not even need to worry
>> about this as their coins are moved to a change address anyway.
>> one downside is that paper wallets would then have an expiration date,
>> however I do not think that a paper wallet that needs to be recycled every
>> 5 to 10 years is a terrible idea.
>> Therefore I propose that the block chain length be limited to either 2^18
>> blocks (slightly less than 5 years) or 2^19 blocks, or slightly less than
>> 10 years. I propose that each time a block is mined the the oldest block(s)
>> (no more than two blocks) beyond this limit is trimmed from the chain and
>> that its unspent transactions are allowed to be included in the reward of
>> the mined block.
>>
>> This keeps the block chain from tending towards infinity. This keeps the
>> costs of the miners balanced with the costs of the users.
>>
>> Even though I believe this idea will have some friction, it is applicable
>> to the entire community. It will be hard for some users to give up small
>> benefits that they get at the great cost of miners, however miners run the
>> game and this fair proposal is in in their best interest in two different
>> ways. I would like your thoughts and suggestions. I obviously think this is
>> a freaking awesome idea. I know it is quite controversial but it is the
>> next step in evolution that bitcoin needs to take to ensure immortality.
>>
>> I come to you to ask if this has any chance of acceptance.
>>
>> -Patrick
>>
>
>
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>
>
--001a1149236aab0ccd055a125f43
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">Lets call it blocktrain instead of blockchain. Because it =
is fixed amount of blocks moving forward on the time axis. Oldest blocks ar=
e detached from the tail of that blockTrain and goes to depot.<br></div><di=
v class=3D"gmail_extra"><br><div class=3D"gmail_quote">2017-09-26 4:33 GMT+=
03:00 Patrick Sharp via bitcoin-dev <span dir=3D"ltr"><<a href=3D"mailto=
:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">bitcoin-dev@lists=
.linuxfoundation.org</a>></span>:<br><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div=
dir=3D"ltr"><div><span style=3D"font-size:12.8px">Thank you for your respo=
nses. I have been enlightened. For the time being the combination of the UT=
XO's and=C2=A0pruning will accomplish=C2=A0what I desire. I suspect tha=
t there will come a time when the UTXO database becomes too large, but I gu=
ess that is a problem for another day. If that day ever comes 10 years was =
just an example, like you said there are reasons to preserve value beyond t=
hat point, perhaps a human lifetime or two would be a better choice.</span>=
</div><div style=3D"font-size:12.8px"><span style=3D"font-size:12.8px"><br>=
</span></div><div style=3D"font-size:12.8px">Side question: wouldn't it=
be a good idea to store the hash of the current or previous UTXO's in =
the block header so that pruned nodes can verify their UTXO's are accur=
ate without having to check the full chain? and/or maybe include a snap sho=
t of the UTXO's every x blocks?</div><div style=3D"font-size:12.8px"><b=
r></div><div style=3D"font-size:12.8px"><span style=3D"font-size:12.8px">Yo=
u guys are totally awesome!!!</span></div><div style=3D"font-size:12.8px"><=
br></div><div style=3D"font-size:12.8px">I here by withdraw my proposal for=
the time being.</div></div><div class=3D"HOEnZb"><div class=3D"h5"><div cl=
ass=3D"gmail_extra"><br><div class=3D"gmail_quote">On Mon, Sep 25, 2017 at =
5:34 PM, ZmnSCPxj <span dir=3D"ltr"><<a href=3D"mailto:ZmnSCPxj@protonma=
il.com" target=3D"_blank">ZmnSCPxj@protonmail.com</a>></span> wrote:<br>=
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">Good morning Patrick,<br><br>Demurrage is si=
mply impossible.<br><br>In Bitcoin we already have implemented OP_CHECKLOCK=
TIMEVERIFY.<br><br>This opcode requires that a certain block height or date=
has passed before the output can be spent.<br><br>It can be used to make a=
n "in trust for" address, where you disallow spending of that add=
ress.=C2=A0 For example, you may have a child to whom you wish to dedicate =
some inheritance to, and ensure that the child will not spend it recklessly=
until they achieve some age (when hopefully they would be more mature), re=
gardless of what happens to you.<br><br>If I made a P2SH address with OP_CH=
ECKLOCKTIMEVERIFY that allows spending 18 years from birth of my child, and=
then suddenly Bitcoin Core announces demurrage, I would be very angry.<br>=
<br>OP_CHECKLOCKTIMEVERIFY cannot be countermanded, and it would be impossi=
ble to refresh the UTXO's as required by demurrage, without requiring a=
hardfork that ignores OP_CHECKLOCKTIMEVERIFY.<br><br>It would be better to=
put such additional features as demurrage in a sidechain rather than on ma=
inchain.<br><div><br></div><div><br></div><div>Regards,<br></div><div>ZmnSC=
Pxj<br></div><div class=3D"m_9133342592556443427HOEnZb"><div class=3D"m_913=
3342592556443427h5"><div><br></div><div>-------- Original Message --------<=
br></div><div>Subject: [bitcoin-dev] idea post: trimming and demurrage<br><=
/div><div>Local Time: September 25, 2017 9:54 PM<br></div><div>UTC Time: Se=
ptember 25, 2017 9:54 PM<br></div><div>From: <a href=3D"mailto:bitcoin-dev@=
lists.linuxfoundation.org" target=3D"_blank">bitcoin-dev@lists.linuxfoundat=
<wbr>ion.org</a><br></div><div>To: <a href=3D"mailto:bitcoin-dev@lists.linu=
xfoundation.org" target=3D"_blank">bitcoin-dev@lists.linuxfoundat<wbr>ion.o=
rg</a><br></div><div><br></div><div>Hello Devs,<br></div><div><br></div><di=
v>I am Patrick Sharp. I just graduated with a BS is computer science. Forgi=
ve my ignorance.<br></div><div><br></div><div>As per bip-0002 I have scoure=
d each bip available on the wiki to see if these ideas have already been fo=
rmally proposed and now as per bip-0002 post these ideas here.<br></div><di=
v><br></div><div>First and foremost I acknowledge that these ideas are not =
original nor new.<br></div><div><br></div><div>Trimming and demurrage:<br><=
/div><div><br></div><div>I am fully aware that demurrage is a prohibited ch=
ange. I hereby contest. For the record I am not a miner, I am just aware of=
the economics that drive the costs of bitcoin.<br></div><div><br></div><di=
v>Without the ability to maintain some sort of limit on the maximum length =
or size of the block chain, block chain is not only unsustainable in the lo=
ng run but becomes more and more centralized as the block chain becomes mor=
e and more unwieldy.<br></div><div><br></div><div>Trimming is not a foreign=
concept. Old block whose transactions are now spent hold no real value. Me=
aningful trimming is expensive and inhibited by unspent transactions. Old u=
nspent transactions add unnecessary and unfair burden.<br></div><div>Old tr=
ansactions take up real world space that continues incur cost while these t=
ransactions they do not continue to contribute to any sort of payment for t=
his cost.<br></div><div>One can assume that anybody with access to their bi=
tcoins has the power to move these bitcoins from one address to another (or=
at least that the software that holds the keys to their coins can do it fo=
r them) and it is not unfair to require them to do so at least once every 5=
to 10 years.<br></div><div>Given the incentive to move it or lose it and s=
oftware that will do it for them, we can assume that any bitcoin not moved =
is most likey therefore lost.<br></div><div>moving these coins will cost a =
small transaction fee which is fair as their transactions take up space, th=
ey need to contribute<br></div><div>most people who use their coins regular=
ly will not even need to worry about this as their coins are moved to a cha=
nge address anyway.<br></div><div>one downside is that paper wallets would =
then have an expiration date, however I do not think that a paper wallet th=
at needs to be recycled every 5 to 10 years is a terrible idea.<br></div><d=
iv>Therefore I propose that the block chain length be limited to either 2^1=
8 blocks (slightly less than 5 years) or 2^19 blocks, or slightly less than=
10 years. I propose that each time a block is mined the the oldest block(s=
) (no more than two blocks) beyond this limit is trimmed from the chain and=
that its unspent transactions are allowed to be included in the reward of =
the mined block.<br></div><div><br></div><div>This keeps the block chain fr=
om tending towards infinity. This keeps the costs of the miners balanced wi=
th the costs of the users.<br></div><div><br></div><div>Even though=C2=A0I =
believe this idea will have some friction, it is applicable to the entire c=
ommunity. It will be hard for some users to give up small benefits that the=
y get at the great cost of miners, however miners run the game and this fai=
r proposal is in in their best interest in two different ways. I would like=
your thoughts and suggestions. I obviously think this is a freaking awesom=
e idea. I know it is quite controversial=C2=A0but it is the next step in ev=
olution that bitcoin needs to take to ensure immortality.<br></div><div><br=
></div><div>I come to you to ask if this has any chance of acceptance.<br><=
/div><div><br></div><div>-Patrick<br></div></div></div></blockquote></div><=
br></div>
</div></div><br>______________________________<wbr>_________________<br>
bitcoin-dev mailing list<br>
<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org">bitcoin-dev@lists.=
<wbr>linuxfoundation.org</a><br>
<a href=3D"https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" =
rel=3D"noreferrer" target=3D"_blank">https://lists.linuxfoundation.<wbr>org=
/mailman/listinfo/bitcoin-<wbr>dev</a><br>
<br></blockquote></div><br></div>
--001a1149236aab0ccd055a125f43--
|