summaryrefslogtreecommitdiff
path: root/1b/7f3dc0854877f4dc32140b4bc787ae4fc06dfb
blob: e4ab674440388d6caf3a2fbd182198a1f53016c9 (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
Received: from sog-mx-3.v43.ch3.sourceforge.com ([172.29.43.193]
	helo=mx.sourceforge.net)
	by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <post@levinkeller.de>) id 1YIZrI-0007M1-Ks
	for bitcoin-development@lists.sourceforge.net;
	Tue, 03 Feb 2015 09:33:24 +0000
X-ACL-Warn: 
Received: from mail-qc0-f170.google.com ([209.85.216.170])
	by sog-mx-3.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
	(Exim 4.76) id 1YIZrG-0006lO-JY
	for bitcoin-development@lists.sourceforge.net;
	Tue, 03 Feb 2015 09:33:24 +0000
Received: by mail-qc0-f170.google.com with SMTP id p6so34359815qcv.1
	for <bitcoin-development@lists.sourceforge.net>;
	Tue, 03 Feb 2015 01:33:17 -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:date
	:message-id:subject:from:to:cc:content-type;
	bh=i46XH7zINH4kwEFAfvdPawzkPJFqP39TON0f1AQfHFE=;
	b=gK3KsmiCG3tmmpZD7vGfTB+VjXeZOKMQXVX8m4VCYhl82ZDOc18WgesqbihLabQe9b
	1CjNkzpzKXfCVYPNJEErvIKdDBKMLyI7SG5LZOegYTDDLj5L3xUhDc33Fr6DdTL5ny0x
	0zy+6PBpIumN74tDOgwgiIFtyia6tgomOyvHXAqG5UZyVe9nxy0OX+Nk+w2uv8RH9vdx
	1VwlPSFXrsioIqlFS9ypcin/Tk+Vp3DufRPmGNKIbYlP7bNk+SAEbAukQnt5lW3Rpgub
	quPzQPbpPpLItTaZ8XhGGQnL/60KsQ7RT10SmVC6e6zzUbwjbxpSR9J3c0U9B/30Lr/o
	QwQg==
X-Gm-Message-State: ALoCoQnEgXT9grTtxfyvfEtHJmuNQs9ICUnHAizb2fcwS9uU0A9cwPvGsyJXTo1JX1Nc00J1+Hb6
MIME-Version: 1.0
X-Received: by 10.140.91.201 with SMTP id z67mr2713363qgd.27.1422955997006;
	Tue, 03 Feb 2015 01:33:17 -0800 (PST)
Received: by 10.140.137.197 with HTTP; Tue, 3 Feb 2015 01:33:16 -0800 (PST)
X-Originating-IP: [93.196.125.123]
In-Reply-To: <54D014DB.50404@gk2.sk>
References: <CAG86ZOxYh+=rny3sPHeJ0qs6R=5frLXERKmwhVECGHo7tkrz3w@mail.gmail.com>
	<CANEZrP3Tuw3mJLSuoOA4iOmg6u9sdh-E5NNm_FgdYs3Mx39znA@mail.gmail.com>
	<manr4t$c1a$1@ger.gmane.org> <54CF74A5.3050304@gk2.sk>
	<mao0u5$gbu$1@ger.gmane.org> <54CF9016.5070206@gk2.sk>
	<map3bi$pkf$2@ger.gmane.org> <54D014DB.50404@gk2.sk>
Date: Tue, 3 Feb 2015 10:33:16 +0100
Message-ID: <CAG86ZOzt2q4eF8YrPjV6POVkawFAC+Co4n_eZ=rQo2BgMtVn8g@mail.gmail.com>
From: Levin Keller <post@levinkeller.de>
To: Pavol Rusnak <stick@gk2.sk>
Content-Type: multipart/alternative; boundary=001a113a6a4ebba819050e2bc2e2
X-Spam-Score: 1.0 (+)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	1.0 HTML_MESSAGE           BODY: HTML included in message
X-Headers-End: 1YIZrG-0006lO-JY
Cc: bitcoin-development@lists.sourceforge.net,
	Andreas Schildbach <andreas@schildbach.de>
Subject: Re: [Bitcoin-development] Export format for xpub
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, 03 Feb 2015 09:33:24 -0000

--001a113a6a4ebba819050e2bc2e2
Content-Type: text/plain; charset=UTF-8

Why even bother with the specific HD scheme such as BIP32  or BIP44. What
are the interesting parameters?

Required:

   - gap limit

Optional:

   - which node of the derivation chain is actually exported (m0' for
   BIP32, m44'0'account' for BIP44)
   - which subnodes are used for external and internal purposes
   - creation date

To import the data in a read only application it is not important which
node one actually gets and in all implementations the subnode of the
exported node "0" is used for external addresses and "1" for internal
addresses.

There is no usecase to export any higher node than m0' in BIP32 or
m44'0'account' as one can only derive any child nodes of the higher nodes *with
the private master key*. As for lower nodes (like further down the path)
there is also no need to export because in all implementations today they
will only give around half of the used addresses.

So I think a more general but very useful export scheme would be:

bitcoin-pub-export:xpub[gibberish]?gaplimit=[number]&path=[path in
derivation tree]&subchains=[numbers]&creationdate=[unixtimestamp]

Why not have more descriptive parameters? Saving on data?

I am a big fan of unix timestamps. Would vote for Andreas' format on the
creation date.

Cheers

Levin

2015-02-03 1:22 GMT+01:00 Pavol Rusnak <stick@gk2.sk>:

> On 03/02/15 01:05, Andreas Schildbach wrote:
> > I don't think that parameterizing will work, we can't predict future
> > BIPs. It's the same as for BIP43, in the end we agreed on just putting
> > the BIP number.
>
> Hm, let me put the questions the other way around:
>
> What gap limit should a wallet use if it encounters h=bip32?
>
> What h value should I use for myTREZOR wallets? Which is essentially a
> BIP44 wallet that produces h=bip32 xpubs with gap limit 20 ...
>
> --
> Best Regards / S pozdravom,
>
> Pavol Rusnak <stick@gk2.sk>
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming. The Go Parallel Website,
> sponsored by Intel and developed in partnership with Slashdot Media, is
> your
> hub for all things parallel software development, from weekly thought
> leadership blogs to news, videos, case studies, tutorials and more. Take a
> look and join the conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>

--001a113a6a4ebba819050e2bc2e2
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div><div><div>Why even bother with the specific=
 HD scheme such as BIP32=C2=A0 or BIP44. What are the interesting parameter=
s?<br><br></div><div>Required:<br></div><ul><li>gap limit</li></ul><p>Optio=
nal:</p><ul><li>which node of the derivation chain is actually exported (m0=
&#39; for BIP32, m44&#39;0&#39;account&#39; for BIP44)</li><li>which subnod=
es are used for external and internal purposes</li><li>creation date</li></=
ul>To import the data in a read only application it is not important which =
node one actually gets and in all implementations the subnode of the export=
ed node &quot;0&quot; is used for external addresses and &quot;1&quot; for =
internal addresses.<br><br></div><div>There is no usecase to export any hig=
her node than m0&#39; in BIP32 or m44&#39;0&#39;account&#39; as one can onl=
y derive any child nodes of the higher nodes <b>with the private master key=
</b>. As for lower nodes (like further down the path) there is also no need=
 to export because in all implementations today they will only give around =
half of the used addresses.<br></div><div><br>So I think a more general but=
 very useful export scheme would be:<br><br></div>bitcoin-pub-export:xpub[g=
ibberish]?gaplimit=3D[number]&amp;path=3D[path in derivation tree]&amp;subc=
hains=3D[numbers]&amp;creationdate=3D[unixtimestamp]<br><br></div><div>Why =
not have more descriptive parameters? Saving on data?<br></div><div><br></d=
iv><div></div>I am a big fan of unix timestamps. Would vote for Andreas&#39=
; format on the creation date.<br><br></div>Cheers<br><br></div>Levin<br></=
div><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">2015-02-03 1:=
22 GMT+01:00 Pavol Rusnak <span dir=3D"ltr">&lt;<a href=3D"mailto:stick@gk2=
.sk" target=3D"_blank">stick@gk2.sk</a>&gt;</span>:<br><blockquote class=3D=
"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding=
-left:1ex"><span class=3D"">On 03/02/15 01:05, Andreas Schildbach wrote:<br=
>
&gt; I don&#39;t think that parameterizing will work, we can&#39;t predict =
future<br>
&gt; BIPs. It&#39;s the same as for BIP43, in the end we agreed on just put=
ting<br>
&gt; the BIP number.<br>
<br>
</span>Hm, let me put the questions the other way around:<br>
<br>
What gap limit should a wallet use if it encounters h=3Dbip32?<br>
<br>
What h value should I use for myTREZOR wallets? Which is essentially a<br>
BIP44 wallet that produces h=3Dbip32 xpubs with gap limit 20 ...<br>
<span class=3D"im HOEnZb"><br>
--<br>
Best Regards / S pozdravom,<br>
<br>
Pavol Rusnak &lt;<a href=3D"mailto:stick@gk2.sk">stick@gk2.sk</a>&gt;<br>
<br>
</span><div class=3D"HOEnZb"><div class=3D"h5">----------------------------=
--------------------------------------------------<br>
Dive into the World of Parallel Programming. The Go Parallel Website,<br>
sponsored by Intel and developed in partnership with Slashdot Media, is you=
r<br>
hub for all things parallel software development, from weekly thought<br>
leadership blogs to news, videos, case studies, tutorials and more. Take a<=
br>
look and join the conversation now. <a href=3D"http://goparallel.sourceforg=
e.net/" target=3D"_blank">http://goparallel.sourceforge.net/</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>
</div></div></blockquote></div><br></div>

--001a113a6a4ebba819050e2bc2e2--