-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path2ofm-guide.html
200 lines (173 loc) · 6.81 KB
/
2ofm-guide.html
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
<!doctype html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>2-of-M Split / Guide</title>
<link rel="stylesheet" href="./styles/index.css" />
</head>
<script type="module">
import "./sdk/framework.js"
import "./sdk/layout/all.js"
</script>
<style>
.sheet.column {
gap: 1em;
}
.sheet.column > section {
break-inside: auto;
}
.sheet.column h3 {
text-align: left;
}
dd {
margin-top: 1.6em;
}
</style>
<penlock-header
image="./assets/derive.png"
subtitle="Split a Seed Phrase (2-of-M)"
title="Guide"
></penlock-header>
<section class="notes">
<section class="card">
<img class="circled" src="./icons/lightbulb.svg" />
<h3>Recommendations</h3>
<ul>
<li>Print on normal printer paper.</li>
<li>Use the printed document when working with sensitive data.</li>
</ul>
<print-me></print-me>
</section>
</section>
<section class="print">
<section class="sheet column guide">
<h2>Split a Seed Phrase (2-of-M) / Guide</h2>
<aside>
<em>Note:</em> Prior experience of the 2-of-3 guide is required.
</aside>
<section>
<h3>Why?</h3>
<p>
While a 2-of-3 split is a good enough backup strategy, the
2-of-M generalization is sometimes needed for sophisticated use
cases such as social recovery. With this method, up to 26 shares
shares can be generated and any 2 of these can be used to
recover the seed phrase.
</p>
</section>
<section>
<h3>Steps</h3>
<p>
The process is very similar to that of the 2-of-3 guide. This
document only outlines the parts that differ.
</p>
<dd>1. Decide how many shares are needed:</dd>
<dt>
This is the "M" in "2-of-M". The maximum number of shares is 26.
Shares A, B and C are on the first sheet. Label each consecutive
share using letters in alphabetical order starting from D. On
each share, write the "2-of-__" part with the total number of
shares (M).
</dt>
<dd>2. Choose a group identifier:</dd>
<dt>
This is the same as the 2-of-3-guide. (e.g.:
<em>"Brand Model MM/DD"</em>)
</dt>
<dd>3. Write the seed phrase:</dd>
<dt>Identical to the 2-of-3 guide.</dt>
<dd>4. Generate the random share A:</dd>
<dt>Identical to the 2-of-3 guide.</dt>
<dd>5. Generate the checksums for the seed phrase and share A:</dd>
<dt>Identical to the 2-of-3 guide.</dt>
<dd>6. Derive as many shares as needed:</dd>
<dt>
This follows the same process as explained in the 2-of-3 guide,
except one needs to continue to derive more shares after "Share
C". This process is explained in
<em>"A) Deriving Shares"</em> shown below.
</dt>
<dd>7. Verify the derived checksums:</dd>
<dt>
Verify all of the shares' checksums as explained in the 2-of-3
guide, except for share A.
</dt>
<dd>8. Recover the first seed word:</dd>
<dt>
For first time users, recover the first seed word from any two
shares. The recovery process is explained below in
<em>"B) Recovering the Seed Phrase"</em>.
</dt>
</section>
<section>
<h3>A) Deriving Shares</h3>
<ol>
<li>
Place the pointer on the first character of the seed phrase.
</li>
<li>
On the outer row, look for the first character of share A.
</li>
<li>
Write the corresponding inner-row character as the first
character of share B.
</li>
<li>
Without moving the wheel, now look for that share B
character on the outer row.
</li>
<li>
Write the corresponding inner-row character as the first
character of share C.
</li>
<li>
Similarly, look for that share C character on the outer row
to find share D character. Keep going until the first
character of each share has been found.
</li>
<li>
Repeat steps 1 to 6 using the second character of the seed
phrase, and so on until both white and gray fields are
completed for all shares.
</li>
</ol>
</section>
<section>
<h3>B) Recovering the Seed Phrase</h3>
<p>
This follows the same process as explained in the 2-of-3 guide,
except that the outer share, the inner share and the solving
window have to be determined using the 2-of-M wheel:
</p>
<ol>
<li>Pick two shares of the same group.</li>
<li>
Start with the share with the lower alphabetically ordered
index. This is likely to be the outer share.
</li>
<li>Look for that share's index on the outer row.</li>
<li>Look for the other share's index on the inner row.</li>
<li>Turn the wheel so that both letters align.</li>
<li>
Look at the window under the "Recovery" label. If it shows a
number, then it is the solving window.
</li>
<li>
If it does not show a number, try again from step 2 but swap
the outer and the inner share.
</li>
</ol>
<p>
Now that the outer share, the inner share and the solving window
have been determined, proceed as explained in the 2-of-3 guide.
</p>
<aside>
<em>Example:</em> Recovering from the shares N and S. Align "N"
on the outer row with "S" on the inner row. The "Recovery"
window shows ⑤. Then, follow the recovery process using N as the
outer share, S as the inner share and ⑤ as the solving window.
</aside>
</section>
</section>
</section>
<penlock-footer></penlock-footer>