You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: App.org
+26-14Lines changed: 26 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,15 +22,15 @@ nil
22
22
#+RESULTS:
23
23
24
24
#+BEGIN_ABSTRACT
25
-
Creating personal Ethereum, Bitcoin and other Cryptocurrency accounts is /urgently/ needed, but is
25
+
Creating personal Ethereum, Bitcoin and other cryptocurrency accounts is /urgently/ needed, but is
26
26
complex and fraught with potential for loss of funds.
27
27
28
28
All Crypto wallets start with a "Seed": a large, random number used to derive all of your actual
29
29
Bitcoin, Ethereum, etc. wallets.
30
30
31
31
The best practice for using these wallets is to load this "Seed" into a secure hardware device, like
32
32
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
33
-
typed directly into the Trezor device to recover the Seed, and all of its Cryptocurrency accounts.
33
+
typed directly into the Trezor device to recover the Seed, and all of its cryptocurrency accounts.
34
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
35
SLIP-39 App to securely and reliably back up these BIP-39 phrases.
36
36
@@ -40,7 +40,7 @@ for the Seed to partners, family and friends. Also, encrypted "Paper Wallets" c
40
40
support software cryptocurrency wallets such as Metamask, Brave or various mobile-phone and
41
41
computer-based wallets.
42
42
43
-
Later, if you (or your heirs!) need to recover *all* of your Cryptocurrency accounts, they can
43
+
Later, if you (or your heirs!) need to recover *all* of your cryptocurrency accounts, they can
44
44
collect a sufficient threshold of the cards and regain access to all of the cryptocurrency accounts
45
45
related to the Seed.
46
46
#+END_ABSTRACT
@@ -99,7 +99,7 @@ related to the Seed.
99
99
stored in wallet addresses that can never be accessed because the corresponding "Private Key"
100
100
has been lost, or the passphrase forgotten.
101
101
102
-
The statistical chances of anyone successfully passing a Cryptocurrency wallet Private Key +
102
+
The statistical chances of anyone successfully passing a cryptocurrency wallet Private Key +
103
103
passphrase or Seed to their heirs over a 50-year period is therefore very low. Since memory fades
104
104
and "safe" storage places are lost, destroyed or forgotten, this risk actually increases
105
105
exponentially over time.
@@ -146,7 +146,7 @@ related to the Seed.
146
146
and can transfer the funds into their own wallet.
147
147
148
148
If the Paper Wallet is ever lost, you can recover the Private Key (it was derived from your
149
-
Seed!), and transfer the Cryptocurrency back into one of your own wallets.
149
+
Seed!), and transfer the cryptocurrency back into one of your own wallets.
150
150
151
151
* Recommended Vendors
152
152
@@ -157,7 +157,7 @@ related to the Seed.
157
157
158
158
The [[https://shop.trezor.io/product/trezor-model-t?offer_id=15&aff_id=10388][Trezor "Model T"]] hardware wallet has built-in SLIP-39 generation and recovery capability.
159
159
Enter the words on the SLIP-39 cards directly into the screen of the Trezor to recover your
We recommend the Trezor "Model T" for this reason. No other hardware wallet yet supports direct,
172
172
on-screen SLIP-39 Seed recovery. This feature is, simply, so fundamentally important for
173
-
Cryptocurrency Seed security and reliability that we consider it a necessity.
173
+
cryptocurrency Seed security and reliability that we consider it a necessity.
174
174
175
175
If you already have one of the less expensive Trezor wallets that only support BIP-39 backup, we
176
176
also support those, using the same BIP-39 Seed Entropy backup via SLIP-39 as for the Ledger, and
@@ -182,12 +182,6 @@ related to the Seed.
182
182
Mnemonics. However, you can now use the SLIP-39 App to backup your BIP-39 Seed Entropy!
183
183
Therefore, we now support the Ledger hardware wallets.
184
184
185
-
If you already have a BIP-39 Mnemonic, and would like back it up using SLIP-39 for more security
186
-
and recovery reliability, you can use the Pro Controls to do so. Later, when you need to recover
187
-
your BIP-39 Mnemonic, use the SLIP-39 App, select the Pro Controls, enter the SLIP-39 card
188
-
Mnemonics, and click "Using BIP-39" to reveal your original BIP-39 Mnemonic phrase. Then,
189
-
proceed with Ledger wallet recovery as normal, using the BIP-39 Mnemonic.
190
-
191
185
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.
Copy file name to clipboardExpand all lines: README.org
+69-1Lines changed: 69 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -953,7 +953,7 @@ recover your accounts to your Ledger (or other) hardware wallet.
953
953
| strength | Or, the number of bits of Entropy to produce (Default: 128) |
954
954
| language | Default is "english" |
955
955
#+LATEX: }
956
-
956
+
957
957
* Conversion from BIP-39 to SLIP-39
958
958
959
959
If we already have a BIP-39 wallet, it would certainly be nice to be able to create nice, safe
@@ -1547,6 +1547,74 @@ recover your accounts to your Ledger (or other) hardware wallet.
1547
1547
The MMC (Microsoft Management Console) is used to store your code-signing certificates.
1548
1548
See [[https://stackoverflow.com/questions/19879812/signing-exe-with-cer-file-what-is-my-certificates-name-that-signtool-exe-is][stackoverflow.com]] for how to enable its Certificate management.
1549
1549
1550
+
* Licensing
1551
+
1552
+
Each installation of the SLIP-39 App requires an Ed25519 "Agent" identity, and cryptographically
1553
+
signed license(s) to activate various python-slip39 features. No license is required to use basic
1554
+
features; advanced features require a license.
1555
+
1556
+
** Create an Ed25519 "Agent" Key
1557
+
1558
+
The Ed25519 signing "Agent" identity is loaded at start-up, and (if necessary) is created
1559
+
automatically on first execution. This is similar to the =ssh-keygen -t ed25519= procedure.
1560
+
1561
+
Each separate installation must have a ~/.crypto-licensing/python-slip39.crypto-keypair. This
1562
+
contains the licensing "Agent" credentials: a passphrase-encrypted Ed25519 private key, and a
1563
+
self-signed public key. This shows that we actually had access to the private key and used it to
1564
+
create a signature for the claimed public key and the supplied encrypted private key -- proving
1565
+
that the public key is valid, and associated with the encrypted private key.
1566
+
1567
+
** Validating an Advanced Feature License
1568
+
1569
+
When an advanced feature is used, all available =python-slip39.crypto-license= files are loaded.
1570
+
They are examined, and if a license is found that is:
1571
+
1572
+
- Assigned to this Agent and Machine-ID
1573
+
- Contains the required license authorizations
1574
+
1575
+
then the functionality is allowed to proceed.
1576
+
1577
+
If no license is found, instructions on how to obtain a license for this Agent on this Machine-ID
1578
+
will be displayed.
1579
+
1580
+
If you've already obtained a "master" license on your primary machine's SLIP-39 installation, you
1581
+
can use it to issue a sub-license to this installation (eg. for your air-gapped cryptocurrency
1582
+
management machine).
1583
+
1584
+
Otherwise, a URL is displayed at which the required "master" license can be issued.
1585
+
1586
+
*** Get a sub-license From Your "master" License
1587
+
1588
+
Typically, you'll be using python-slip39's advanced features on an air-gapped computer. You do
1589
+
not want to visit websites from this computer. So, you obtain a sub-license from your primary
1590
+
computer's python-slip39 installation, and place it on your secure air-gapped computer
1591
+
(eg. using a USB stick).
1592
+
1593
+
Take note of the secondary machine's Agent ID (pubkey) and Machine ID. On your primary
Take the output, and place it in the file =~/.crypto-licensing/python-slip39.crypto-license= on
1598
+
your air-gapped computer.
1599
+
1600
+
*** Obtaining an Advanced Feature "master" License
1601
+
1602
+
On your primary computer, open the provided URL in a browser. The URL contains the details of
1603
+
the advanced feature desired.
1604
+
1605
+
This URL's web page will request an Ed25519 "Agent" public key to issue your "master" license
1606
+
to. This should be your primary user account's Ed25519 "Agent" public key -- this master
1607
+
"Agent" will be issuing sub-licenses to any of your other SLIP-39 installations. You will be
1608
+
redirected to a URL that is unique to the advanced feature plus your Agent ID.
1609
+
1610
+
An invoice will be generated with unique Bitcoin, Ethereum and perhaps other cryptocurrency
1611
+
addresses. Pay the required amount of cryptocurrency to one of the provided wallet addresses.
1612
+
Within a few seconds, the cryptocurrency transfer will be confirmed.
1613
+
1614
+
Once the payment for the advanced feature is confirmed, the URL including your agent ID will
1615
+
always allow you to re-download the license. It is only usable by your Agent ID to issue
1616
+
sub-licenses to your python-slip39 installations on your machines.
1617
+
1550
1618
* Dependencies
1551
1619
1552
1620
Internally, python-slip39 project uses Trezor's [[https://gihub.com/trezor/python-shamir-mnemonic.git][python-shamir-mnemonic]] to encode the seed data to
0 commit comments