summaryrefslogtreecommitdiff
path: root/da/5bbd7f94e0665392a6563aa52600ff83f985e3
blob: 24e888f682e754bfd7a987991167c0a93d39ba82 (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
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194]
	helo=mx.sourceforge.net)
	by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <etotheipi@gmail.com>) id 1WTyC4-000546-Py
	for bitcoin-development@lists.sourceforge.net;
	Sat, 29 Mar 2014 18:41:24 +0000
Received-SPF: pass (sog-mx-4.v43.ch3.sourceforge.com: domain of gmail.com
	designates 209.85.192.54 as permitted sender)
	client-ip=209.85.192.54; envelope-from=etotheipi@gmail.com;
	helo=mail-qg0-f54.google.com; 
Received: from mail-qg0-f54.google.com ([209.85.192.54])
	by sog-mx-4.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
	(Exim 4.76) id 1WTyC3-0007Lw-NW
	for bitcoin-development@lists.sourceforge.net;
	Sat, 29 Mar 2014 18:41:24 +0000
Received: by mail-qg0-f54.google.com with SMTP id a108so2281420qge.13
	for <bitcoin-development@lists.sourceforge.net>;
	Sat, 29 Mar 2014 11:41:18 -0700 (PDT)
X-Received: by 10.224.161.15 with SMTP id p15mr16459602qax.46.1396118478228;
	Sat, 29 Mar 2014 11:41:18 -0700 (PDT)
Received: from [192.168.1.85] (c-76-111-96-126.hsd1.md.comcast.net.
	[76.111.96.126]) by mx.google.com with ESMTPSA id
	b36sm12231196qga.15.2014.03.29.11.41.17 for <multiple recipients>
	(version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
	Sat, 29 Mar 2014 11:41:17 -0700 (PDT)
Message-ID: <533713CD.3070403@gmail.com>
Date: Sat, 29 Mar 2014 14:41:17 -0400
From: Alan Reiner <etotheipi@gmail.com>
User-Agent: Mozilla/5.0 (X11; Linux x86_64;
	rv:24.0) Gecko/20100101 Thunderbird/24.4.0
MIME-Version: 1.0
To: Tamas Blummer <tamas@bitsofproof.com>
References: <CACsn0ckScTWG4YxNCscxvtdsmcUkxtR2Gi-rdBs2HCkirPz5rA@mail.gmail.com>
	<4906130.DUyjhm1C93@crushinator> <5336FBE7.7030209@gmail.com>
	<15872432.k8h0hUxqlf@crushinator> <53370854.5050303@gmail.com>
	<19FE9882-7FC2-4518-BD50-8818B059271B@bitsofproof.com>
In-Reply-To: <19FE9882-7FC2-4518-BD50-8818B059271B@bitsofproof.com>
X-Enigmail-Version: 1.6
Content-Type: multipart/alternative;
	boundary="------------020904030404000102000300"
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 FREEMAIL_FROM Sender email is commonly abused enduser mail provider
	(etotheipi[at]gmail.com)
	-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: 1WTyC3-0007Lw-NW
Cc: bitcoin-development@lists.sourceforge.net
Subject: Re: [Bitcoin-development] Presenting a BIP for Shamir's Secret
 Sharing of Bitcoin private keys
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: Sat, 29 Mar 2014 18:41:25 -0000

This is a multi-part message in MIME format.
--------------020904030404000102000300
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Armory does exactly this: it defines the "Fragment ID" as the first few
bytes of the hash of the root pubKey + M-parameter, converted to
base58.  Then it explains to the user "All fragments with the same
fragment ID are compatible" (which only works if you use deterministic
coefficients).  Each fragment is then labeled with "[FragID]-#1",
"[FragID]-#2", etc.  It became quite useful for organizing the fragments
and documenting how I was distributing them, especially if I had printed
or saved the same fragment twice by accident.



On 03/29/2014 02:16 PM, Tamas Blummer wrote:
> I also think that we can add usability features if the underlying
> secret remains well protected.
> I do not think there is any reason to assume that the knowledge of the
> degree of the polynomial, would aid an attacker.
>
> Similarly a fingerprint of the secret if it is unrelated to the hash
> used in the polinomyal should leak no useful information,
>
> The length of such fingerpring (say 4 bytes) and the degree (1 byte)
> does not seem a big overhead for me.
>
> Remember that the biggest obstacle of Bitcoin is usability not security.
>
> Regards,
>
> Tamas Blummer
> http://bitsofproof.com
>
> On 29.03.2014, at 18:52, Alan Reiner <etotheipi@gmail.com
> <mailto:etotheipi@gmail.com>> wrote:
>
>> On 03/29/2014 01:19 PM, Matt Whitlock wrote:
>>> I intentionally omitted the parameter M (minimum subset size) from
>>> the shares because including it would give an adversary a vital
>>> piece of information. Likewise, including any kind of information
>>> that would allow a determination of whether the secret has been
>>> correctly reconstituted would give an adversary too much
>>> information. Failing silently when given incorrect shares or an
>>> insufficient number of shares is intentional.
>>
>> I do not believe this is a good tradeoff.  It's basically obfuscation of
>> something that is already considered secure at the expense of
>> usability.  It's much more important to me that the user understands
>> what is in their hands (or their family members after they get hit by a
>> bus), than to obfuscate the parameters of the secret sharing to provide
>> a tiny disadvantage to an adversary who gets ahold of one.
>>
>> The fact that it fails silently is really all downside, not a benefit.
>> If I have enough fragments, I can reconstruct the seed and see that it
>> produces addresses with money.  If not, I know I need more fragments.
>> I'm much more concerned about my family having all the info they need to
>> recover the money, than an attacker knowing that he needs two more
>> fragments instead of which are well-secured anyway.
>>
>>
>>
>> ------------------------------------------------------------------------------
>> _______________________________________________
>> Bitcoin-development mailing list
>> Bitcoin-development@lists.sourceforge.net
>> <mailto:Bitcoin-development@lists.sourceforge.net>
>> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>>
>


--------------020904030404000102000300
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Armory does exactly this: it defines the "Fragment ID" as the first
    few bytes of the hash of the root pubKey + M-parameter, converted to
    base58.&nbsp; Then it explains to the user "All fragments with the same
    fragment ID are compatible" (which only works if you use
    deterministic coefficients).&nbsp; Each fragment is then labeled with
    "[FragID]-#1", "[FragID]-#2", etc.&nbsp; It became quite useful for
    organizing the fragments and documenting how I was distributing
    them, especially if I had printed or saved the same fragment twice
    by accident.<br>
    <br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 03/29/2014 02:16 PM, Tamas Blummer
      wrote:<br>
    </div>
    <blockquote
      cite="mid:19FE9882-7FC2-4518-BD50-8818B059271B@bitsofproof.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      I also think that we can add usability features if the underlying
      secret remains well protected.
      <div>I do not think there is any reason to assume that the
        knowledge of the degree of the polynomial, would aid an
        attacker.</div>
      <div><br>
      </div>
      <div>Similarly a fingerprint of the secret if it is unrelated to
        the hash used in the polinomyal should leak no useful
        information,</div>
      <div><br>
      </div>
      <div>The length of such fingerpring (say 4 bytes) and the degree
        (1 byte) does not seem a big overhead for me.</div>
      <div><br>
      </div>
      <div>Remember that the biggest obstacle of Bitcoin is usability
        not security.</div>
      <div>
        <div apple-content-edited="true"><br style="color: rgb(0, 0, 0);
            font-family: Helvetica; font-size: medium; font-style:
            normal; font-variant: normal; font-weight: normal;
            letter-spacing: normal; line-height: normal; orphans: 2;
            text-align: -webkit-auto; text-indent: 0px; text-transform:
            none; white-space: normal; widows: 2; word-spacing: 0px;
            -webkit-text-size-adjust: auto; -webkit-text-stroke-width:
            0px; ">
          <span style="color: rgb(0, 0, 0); font-family: Helvetica;
            font-size: medium; font-style: normal; font-variant: normal;
            font-weight: normal; letter-spacing: normal; line-height:
            normal; orphans: 2; text-align: -webkit-auto; text-indent:
            0px; text-transform: none; white-space: normal; widows: 2;
            word-spacing: 0px; -webkit-text-size-adjust: auto;
            -webkit-text-stroke-width: 0px; display: inline !important;
            float: none; ">Regards,</span><br style="color: rgb(0, 0,
            0); font-family: Helvetica; font-size: medium; font-style:
            normal; font-variant: normal; font-weight: normal;
            letter-spacing: normal; line-height: normal; orphans: 2;
            text-align: -webkit-auto; text-indent: 0px; text-transform:
            none; white-space: normal; widows: 2; word-spacing: 0px;
            -webkit-text-size-adjust: auto; -webkit-text-stroke-width:
            0px; ">
          <br style="color: rgb(0, 0, 0); font-family: Helvetica;
            font-size: medium; font-style: normal; font-variant: normal;
            font-weight: normal; letter-spacing: normal; line-height:
            normal; orphans: 2; text-align: -webkit-auto; text-indent:
            0px; text-transform: none; white-space: normal; widows: 2;
            word-spacing: 0px; -webkit-text-size-adjust: auto;
            -webkit-text-stroke-width: 0px; ">
          <span style="color: rgb(0, 0, 0); font-family: Helvetica;
            font-size: medium; font-style: normal; font-variant: normal;
            font-weight: normal; letter-spacing: normal; line-height:
            normal; orphans: 2; text-align: -webkit-auto; text-indent:
            0px; text-transform: none; white-space: normal; widows: 2;
            word-spacing: 0px; -webkit-text-size-adjust: auto;
            -webkit-text-stroke-width: 0px; display: inline !important;
            float: none; ">Tamas Blummer</span><br style="color: rgb(0,
            0, 0); font-family: Helvetica; font-size: medium;
            font-style: normal; font-variant: normal; font-weight:
            normal; letter-spacing: normal; line-height: normal;
            orphans: 2; text-align: -webkit-auto; text-indent: 0px;
            text-transform: none; white-space: normal; widows: 2;
            word-spacing: 0px; -webkit-text-size-adjust: auto;
            -webkit-text-stroke-width: 0px; ">
          <span style="color: rgb(0, 0, 0); font-family: Helvetica;
            font-size: medium; font-style: normal; font-variant: normal;
            font-weight: normal; letter-spacing: normal; line-height:
            normal; orphans: 2; text-align: -webkit-auto; text-indent:
            0px; text-transform: none; white-space: normal; widows: 2;
            word-spacing: 0px; -webkit-text-size-adjust: auto;
            -webkit-text-stroke-width: 0px; display: inline !important;
            float: none; "><a moz-do-not-send="true"
              href="http://bitsofproof.com">http://bitsofproof.com</a></span>
        </div>
        <br>
        <div>
          <div>On 29.03.2014, at 18:52, Alan Reiner &lt;<a
              moz-do-not-send="true" href="mailto:etotheipi@gmail.com">etotheipi@gmail.com</a>&gt;
            wrote:</div>
          <br class="Apple-interchange-newline">
          <blockquote type="cite">On 03/29/2014 01:19 PM, Matt Whitlock
            wrote:<br>
            <blockquote type="cite">I intentionally omitted the
              parameter M (minimum subset size) from the shares because
              including it would give an adversary a vital piece of
              information. Likewise, including any kind of information
              that would allow a determination of whether the secret has
              been correctly reconstituted would give an adversary too
              much information. Failing silently when given incorrect
              shares or an insufficient number of shares is intentional.<br>
            </blockquote>
            <br>
            I do not believe this is a good tradeoff. &nbsp;It's basically
            obfuscation of<br>
            something that is already considered secure at the expense
            of<br>
            usability. &nbsp;It's much more important to me that the user
            understands<br>
            what is in their hands (or their family members after they
            get hit by a<br>
            bus), than to obfuscate the parameters of the secret sharing
            to provide<br>
            a tiny disadvantage to an adversary who gets ahold of one. <br>
            <br>
            The fact that it fails silently is really all downside, not
            a benefit. <br>
            If I have enough fragments, I can reconstruct the seed and
            see that it<br>
            produces addresses with money. &nbsp;If not, I know I need more
            fragments. <br>
            I'm much more concerned about my family having all the info
            they need to<br>
            recover the money, than an attacker knowing that he needs
            two more<br>
            fragments instead of which are well-secured anyway.<br>
            <br>
            <br>
            <br>
------------------------------------------------------------------------------<br>
            _______________________________________________<br>
            Bitcoin-development mailing list<br>
            <a moz-do-not-send="true"
              href="mailto:Bitcoin-development@lists.sourceforge.net">Bitcoin-development@lists.sourceforge.net</a><br>
<a class="moz-txt-link-freetext" href="https://lists.sourceforge.net/lists/listinfo/bitcoin-development">https://lists.sourceforge.net/lists/listinfo/bitcoin-development</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>

--------------020904030404000102000300--