summaryrefslogtreecommitdiff
path: root/2a/407c3971b9022f3e3fc6d7957c1027b10d2e14
blob: 92a500f48ce3aea61122b7d5041c3f73f4c194c2 (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
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
Return-Path: <mark@friedenbach.org>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 7B78B98C
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Fri,  3 Nov 2017 16:19:43 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-pf0-f169.google.com (mail-pf0-f169.google.com
	[209.85.192.169])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 0900FE3
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Fri,  3 Nov 2017 16:19:41 +0000 (UTC)
Received: by mail-pf0-f169.google.com with SMTP id b85so2522130pfj.13
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Fri, 03 Nov 2017 09:19:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=friedenbach-org.20150623.gappssmtp.com; s=20150623;
	h=mime-version:subject:from:in-reply-to:date:cc
	:content-transfer-encoding:message-id:references:to;
	bh=v297bMamYs1sQXPrXTFMQ0zhgLn82pGEtUrfXkNJTpo=;
	b=kW9lukfVmXYQgMzB7cahgorK3+ynwdJli7mLHX2UIs/eSZcFcUg02Ly+6GzUJW7sCZ
	AM2FbalHd2Md6rUk9fLmc7AlH4T78xz2Ed100vxXlWOiBLajOPpw3yh/zxQqi463Qv4B
	qFWUnCZTf1iLPdyleYLWdvRv5fderEA+08N9fCXo++NR7OZ5SbfD/yWliUvoQ0eFKTId
	o/oGb9XxNbglOuUmcn8G5p7suHO/zE7sUwXq2Y0OtAxhQR+GZGwZUP61tXoj0G9E1AAK
	KJ8PvwE3uJ8FR2PwHUzySPr5qzZhb3RpwwSitzpZfJbuhuQOhou+PRxZbsbIWJfdCKul
	rCDw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20161025;
	h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc
	:content-transfer-encoding:message-id:references:to;
	bh=v297bMamYs1sQXPrXTFMQ0zhgLn82pGEtUrfXkNJTpo=;
	b=rMszBNf7xzkXpstNFK5FTdGQgEIc1B/UO3RxnFXOM0AMWL2uEn4FGf5zS2xlwYIwiU
	8jQnDNfoa+y/RFl0hJWUxT+2bSdCBMVJ9I2oVcgfGBKNXCs69t3PSfPKmq2HKVQ4zwFH
	EyDJkRes8/4Qv04py4s4n3qeQ+kXu1GkM9a7oDJXzCclhTtZq2RVUCi3px6IoTgMYqCn
	GgIOGSwA+7eLpP3M7M+JpPzIHhER9oLKYWjY8NZQO9mLqvoe3svRvCW9xTXqZX18t3uC
	KYhOkLqsAVw+kx9y76GAxbxQaRoYosYebMdHE8zVWPlQ4wfZLl8Tf0XmbAEazZWqXKPw
	wQ1Q==
X-Gm-Message-State: AMCzsaV+PTMB4gZzcw4Sj7ZlcCvctm+bUGX2dzkh4VW4syc+fcvcXP2o
	OH1C+zZysUiLCuv5XhYHr/gaM+yStVs=
X-Google-Smtp-Source: ABhQp+QkUUiB/8veGpOWaG8qt7X7+PB2ywDTJIXEWzYW7DnoS/uQh9BpTCGl99ow5/WUN5wvNBJcdQ==
X-Received: by 10.99.109.73 with SMTP id i70mr7473916pgc.177.1509725981341;
	Fri, 03 Nov 2017 09:19:41 -0700 (PDT)
Received: from ?IPv6:2607:fb90:a6bc:d755:91d0:3885:2b34:35ac?
	([2607:fb90:a6bc:d755:91d0:3885:2b34:35ac])
	by smtp.gmail.com with ESMTPSA id
	v14sm14288824pfd.153.2017.11.03.09.19.40
	(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Fri, 03 Nov 2017 09:19:40 -0700 (PDT)
Content-Type: multipart/alternative;
	boundary=Apple-Mail-3CDC6317-DE4D-4F9C-9AF9-094FA0EDEA72
Mime-Version: 1.0 (1.0)
From: Mark Friedenbach <mark@friedenbach.org>
X-Mailer: iPhone Mail (15A432)
In-Reply-To: <CAFMkqK_rXb9fAiGC_qNf5nj_cShJgAB4qTUsCM+R07DSAau2TA@mail.gmail.com>
Date: Fri, 3 Nov 2017 09:19:39 -0700
Content-Transfer-Encoding: 7bit
Message-Id: <4F2B4652-BEB4-4202-AA30-0E8D0BEBDD17@friedenbach.org>
References: <mailman.5469.1509483670.27509.bitcoin-dev@lists.linuxfoundation.org>
	<052D6E20-7194-4645-B628-1B7B7FECF330@gmail.com>
	<CAMZUoKk+8MFLywQB3jQFkk7BYZ4Rw3Paj=ErQe8pZ0beGwu0RA@mail.gmail.com>
	<CAFMkqK_rXb9fAiGC_qNf5nj_cShJgAB4qTUsCM+R07DSAau2TA@mail.gmail.com>
To: =?utf-8?Q?Hampus_Sj=C3=B6berg?= <hampus.sjoberg@gmail.com>,
	Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
X-Spam-Status: No, score=0.5 required=5.0 tests=DKIM_SIGNED,DKIM_VALID,
	HTML_MESSAGE,MIME_QP_LONG_LINE,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
Cc: =?utf-8?Q?JOSE_FEMENIAS_CA=C3=91UELO?= <jose.femenias@gmail.com>
Subject: Re: [bitcoin-dev] Simplicity proposal - Jets?
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: Fri, 03 Nov 2017 16:19:43 -0000


--Apple-Mail-3CDC6317-DE4D-4F9C-9AF9-094FA0EDEA72
Content-Type: text/plain;
	charset=utf-8
Content-Transfer-Encoding: quoted-printable

To reiterate, none of the current work focuses on Bitcoin integration, and m=
any architectures are possible.

However the Jets would have to be specified and agreed to upfront for costin=
g reasons, and so they would be known to all validators. There would be no r=
eason to include anything more then the identifying hash in any contract usi=
ng the jet.

> On Nov 3, 2017, at 5:59 AM, Hampus Sj=C3=B6berg via bitcoin-dev <bitcoin-d=
ev@lists.linuxfoundation.org> wrote:
>=20
> Thank you for your answer, Russel.
>=20
> When a code path takes advantage of a jet, does the Simplicity code still n=
eed to be publicly available/visible in the blockchain? I imagine that for b=
ig algorithms (say for example EDCA verification/SHA256 hashing etc), it wou=
ld take up a lot of space in the blockchain.
> Is there any way to mitigate this?
>=20
> I guess in a softfork for a jet, the Simplicity code for a jet could be de=
fined as "consensus", instead of needed to be provided within every script o=
utput.
> When the Simplicity interpretor encounters an expression that has a jet, i=
t would run the C/Assembly code instead of interpreting the Simplicity code.=
 By formal verification we would be sure they match.
>=20
> Greetings
> Hampus
>=20
> 2017-11-03 2:10 GMT+01:00 Russell O'Connor via bitcoin-dev <bitcoin-dev@li=
sts.linuxfoundation.org>:
>> Hi Jose,
>>=20
>> Jets are briefly discussed in section 3.4 of https://blockstream.com/simp=
licity.pdf
>>=20
>> The idea is that we can recognize some set of popular Simplicity expressi=
ons, and when the Simplicity interpreter encounters one of these expressions=
 it can skip over the Simplicity interpreter and instead directly evaluate t=
he function using specialized C or assembly code.
>>=20
>> For example, when the Simplicity interpreter encounters the Simplicity ex=
pression for ECDSA verification, it might directly call into libsecp rather t=
han continuing the ECDSA verification using interpreted Simplicity.
>>=20
>> HTH.
>>=20
>>=20
>> On Nov 2, 2017 18:35, "JOSE FEMENIAS CA=C3=91UELO via bitcoin-dev" <bitco=
in-dev@lists.linuxfoundation.org> wrote:
>> Hi,
>>=20
>> I am trying to follow this Simplicity proposal and I am seeing all over r=
eferences to =E2=80=98jets=E2=80=99, but I haven=E2=80=99t been able to find=
 any good reference to it.
>> Can anyone give me a brief explanation and or a link pointing to this fea=
ture?
>> Thanks
>>=20
>>> On 31 Oct 2017, at 22:01, bitcoin-dev-request@lists.linuxfoundation.org w=
rote:
>>>=20
>>> The plan is that discounted jets will be explicitly labeled as jets in t=
he
>>> commitment.  If you can provide a Merkle path from the root to a node th=
at
>>> is an explicit jet, but that jet isn't among the finite number of known
>>> discounted jets,
>>=20
>>=20
>> _______________________________________________
>> bitcoin-dev mailing list
>> bitcoin-dev@lists.linuxfoundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>>=20
>>=20
>>=20
>> _______________________________________________
>> bitcoin-dev mailing list
>> bitcoin-dev@lists.linuxfoundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>>=20
>=20
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

--Apple-Mail-3CDC6317-DE4D-4F9C-9AF9-094FA0EDEA72
Content-Type: text/html;
	charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html><head><meta http-equiv=3D"content-type" content=3D"text/html; charset=3D=
utf-8"></head><body dir=3D"auto">To reiterate, none of the current work focu=
ses on Bitcoin integration, and many architectures are possible.<br><br><div=
>However the Jets would have to be specified and agreed to upfront for costi=
ng reasons, and so they would be known to all validators. There would be no r=
eason to include anything more then the identifying hash in any contract usi=
ng the jet.</div><div><br>On Nov 3, 2017, at 5:59 AM, Hampus Sj=C3=B6berg vi=
a bitcoin-dev &lt;<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org">b=
itcoin-dev@lists.linuxfoundation.org</a>&gt; wrote:<br><br></div><blockquote=
 type=3D"cite"><div><div dir=3D"ltr"><div><div><div><div>Thank you for your a=
nswer, Russel.</div><div><br></div>When a code path takes advantage of a jet=
,  does the Simplicity code still need to be publicly available/visible in t=
he blockchain? I imagine that for big algorithms (say for example EDCA verif=
ication/SHA256 hashing etc), it would take up a lot of space in the blockcha=
in.<br></div>Is there any way to mitigate this?</div><div><br></div><div>I g=
uess in a softfork for a jet, the Simplicity code for a jet could be defined=
 as "consensus", instead of needed to be provided within every script output=
.</div><div>When the Simplicity interpretor encounters an expression that ha=
s a jet, it would run the C/Assembly code instead of interpreting the Simpli=
city code. By formal verification we would be sure they match.<br></div><div=
><br></div>Greetings<br></div>Hampus<br></div><div class=3D"gmail_extra"><br=
><div class=3D"gmail_quote">2017-11-03 2:10 GMT+01:00 Russell O'Connor via b=
itcoin-dev <span dir=3D"ltr">&lt;<a href=3D"mailto:bitcoin-dev@lists.linuxfo=
undation.org" target=3D"_blank">bitcoin-dev@lists.linuxfoundation.org</a>&gt=
;</span>:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bo=
rder-left:1px #ccc solid;padding-left:1ex"><div dir=3D"auto"><div>Hi Jose,<d=
iv dir=3D"auto"><br></div><div dir=3D"auto">Jets are briefly discussed in se=
ction 3.4 of <a href=3D"https://blockstream.com/simplicity.pdf" target=3D"_b=
lank">https://blockstream.com/<wbr>simplicity.pdf</a></div><div dir=3D"auto"=
><br></div><div dir=3D"auto">The idea is that we can recognize some set of p=
opular Simplicity expressions, and when the Simplicity interpreter encounter=
s one of these expressions it can skip over the Simplicity interpreter and i=
nstead directly evaluate the function using specialized C or assembly code.<=
/div><div dir=3D"auto"><br></div><div dir=3D"auto">For example, when the Sim=
plicity interpreter encounters the Simplicity expression for ECDSA verificat=
ion, it might directly call into libsecp rather than continuing the ECDSA ve=
rification using interpreted Simplicity.</div><div dir=3D"auto"><br></div><d=
iv dir=3D"auto">HTH.</div><br><div class=3D"gmail_extra"><br><div class=3D"g=
mail_quote"><div><div class=3D"h5">On Nov 2, 2017 18:35, "JOSE FEMENIAS CA=C3=
=91UELO via bitcoin-dev" &lt;<a href=3D"mailto:bitcoin-dev@lists.linuxfounda=
tion.org" target=3D"_blank">bitcoin-dev@lists.<wbr>linuxfoundation.org</a>&g=
t; wrote:<br type=3D"attribution"></div></div><blockquote class=3D"m_3183610=
566517422745quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;pad=
ding-left:1ex"><div><div class=3D"h5"><div style=3D"word-wrap:break-word">Hi=
,<div><br></div><div>I am trying to follow this Simplicity proposal and I am=
 seeing all over references to =E2=80=98jets=E2=80=99, but I haven=E2=80=99t=
 been able to find any good reference to it.</div><div>Can anyone give me a b=
rief explanation and or a link pointing to this feature?</div><div>Thanks</d=
iv><div><br></div><div><div><blockquote type=3D"cite"><div>On 31 Oct 2017, a=
t 22:01, <a href=3D"mailto:bitcoin-dev-request@lists.linuxfoundation.org" ta=
rget=3D"_blank">bitcoin-dev-request@lists.linu<wbr>xfoundation.org</a> wrote=
:</div><br class=3D"m_3183610566517422745m_-8057571337992392675Apple-interch=
ange-newline"><div><span style=3D"font-family:Helvetica;font-size:12px;font-=
style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:norm=
al;text-align:start;text-indent:0px;text-transform:none;white-space:normal;w=
ord-spacing:0px;float:none;display:inline!important">The plan is that discou=
nted jets will be explicitly labeled as jets in the</span><br style=3D"font-=
family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;f=
ont-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;tex=
t-transform:none;white-space:normal;word-spacing:0px"><span style=3D"font-fa=
mily:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;fon=
t-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-=
transform:none;white-space:normal;word-spacing:0px;float:none;display:inline=
!important">commitment.&nbsp; If you can provide a Merkle path from the root=
 to a node that</span><br style=3D"font-family:Helvetica;font-size:12px;font=
-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:nor=
mal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;=
word-spacing:0px"><span style=3D"font-family:Helvetica;font-size:12px;font-s=
tyle:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:norma=
l;text-align:start;text-indent:0px;text-transform:none;white-space:normal;wo=
rd-spacing:0px;float:none;display:inline!important">is an explicit jet, but t=
hat jet isn't among the finite number of known</span><br style=3D"font-famil=
y:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-w=
eight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-tra=
nsform:none;white-space:normal;word-spacing:0px"><span style=3D"font-family:=
Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-wei=
ght:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-trans=
form:none;white-space:normal;word-spacing:0px;float:none;display:inline!impo=
rtant">discounted jets,</span></div></blockquote></div><br></div></div><br><=
/div></div>______________________________<wbr>_________________<br>
bitcoin-dev mailing list<br>
<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">b=
itcoin-dev@lists.linuxfoundat<wbr>ion.org</a><br>
<a href=3D"https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" r=
el=3D"noreferrer" target=3D"_blank">https://lists.linuxfoundation.<wbr>org/m=
ailman/listinfo/bitcoin-d<wbr>ev</a><br>
<br></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" r=
el=3D"noreferrer" target=3D"_blank">https://lists.linuxfoundation.<wbr>org/m=
ailman/listinfo/bitcoin-<wbr>dev</a><br>
<br></blockquote></div><br></div>
</div></blockquote><blockquote type=3D"cite"><div><span>____________________=
___________________________</span><br><span>bitcoin-dev mailing list</span><=
br><span><a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org">bitcoin-de=
v@lists.linuxfoundation.org</a></span><br><span><a href=3D"https://lists.lin=
uxfoundation.org/mailman/listinfo/bitcoin-dev">https://lists.linuxfoundation=
.org/mailman/listinfo/bitcoin-dev</a></span><br></div></blockquote></body></=
html>=

--Apple-Mail-3CDC6317-DE4D-4F9C-9AF9-094FA0EDEA72--