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
|
Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191]
helo=mx.sourceforge.net)
by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
(envelope-from <jgarzik@bitpay.com>) id 1YDI45-0006Tb-Jp
for bitcoin-development@lists.sourceforge.net;
Mon, 19 Jan 2015 19:32:45 +0000
Received-SPF: pass (sog-mx-1.v43.ch3.sourceforge.com: domain of bitpay.com
designates 209.85.214.174 as permitted sender)
client-ip=209.85.214.174; envelope-from=jgarzik@bitpay.com;
helo=mail-ob0-f174.google.com;
Received: from mail-ob0-f174.google.com ([209.85.214.174])
by sog-mx-1.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
(Exim 4.76) id 1YDI44-000817-Hh
for bitcoin-development@lists.sourceforge.net;
Mon, 19 Jan 2015 19:32:45 +0000
Received: by mail-ob0-f174.google.com with SMTP id wo20so20575963obc.5
for <bitcoin-development@lists.sourceforge.net>;
Mon, 19 Jan 2015 11:32:39 -0800 (PST)
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:from:date
:message-id:subject:to:cc:content-type;
bh=ERf828icKk63epW8wkrdn3XxJu23Xco99AejcSzWYTQ=;
b=dz+hi1MzRxxnG311o1lIN4T2fQeaT2ghPZ1zHKFPYyTISkt2hs2v0RpL+zV6fvappb
ocMaZZDTwFrIal1O+V7ohpHcf/Fyb8w7wzAtO81HnremzzzDZoTBn23RhhaGKmlCsmpk
cD2k2s0T9wWFpt7jxSLQvSx0y/7+i+DsPbgLz0OUGuuhzIa5M5msVSJbxBhbkn/MvGYi
84EMdf36/oHDZV6EccZocIiQPlnU5qs7xjQac5pzb3pnJWIrmb3FXCNYleJX78N/cPrE
j5yp8jEXvK5u5x7FF3DiTjxqtVkx4ogiB0EkryqFAXf2lpDXpFJI9dTznGjjPmLvexDt
lj9Q==
X-Gm-Message-State: ALoCoQnpNuaCgHAYTH0zrVnF3s3eyzN+DZD+vDVlkdGaxu4ULOTXZxxY8eYPuX4QXuwhoRGexslh
X-Received: by 10.202.61.9 with SMTP id k9mr7364455oia.116.1421694574285; Mon,
19 Jan 2015 11:09:34 -0800 (PST)
MIME-Version: 1.0
Received: by 10.202.219.196 with HTTP; Mon, 19 Jan 2015 11:09:13 -0800 (PST)
In-Reply-To: <CAN5esQJe0uUm0NyctaBa6WH7_JjeE_OLR=FY_XQWnSr50VRDyA@mail.gmail.com>
References: <CAN5esQJe0uUm0NyctaBa6WH7_JjeE_OLR=FY_XQWnSr50VRDyA@mail.gmail.com>
From: Jeff Garzik <jgarzik@bitpay.com>
Date: Mon, 19 Jan 2015 14:09:13 -0500
Message-ID: <CAJHLa0OTynX4oiQoyanpRKE2tpAuS4L5X-2j20328725J9RrvQ@mail.gmail.com>
To: Richard Brady <rnbrady@gmail.com>
Content-Type: multipart/alternative; boundary=001a113cd2a8146c1b050d061057
X-Spam-Score: -0.6 (/)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
See http://spamassassin.org/tag/ for more details.
-1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
sender-domain
-0.0 SPF_PASS SPF: sender matches SPF record
1.0 HTML_MESSAGE BODY: HTML included in message
-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
author's domain
0.1 DKIM_SIGNED Message has a DKIM or DK signature,
not necessarily valid
-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Headers-End: 1YDI44-000817-Hh
Cc: Bitcoin <bitcoin-development@lists.sourceforge.net>
Subject: Re: [Bitcoin-development] BIP70: why Google Protocol Buffers for
encoding?
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: Mon, 19 Jan 2015 19:32:45 -0000
--001a113cd2a8146c1b050d061057
Content-Type: text/plain; charset=UTF-8
Text formats such as XML or JSON are far less deterministic, are more
loosely specified, have wide variance in parsing, are not very hash-able,
the list goes on.
On Mon, Jan 19, 2015 at 2:07 PM, Richard Brady <rnbrady@gmail.com> wrote:
> Hi Gavin, Mike and co
>
> Is there a strong driver behind the choice of Google Protocol Buffers for
> payment request encoding in BIP-0070?
>
> Performance doesn't feel that relevant when you think that:
> 1. Payment requests are not broadcast, this is a request / response flow,
> much more akin to a web request.
> 2. One would be cramming this data into a binary format just so you can
> then attach it to a no-so-binary format such as HTTP.
>
> Some great things about protocols/encodings such as HTTP/JSON/XML are:
> 1. They are human readable on-the-wire. No Wireshark plugin required,
> tcpdump or ngrep will do.
> 2. There are tons of great open source libraries and API for parsing /
> manipulating / generating.
> 3. It's really easy to hand-craft a test message for debugging.
> 4. The standards are much easier to read and write. They don't need to
> contain code like BIP-0070 currently does and they can contain examples,
> which BIP70 does not.
> 5. They are thoroughly specified by independent standards bodies such as
> the IETF. Gotta love a bit of MUST / SHOULD / MAY in a standard.
> 6. They're a family ;-)
>
> Keen to hear your thoughts on this and very keen to watch the payment
> protocol grow regardless of encoding choice! My background is SIP / VoIP
> and I think that could be a fascinating use case for this protocol which
> I'm hoping to do some work on.
>
> Best,
> Richard
>
>
>
> ------------------------------------------------------------------------------
> New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
> GigeNET is offering a free month of service with a new server in Ashburn.
> Choose from 2 high performing configs, both with 100TB of bandwidth.
> Higher redundancy.Lower latency.Increased capacity.Completely compliant.
> http://p.sf.net/sfu/gigenet
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>
>
--
Jeff Garzik
Bitcoin core developer and open source evangelist
BitPay, Inc. https://bitpay.com/
--001a113cd2a8146c1b050d061057
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">Text formats such as XML or JSON are far less deterministi=
c, are more loosely specified, have wide variance in parsing, are not very =
hash-able, the list goes on.<br><br></div><div class=3D"gmail_extra"><br><d=
iv class=3D"gmail_quote">On Mon, Jan 19, 2015 at 2:07 PM, Richard Brady <sp=
an dir=3D"ltr"><<a href=3D"mailto:rnbrady@gmail.com" target=3D"_blank">r=
nbrady@gmail.com</a>></span> wrote:<br><blockquote class=3D"gmail_quote"=
style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><d=
iv dir=3D"ltr">Hi Gavin, Mike and co<div><br></div><div>Is there a strong d=
river behind the choice of Google Protocol Buffers for payment request enco=
ding in BIP-0070?</div><div><br></div><div>Performance doesn't feel tha=
t relevant when you think that:</div><div>1. Payment requests are not broad=
cast, this is a request / response flow, much more akin to a web request.</=
div><div>2. One would be cramming this data into a binary format just so yo=
u can then attach it to a no-so-binary format such as HTTP.=C2=A0</div><div=
><br></div><div>Some great things about protocols/encodings such as HTTP/JS=
ON/XML are:</div><div>1. They are human readable on-the-wire. No Wireshark =
plugin required, tcpdump or ngrep will do.</div><div>2. There are tons of g=
reat open source libraries and API for parsing / manipulating / generating.=
</div><div>3. It's really easy to hand-craft a test message for debuggi=
ng.<br></div><div>4. The standards are much easier to read and write. They =
don't need to contain code like BIP-0070 currently does and they can co=
ntain examples, which BIP70 does not.=C2=A0</div><div>5. They are thoroughl=
y specified by independent standards bodies such as the IETF. Gotta love a =
bit of MUST / SHOULD / MAY in a standard.</div><div>6. They're a family=
;-)</div><div><br></div><div>Keen to hear your thoughts on this and very k=
een to watch the payment protocol grow regardless of encoding choice! My ba=
ckground is SIP / VoIP and I think that could be a fascinating use case for=
this protocol which I'm hoping to do some work on.</div><div><br></div=
><div>Best,</div><div>Richard</div><div><br></div></div>
<br>-----------------------------------------------------------------------=
-------<br>
New Year. New Location. New Benefits. New Data Center in Ashburn, VA.<br>
GigeNET is offering a free month of service with a new server in Ashburn.<b=
r>
Choose from 2 high performing configs, both with 100TB of bandwidth.<br>
Higher redundancy.Lower latency.Increased capacity.Completely compliant.<br=
>
<a href=3D"http://p.sf.net/sfu/gigenet" target=3D"_blank">http://p.sf.net/s=
fu/gigenet</a><br>_______________________________________________<br>
Bitcoin-development mailing list<br>
<a href=3D"mailto:Bitcoin-development@lists.sourceforge.net">Bitcoin-develo=
pment@lists.sourceforge.net</a><br>
<a href=3D"https://lists.sourceforge.net/lists/listinfo/bitcoin-development=
" target=3D"_blank">https://lists.sourceforge.net/lists/listinfo/bitcoin-de=
velopment</a><br>
<br></blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail=
_signature">Jeff Garzik<br>Bitcoin core developer and open source evangelis=
t<br>BitPay, Inc. =C2=A0 =C2=A0 =C2=A0<a href=3D"https://bitpay.com/" targe=
t=3D"_blank">https://bitpay.com/</a></div>
</div>
--001a113cd2a8146c1b050d061057--
|