Skip to content

Commit 66d6ca5

Browse files
committed
Merge branch 'feature-bip39-backup'; v9.0.2
2 parents 4723903 + b11b4c2 commit 66d6ca5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+2877
-1516
lines changed

App.org

Lines changed: 39 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ Bitcoin, Ethereum, etc. wallets.
3131
The best practice for using these wallets is to load this "Seed" into a secure hardware device, like
3232
a [[https://shop.trezor.io/product/trezor-model-t?offer_id=15&aff_id=10388][Trezor "Model T"]] hardware wallet. SLIP-39 Mnemonic cards contain the recovery words, which are
3333
typed directly into the Trezor device to recover the Seed, and all of its Cryptocurrency accounts.
34+
For the [[https://shop.ledger.com/pages/ledger-nano-x?r=2cd1cb6ae51f][Ledger Nano]] and other hardware wallets supporting only BIP-39 Mnemonics, you can now use the
35+
SLIP-39 App to securely and reliably back up these BIP-39 phrases.
3436

3537
The [[https://github.com/pjkundert/python-slip39/releases/latest][macOS and win32 SLIP-39 App (download here -- .dmg for macOS, .msi for Windows)]] helps you
3638
generate Mnemonic cards and back up this Seed, securely and reliably, by distributing Mnemonic cards
@@ -80,24 +82,24 @@ related to the Seed.
8082

8183
It is estimated that 20% of Bitcoin is already lost in the first 10 years of its existence,
8284
stored in wallet addresses that can never be accessed because the corresponding "Private Key"
83-
has been lost, or the password forgotten.
85+
has been lost, or the passphrase forgotten.
8486

8587
The statistical chances of anyone successfully passing a Cryptocurrency wallet Private Key +
86-
password or Seed to their heirs over a 50-year period is therefore very low. Since memory fades
88+
passphrase or Seed to their heirs over a 50-year period is therefore very low. Since memory fades
8789
and "safe" storage places are lost, destroyed or forgotten, this risk actually increases
8890
exponentially over time.
8991

90-
I estimate the probability of successfully inheriting such a Paper Wallet + password or BIP-39
92+
I estimate the probability of successfully inheriting such a Paper Wallet + passphrase or BIP-39
9193
Mnemonic protected Seed is probably less than 50%. Perhaps *much* less.
9294

93-
*** Why Not a BIP-38 Encrypted Wallet + Password?
95+
*** Why Not a BIP-38 Encrypted Wallet + Passphrase?
9496

9597
Have you ever forgotten a password to an online account?
9698

97-
Well, with a BIP-38 Encrypted Wallet + Password, there is /no password reset/ option; there is
98-
no way to recover the password.
99+
Well, with a BIP-38 Encrypted Wallet + passphrase, there is /no password reset/ option; there is
100+
no way to recover the passphrase.
99101

100-
If the Wallet is lost, there is of course no way to recover it, even if you have the password.
102+
If the Wallet is lost, there is of course no way to recover it, even if you have the passphrase.
101103

102104
This option is perhaps even less desirable than using a BIP-39 Mnemonic Seed phrase, because
103105
each and every Encrypted Wallet is exposed to this risk of loss.
@@ -147,16 +149,43 @@ related to the Seed.
147149
#+END_EXPORT
148150

149151
#+BEGIN_EXPORT html
150-
<!-- Javascript Ad Tag: 1083 -->
151152
<div id="trezor1083SycVfv"></div>
152153
<script src="http://trezor.go2cloud.org/aff_ad?campaign_id=1083&aff_id=10388&format=js&divid=trezor1083SycVfv" type="text/javascript"></script>
153-
<!-- // End Ad Tag -->
154154
#+END_EXPORT
155155

156156
We recommend the Trezor "Model T" for this reason. No other hardware wallet yet supports direct,
157157
on-screen SLIP-39 Seed recovery. This feature is, simply, so fundamentally important for
158158
Cryptocurrency Seed security and reliability that we consider it a necessity.
159-
159+
160+
If you already have one of the less expensive Trezor wallets that only support BIP-39 backup, we
161+
also support those, using the same BIP-39 Seed Entropy backup via SLIP-39 as for the Ledger, and
162+
other traditional hardware wallets.
163+
164+
** Ledger
165+
166+
The Ledger hardware wallets are also very popular -- but they can be recovered only using BIP-39
167+
Mnemonics. However, you can now use the SLIP-39 App to backup your BIP-39 Seed Entropy!
168+
Therefore, we now support the Ledger hardware wallets.
169+
170+
If you already have a BIP-39 Mnemonic, and would like back it up using SLIP-39 for more security
171+
and recovery reliability, you can use the Pro Controls to do so. Later, when you need to recover
172+
your BIP-39 Mnemonic, use the SLIP-39 App, select the Pro Controls, enter the SLIP-39 card
173+
Mnemonics, and click "Using BIP-39" to reveal your original BIP-39 Mnemonic phrase. Then,
174+
proceed with Ledger wallet recovery as normal, using the BIP-39 Mnemonic.
175+
176+
The [[https://shop.ledger.com/pages/ledger-nano-s-plus?r=2cd1cb6ae51f][Ledger Nano S Plus]] has a large screen, at a reasonable price point, and connects via USB-C.
177+
178+
#+BEGIN_EXPORT html
179+
<a href="https://shop.ledger.com/pages/ledger-nano-s-plus?r=2cd1cb6ae51f"><img width=728 height=90 src="http://affiliate.ledger.com/image/728/90"></a>
180+
#+END_EXPORT
181+
182+
The [[https://shop.ledger.com/pages/ledger-nano-x?r=2cd1cb6ae51f][Ledger Nano X]] has a large screen and supports connectivity via Bluetooth, for much easier
183+
connectivity with mobile phone and laptop wallet software.
184+
185+
#+BEGIN_EXPORT html
186+
<a href="https://shop.ledger.com/pages/ledger-nano-x?r=2cd1cb6ae51f"><img width=728 height=90 src="http://affiliate.ledger.com/image/728/90"></a>
187+
#+END_EXPORT
188+
160189
** Netcoins.app
161190

162191
In Canada, one of the more highly regulatory-compliant Cryptocurrency exchanges is [[https://netcoins.app/r?ac=5YO1MZ][Netcoins.app

App.pdf

2.11 KB
Binary file not shown.

App.txt

Lines changed: 58 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ The best practice for using these wallets is to load this "Seed" into a
1919
secure hardware device, like a [Trezor "Model T"] hardware wallet.
2020
SLIP-39 Mnemonic cards contain the recovery words, which are typed
2121
directly into the Trezor device to recover the Seed, and all of its
22-
Cryptocurrency accounts.
22+
Cryptocurrency accounts. For the [Ledger Nano] and other hardware
23+
wallets supporting only BIP-39 Mnemonics, you can now use the SLIP-39
24+
App to securely and reliably back up these BIP-39 phrases.
2325

2426
The [macOS and win32 SLIP-39 App (download here – .dmg for macOS, .msi
2527
for Windows)] helps you generate Mnemonic cards and back up this Seed,
@@ -39,20 +41,24 @@ Table of Contents
3941
1. Security with Availability
4042
.. 1. SLIP-39 Mnemonic Recovery Cards
4143
..... 1. Why Not a BIP-39 Mnemonic Phrase?
42-
..... 2. Why Not a BIP-38 Encrypted Wallet + Password?
44+
..... 2. Why Not a BIP-38 Encrypted Wallet + Passphrase?
4345
.. 2. Paper Wallets
4446
..... 1. Walking-Around Money
4547
2. Affiliate Links
4648
.. 1. Trezor
47-
.. 2. Netcoins.app
48-
.. 3. Crypto.com
49-
.. 4. Protecting your SLIP-39 Cards
49+
.. 2. Ledger
50+
.. 3. Netcoins.app
51+
.. 4. Crypto.com
52+
.. 5. Protecting your SLIP-39 Cards
5053
3. Privacy Policy
5154

5255

5356
[Trezor "Model T"]
5457
<https://shop.trezor.io/product/trezor-model-t?offer_id=15&aff_id=10388>
5558

59+
[Ledger Nano]
60+
<https://shop.ledger.com/pages/ledger-nano-x?r=2cd1cb6ae51f>
61+
5662
[macOS and win32 SLIP-39 App (download here – .dmg for macOS, .msi for
5763
Windows)] <https://github.com/pjkundert/python-slip39/releases/latest>
5864

@@ -101,29 +107,29 @@ Windows)] <https://github.com/pjkundert/python-slip39/releases/latest>
101107
It is estimated that 20% of Bitcoin is already lost in the first 10
102108
years of its existence, stored in wallet addresses that can never be
103109
accessed because the corresponding "Private Key" has been lost, or the
104-
password forgotten.
110+
passphrase forgotten.
105111

106112
The statistical chances of anyone successfully passing a
107-
Cryptocurrency wallet Private Key + password or Seed to their heirs
113+
Cryptocurrency wallet Private Key + passphrase or Seed to their heirs
108114
over a 50-year period is therefore very low. Since memory fades and
109115
"safe" storage places are lost, destroyed or forgotten, this risk
110116
actually increases exponentially over time.
111117

112118
I estimate the probability of successfully inheriting such a Paper
113-
Wallet + password or BIP-39 Mnemonic protected Seed is probably less
119+
Wallet + passphrase or BIP-39 Mnemonic protected Seed is probably less
114120
than 50%. Perhaps *much* less.
115121

116122

117-
1.1.2 Why Not a BIP-38 Encrypted Wallet + Password?
118-
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
123+
1.1.2 Why Not a BIP-38 Encrypted Wallet + Passphrase?
124+
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
119125

120126
Have you ever forgotten a password to an online account?
121127

122-
Well, with a BIP-38 Encrypted Wallet + Password, there is /no password
123-
reset/ option; there is no way to recover the password.
128+
Well, with a BIP-38 Encrypted Wallet + passphrase, there is /no
129+
password reset/ option; there is no way to recover the passphrase.
124130

125131
If the Wallet is lost, there is of course no way to recover it, even
126-
if you have the password.
132+
if you have the passphrase.
127133

128134
This option is perhaps even less desirable than using a BIP-39
129135
Mnemonic Seed phrase, because each and every Encrypted Wallet is
@@ -186,12 +192,48 @@ Windows)] <https://github.com/pjkundert/python-slip39/releases/latest>
186192
feature is, simply, so fundamentally important for Cryptocurrency Seed
187193
security and reliability that we consider it a necessity.
188194

195+
If you already have one of the less expensive Trezor wallets that only
196+
support BIP-39 backup, we also support those, using the same BIP-39
197+
Seed Entropy backup via SLIP-39 as for the Ledger, and other
198+
traditional hardware wallets.
199+
189200

190201
[Trezor "Model T"]
191202
<https://shop.trezor.io/product/trezor-model-t?offer_id=15&aff_id=10388>
192203

193204

194-
2.2 Netcoins.app
205+
2.2 Ledger
206+
──────────
207+
208+
The Ledger hardware wallets are also very popular – but they can be
209+
recovered only using BIP-39 Mnemonics. However, you can now use the
210+
SLIP-39 App to backup your BIP-39 Seed Entropy! Therefore, we now
211+
support the Ledger hardware wallets.
212+
213+
If you already have a BIP-39 Mnemonic, and would like back it up using
214+
SLIP-39 for more security and recovery reliability, you can use the
215+
Pro Controls to do so. Later, when you need to recover your BIP-39
216+
Mnemonic, use the SLIP-39 App, select the Pro Controls, enter the
217+
SLIP-39 card Mnemonics, and click "Using BIP-39" to reveal your
218+
original BIP-39 Mnemonic phrase. Then, proceed with Ledger wallet
219+
recovery as normal, using the BIP-39 Mnemonic.
220+
221+
The [Ledger Nano S Plus] has a large screen, at a reasonable price
222+
point, and connects via USB-C.
223+
224+
The [Ledger Nano X] has a large screen and supports connectivity via
225+
Bluetooth, for much easier connectivity with mobile phone and laptop
226+
wallet software.
227+
228+
229+
[Ledger Nano S Plus]
230+
<https://shop.ledger.com/pages/ledger-nano-s-plus?r=2cd1cb6ae51f>
231+
232+
[Ledger Nano X]
233+
<https://shop.ledger.com/pages/ledger-nano-x?r=2cd1cb6ae51f>
234+
235+
236+
2.3 Netcoins.app
195237
────────────────
196238

197239
In Canada, one of the more highly regulatory-compliant Cryptocurrency
@@ -208,7 +250,7 @@ Windows)] <https://github.com/pjkundert/python-slip39/releases/latest>
208250
<https://netcoins.app/r?ac=5YO1MZ>
209251

210252

211-
2.3 Crypto.com
253+
2.4 Crypto.com
212254
──────────────
213255

214256
Use my referral link for [Crypto.com (referral code: 2x4hk92dnf)] to
@@ -222,7 +264,7 @@ Windows)] <https://github.com/pjkundert/python-slip39/releases/latest>
222264
<https://crypto.com/app/2x4hk92dnf>
223265

224266

225-
2.4 Protecting your SLIP-39 Cards
267+
2.5 Protecting your SLIP-39 Cards
226268
─────────────────────────────────
227269

228270
Protect your printed SLIP-39 cards from water damage by laminating

GNUmakefile

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ else
4141
endif
4242

4343
# To see all pytest output, uncomment --capture=no
44-
PYTESTOPTS = -vv --doctest-modules # --capture=no --log-cli-level=INFO
44+
PYTESTOPTS = -vv --doctest-modules --capture=no --log-cli-level=INFO
4545

4646
PY3TEST = $(PY3) -m pytest $(PYTESTOPTS)
4747

@@ -102,20 +102,25 @@ build: clean wheel
102102
#
103103
# org-mode products.
104104
#
105-
# deps-txt: All of the gui/.txt files needed to built, before the sdist, wheel or app
105+
# deps: All of the gui/.txt files needed to built, before the sdist, wheel or app
106106
#
107107
%.txt: %.org
108108
emacs $< --batch -f org-ascii-export-to-ascii --kill
109109

110-
GUI_TXT = $(patsubst %.org,%.txt,$(wildcard slip39/gui/*.org))
110+
TXT = $(patsubst %.org,%.txt,$(wildcard slip39/*/*.org))
111111

112112
slip39/gui/SLIP-39.txt:
113113
toilet --font ascii12 SLIP-39 > $@
114114
@echo " Safe & Effective (tm) Crypto Wallet Backup and Recovery" >> $@
115115
@echo " (explanations and instructions will appear here)" >> $@
116116

117+
slip39/layout/COVER.txt:
118+
toilet --width 200 https://slip39.com > $@
119+
@echo " Safe & Effective (tm) Crypto Wallet Backup and Recovery" >> $@
120+
@echo " (explanations and instructions will appear here)" >> $@
121+
117122
# Any build dependencies that are dynamically generated, and may need updating from time to time
118-
build-deps: $(GUI_TXT) slip39/gui/SLIP-39.txt
123+
deps: $(TXT) slip39/gui/SLIP-39.txt slip39/layout/COVER.txt
119124

120125
#
121126
# VirtualEnv build, install and activate
@@ -149,7 +154,7 @@ $(VENV_LOCAL)/$(VENV_NAME)-activate: $(VENV_LOCAL)/$(VENV_NAME)
149154
@bash --init-file $</venv-activate.sh -i
150155

151156

152-
wheel: build-deps dist/slip39-$(VERSION)-py3-none-any.whl
157+
wheel: deps dist/slip39-$(VERSION)-py3-none-any.whl
153158

154159
dist/slip39-$(VERSION)-py3-none-any.whl: build-check FORCE
155160
$(PY3) -m build
@@ -167,10 +172,10 @@ install: dist/slip39-$(VERSION)-py3-none-any.whl FORCE
167172
# o TODO: no signed and notarized package yet accepted for upload by macOS App Store
168173
installer: $(INSTALLER)
169174

170-
dmg: build-deps app-dmg-valid
171-
msi: build-deps dist/slip39-$(VERSION)-win64.msi
172-
exe: build-deps build/exe.$(CXFREEZE_EXT)/SLIP-39.exe
173-
app: build-deps dist/SLIP-39.app
175+
dmg: deps app-dmg-valid
176+
msi: deps dist/slip39-$(VERSION)-win64.msi
177+
exe: deps build/exe.$(CXFREEZE_EXT)/SLIP-39.exe
178+
app: deps dist/SLIP-39.app
174179

175180
app-packages: app-zip-valid app-dmg-valid app-pkg-valid
176181
app-upload: app-dmg-upload

0 commit comments

Comments
 (0)