summaryrefslogtreecommitdiff
path: root/04/6154f7e553ba7ad3c7c4f27e6e9760988740c9
blob: a33a81e90a6518c73c3628f184a6be7385b6ee87 (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
Return-Path: <bram@chia.net>
Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137])
 by lists.linuxfoundation.org (Postfix) with ESMTP id B6BACC002D
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Fri,  8 Jul 2022 01:47:47 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp4.osuosl.org (Postfix) with ESMTP id 8084841545
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Fri,  8 Jul 2022 01:47:47 +0000 (UTC)
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 8084841545
Authentication-Results: smtp4.osuosl.org;
 dkim=pass (2048-bit key) header.d=chia.net header.i=@chia.net
 header.a=rsa-sha256 header.s=google header.b=WYd4YKhk
X-Virus-Scanned: amavisd-new at osuosl.org
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level: 
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001]
 autolearn=ham autolearn_force=no
Received: from smtp4.osuosl.org ([127.0.0.1])
 by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id fYnvfSo3jP6N
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Fri,  8 Jul 2022 01:47:45 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.8.0
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 46D43408A9
Received: from mail-yb1-xb33.google.com (mail-yb1-xb33.google.com
 [IPv6:2607:f8b0:4864:20::b33])
 by smtp4.osuosl.org (Postfix) with ESMTPS id 46D43408A9
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Fri,  8 Jul 2022 01:47:45 +0000 (UTC)
Received: by mail-yb1-xb33.google.com with SMTP id y195so4333267yby.0
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Thu, 07 Jul 2022 18:47:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chia.net; s=google;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=LX/J8l5hFS1C9HZY2wTV3sSv/D5LKV+WdnChpkTZROc=;
 b=WYd4YKhkuKDaGgFY2uxMlv1iApShkdPzCaJFsd9Cr4pyeTxCLkugVvbbnli/VsSmQo
 4JXbQ+XKTf+MpFv/uApoUyFR+Iv4wrPdwn/U1uuHcZ9afZZUWIJpSi3Dt0lV4EoT0UfX
 314Tl6+dYwFzDuu+reQT3C5/tpHeUYJVd/A3mcqLJw3UmBPD/E4O7yNmTPOmM8NhDjay
 qScUVgOwXRBS2rs6AFAaXBRim7bfYbfRGrPrTD9aoDdF9vGZLo4vvCBiibek94hg6JNA
 1hePFp3gDRKWWnhF9lMj5pRPC390amg2fB8isPM4QEDruSxax6+D8crk5iLWJ9WAtOJZ
 7coA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=LX/J8l5hFS1C9HZY2wTV3sSv/D5LKV+WdnChpkTZROc=;
 b=D9TTWYFuC16kWXiu+xVqy3PW8Z2Caed+W1kTP8GnBju3/8RHqvUhhOt4v+PejSXULu
 E0j9QzG1cgLqf0z0Y0Mq28sCilFyx5mMs1ljVaZRA+uXccTifL9Qr+xVFqt4+4UwDgRx
 RIvdGhATyAu/9NdsVe28EWO8sYB3hz+18SGvPFkdSihA8bbVibrPQzgzrbzvlVOgAsLG
 5hk+DfiTqz6A8d8FT37/0Gyso3b9GYp3Gih9I37TMX+389jqeMB4UaJh/lO5s6klJhJf
 rfO9AgiISxZ5sc1Qq3ADKQowJfCHpzwU5NwCeifH+Em8IH6yScowSSXajFZnfKH7yQFy
 cHCg==
X-Gm-Message-State: AJIora9isUxG6WPgArIO1rpJm/H6FIkYVZU+F+lOz2auKJer1P5mz0RE
 JhcNRx5EdAWR94sPlQFDqzngeugIdH2HV3ZD7AkcHi8KvEU=
X-Google-Smtp-Source: AGRyM1vzMuWBb0PgRBsSh9RMGYmJuyGtTRhn3CDdLqYyOoZk0N1fOR3WufMN0Ai4y4fpOqwIsmqNr3//d6P1OsrvIc8=
X-Received: by 2002:a05:6902:54f:b0:66c:a098:339d with SMTP id
 z15-20020a056902054f00b0066ca098339dmr1097442ybs.116.1657244864236; Thu, 07
 Jul 2022 18:47:44 -0700 (PDT)
MIME-Version: 1.0
References: <0dc0e945-9e12-43ad-bd12-fcc0e18e4013@www.fastmail.com>
 <CAHUJnBAL-qPoGZ8XZS3jZiPaqMOt4Kg2ioM_jfCF3fDB3-ej9A@mail.gmail.com>
 <CAF90AvmOSa+V7+z16MXyJRCVh_iEceFp_CkbC_4jWixi4W5BbQ@mail.gmail.com>
In-Reply-To: <CAF90AvmOSa+V7+z16MXyJRCVh_iEceFp_CkbC_4jWixi4W5BbQ@mail.gmail.com>
From: Bram Cohen <bram@chia.net>
Date: Thu, 7 Jul 2022 18:47:33 -0700
Message-ID: <CAHUJnBCHZ7+6B83xDOaSc+EEpVe2x4VzmZUTQ3Z7FhmtMQFbjA@mail.gmail.com>
To: Pavol Rusnak <stick@satoshilabs.com>
Content-Type: multipart/alternative; boundary="00000000000070662c05e34163f7"
X-Mailman-Approved-At: Fri, 08 Jul 2022 01:48:52 +0000
Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Subject: Re: [bitcoin-dev] No Order Mnemonic
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.15
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, 08 Jul 2022 01:47:47 -0000

--00000000000070662c05e34163f7
Content-Type: text/plain; charset="UTF-8"

Part of the rules of my challenge is that the 'new' words need to be in the
same pool as the 'old' words, so any ordering is okay. Without that
requirement it's mathematically very straightforward.

On Thu, Jul 7, 2022 at 10:52 AM Pavol Rusnak <stick@satoshilabs.com> wrote:

> There is. Just encode the index of permutation used to scramble the
> otherwise sorted list. For 12 words you need to store 12! = ~32 bits so 3
> words should be enough.
>
> Repetitions make this more difficult, though.
>
> On Thu 7. 7. 2022 at 19:41, Bram Cohen via bitcoin-dev <
> bitcoin-dev@lists.linuxfoundation.org> wrote:
>
>> On Thu, Jul 7, 2022 at 7:43 AM Anton Shevchenko via bitcoin-dev <
>> bitcoin-dev@lists.linuxfoundation.org> wrote:
>>
>>> I made a python implementation for a different mnemonic encoding. The
>>> encoding requires user to remember words but not the order of those words.
>>> The code is open (MIT license) at https://github.com/sancoder/noomnem
>>
>>
>> Thanks Anton. There's an interesting mathematical question of whether
>> it's possible to make a code like this which always uses the BIP-39 words
>> for the same key as part of its encoding, basically adding a few words as
>> error correction in case the order is lost or confused. If the BIP-39
>> contains a duplicate you can add an extra word.
>> _______________________________________________
>> bitcoin-dev mailing list
>> bitcoin-dev@lists.linuxfoundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>>
> --
> Best Regards / S pozdravom,
>
> Pavol "stick" Rusnak
> Co-Founder, SatoshiLabs
>

--00000000000070662c05e34163f7
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Part of the rules of my challenge is that the &#39;new&#39=
; words need to be in the same pool as the &#39;old&#39; words, so any orde=
ring is okay. Without that requirement it&#39;s mathematically very straigh=
tforward.</div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gma=
il_attr">On Thu, Jul 7, 2022 at 10:52 AM Pavol Rusnak &lt;<a href=3D"mailto=
:stick@satoshilabs.com">stick@satoshilabs.com</a>&gt; wrote:<br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:=
1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"auto">There is. Ju=
st encode the index of permutation used to scramble the otherwise sorted li=
st. For 12 words you need to store 12! =3D ~32 bits so 3 words should be en=
ough.=C2=A0</div><div dir=3D"auto"><br></div><div dir=3D"auto">Repetitions =
make this more difficult, though.=C2=A0</div><div><br><div class=3D"gmail_q=
uote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu 7. 7. 2022 at 19:41, Bra=
m Cohen via bitcoin-dev &lt;<a href=3D"mailto:bitcoin-dev@lists.linuxfounda=
tion.org" target=3D"_blank">bitcoin-dev@lists.linuxfoundation.org</a>&gt; w=
rote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0p=
x 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=
=3D"ltr"><div dir=3D"ltr">On Thu, Jul 7, 2022 at 7:43 AM Anton Shevchenko v=
ia bitcoin-dev &lt;<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org"=
 target=3D"_blank">bitcoin-dev@lists.linuxfoundation.org</a>&gt; wrote:<br>=
</div><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D=
"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-le=
ft:1ex">I made a python implementation for a different mnemonic encoding. T=
he encoding requires user to remember words but not the order of those word=
s.<br>
The code is open (MIT license) at <a href=3D"https://github.com/sancoder/no=
omnem" rel=3D"noreferrer" target=3D"_blank">https://github.com/sancoder/noo=
mnem</a></blockquote><div><br></div><div>Thanks Anton. There&#39;s an inter=
esting mathematical question of whether it&#39;s possible to make a code li=
ke this which always uses the BIP-39 words for the same key as part of its =
encoding, basically adding a few words as error correction in case the orde=
r is lost or confused. If the BIP-39 contains a duplicate you can add an ex=
tra word.</div></div></div>
_______________________________________________<br>
bitcoin-dev mailing list<br>
<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">=
bitcoin-dev@lists.linuxfoundation.org</a><br>
<a href=3D"https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" =
rel=3D"noreferrer" target=3D"_blank">https://lists.linuxfoundation.org/mail=
man/listinfo/bitcoin-dev</a><br>
</blockquote></div></div>-- <br><div dir=3D"ltr"><div dir=3D"ltr"><div><div=
 dir=3D"ltr"><div></div><div>Best Regards / S pozdravom,</div><div><br></di=
v><div>Pavol &quot;stick&quot; Rusnak</div><div>Co-Founder, SatoshiLabs</di=
v></div></div></div></div>
</blockquote></div>

--00000000000070662c05e34163f7--