diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index f5bf49f..ccaa456 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -2,11 +2,12 @@ name: Release
on:
push:
- branches:
- - master
+ tags:
+ - '*'
jobs:
pypi-publish:
+ if: startsWith(github.ref, 'refs/tags')
name: Upload release to PyPI
runs-on: ubuntu-latest
environment:
diff --git a/App.org b/App.org
index 1b391b5..53618f2 100644
--- a/App.org
+++ b/App.org
@@ -179,18 +179,22 @@ cryptocurrency accounts related to the Seed.
* Recommended Vendors
To assist you in obtaining various SLIP-39 compatible components, we have established some
- relationship with reliable vendors.
+ relationships with reliable vendors. If you do nothing else -- get a Hardware Wallet!
+
+ Regardless of whether or not you decide to use safer SLIP-39 Mnemonics, or just continue on with
+ your BIP-39 Mnemonic phrase: using a Hardware Wallet or two to secure your Seed and all of its
+ derived crypto wallets is the safest way to access your cryptocurrency!
** Trezor
- The [[https://trezor.go2cloud.org/SHdv][Trezor Safe 3]] hardware wallet has built-in SLIP-39 generation and recovery capability.
- Enter the words on the SLIP-39 cards directly into the screen of the Trezor to recover your
- cryptocurrency accounts.
+ The inexpensive [[https://trezor.go2cloud.org/SHdv][Trezor Safe 3]] hardware wallet has built-in SLIP-39 generation and recovery
+ capability. Enter the words on the SLIP-39 cards directly into the screen of the Trezor to
+ recover your cryptocurrency accounts.
#+BEGIN_EXPORT html
-
-
+
+
#+END_EXPORT
@@ -211,16 +215,12 @@ cryptocurrency accounts related to the Seed.
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.
#+BEGIN_EXPORT html
-
+
#+END_EXPORT
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
connectivity with mobile phone and laptop wallet software.
- #+BEGIN_EXPORT html
-
- #+END_EXPORT
-
** Netcoins.app
In Canada, one of the more highly regulatory-compliant cryptocurrency exchanges is [[https://netcoins.app/r?ac=5YO1MZ][Netcoins.app
diff --git a/App.pdf b/App.pdf
index 3f23940..67baf55 100644
Binary files a/App.pdf and b/App.pdf differ
diff --git a/App.txt b/App.txt
index 1102f01..5739e2a 100644
--- a/App.txt
+++ b/App.txt
@@ -230,16 +230,22 @@ Table of Contents
═════════════════════
To assist you in obtaining various SLIP-39 compatible components, we
- have established some relationship with reliable vendors.
+ have established some relationships with reliable vendors. If you do
+ nothing else – get a Hardware Wallet!
+
+ Regardless of whether or not you decide to use safer SLIP-39
+ Mnemonics, or just continue on with your BIP-39 Mnemonic phrase: using
+ a Hardware Wallet or two to secure your Seed and all of its derived
+ crypto wallets is the safest way to access your cryptocurrency!
2.1 Trezor
──────────
- The [Trezor Safe 3] hardware wallet has built-in SLIP-39 generation
- and recovery capability. Enter the words on the SLIP-39 cards
- directly into the screen of the Trezor to recover your cryptocurrency
- accounts.
+ The inexpensive [Trezor Safe 3] hardware wallet has built-in SLIP-39
+ generation and recovery capability. Enter the words on the SLIP-39
+ cards directly into the screen of the Trezor to recover your
+ cryptocurrency accounts.
We recommend the Trezor Safe 3 for this reason. No other hardware
wallet yet supports direct, on-screen SLIP-39 Seed recovery.
diff --git a/README.pdf b/README.pdf
index 7a13c44..32156e2 100644
Binary files a/README.pdf and b/README.pdf differ
diff --git a/README.txt b/README.txt
index 23835fb..b25d96f 100644
--- a/README.txt
+++ b/README.txt
@@ -135,7 +135,7 @@ Table of Contents
│ slip39 --secret "seven replace great luggage fox rent general tower guess inside smile sing"
└────
- SLIP39-2024-11-18+07.08.50-ETH-0x6E6268F14B922cb924C7683A415B30C2bf967000.pdf
+ SLIP39-2024-11-21+08.15.42-ETH-0x6E6268F14B922cb924C7683A415B30C2bf967000.pdf
<./images/SLIP39-backup-BIP39.png>
@@ -369,14 +369,14 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:08:52 slip39 It is recommended to not use '-s|--secret '; specify '-' to read from input
- │ 2024-11-18 07:08:52 slip39 It is recommended to not use '-w|--wallet '; specify '-' to read from input
- │ 2024-11-18 07:08:52 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 15209 requiring 2 of 4 (extendable) groups to recover
- │ 2024-11-18 07:08:52 slip39.layout ETH m/44'/60'/0'/0/0 : 0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1
- │ 2024-11-18 07:08:52 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9yscq3l2yfxlvnlk3cszpqefparrv7tk24u6pl
- │ 2024-11-18 07:08:52 slip39.layout DOGE m/44'/3'/0'/0/0 : DN8PNN3dipSJpLmyxtGe4EJH38EhqF8Sfy
- │ 2024-11-18 07:08:52 slip39.layout LTC m/84'/2'/0'/0/0 : ltc1qe5m2mst9kjcqtfpapaanaty40qe8xtusmq4ake
- │ 2024-11-18 07:08:58 slip39.layout Writing SLIP39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-18+07.08.55-ETH-0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1.pdf
+ │ 2024-11-21 08:15:43 slip39 It is recommended to not use '-s|--secret '; specify '-' to read from input
+ │ 2024-11-21 08:15:43 slip39 It is recommended to not use '-w|--wallet '; specify '-' to read from input
+ │ 2024-11-21 08:15:43 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 9141 requiring 2 of 4 (extendable) groups to recover
+ │ 2024-11-21 08:15:43 slip39.layout ETH m/44'/60'/0'/0/0 : 0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1
+ │ 2024-11-21 08:15:43 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9yscq3l2yfxlvnlk3cszpqefparrv7tk24u6pl
+ │ 2024-11-21 08:15:43 slip39.layout DOGE m/44'/3'/0'/0/0 : DN8PNN3dipSJpLmyxtGe4EJH38EhqF8Sfy
+ │ 2024-11-21 08:15:43 slip39.layout LTC m/84'/2'/0'/0/0 : ltc1qe5m2mst9kjcqtfpapaanaty40qe8xtusmq4ake
+ │ 2024-11-21 08:15:48 slip39.layout Writing SLIP39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-21+08.15.46-ETH-0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1.pdf
└────
@@ -396,9 +396,9 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:08:59 slip39.recovery Recovered 128-bit Encrypted SLIP-39 Seed Entropy using 2 groups comprising 2 mnemonics
- │ 2024-11-18 07:08:59 slip39.recovery Seed decoded from SLIP-39 Mnemonics w/ no passphrase
- │ 2024-11-18 07:08:59 slip39.recovery Recovered SLIP-39 secret; To re-generate SLIP-39 wallet, send it to: python3 -m slip39 --secret -
+ │ 2024-11-21 08:15:49 slip39.recovery Recovered 128-bit Encrypted SLIP-39 Seed Entropy using 2 groups comprising 2 mnemonics
+ │ 2024-11-21 08:15:49 slip39.recovery Seed decoded from SLIP-39 Mnemonics w/ no passphrase
+ │ 2024-11-21 08:15:49 slip39.recovery Recovered SLIP-39 secret; To re-generate SLIP-39 wallet, send it to: python3 -m slip39 --secret -
│ ffffffffffffffffffffffffffffffff
└────
@@ -417,13 +417,13 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:09:00 slip39 It is recommended to not use '-w|--wallet '; specify '-' to read from input
- │ 2024-11-18 07:09:00 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 3510 requiring 2 of 4 (extendable) groups to recover
- │ 2024-11-18 07:09:00 slip39.layout ETH m/44'/60'/0'/0/0 : 0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1
- │ 2024-11-18 07:09:00 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9yscq3l2yfxlvnlk3cszpqefparrv7tk24u6pl
- │ 2024-11-18 07:09:00 slip39.layout DOGE m/44'/3'/0'/0/0 : DN8PNN3dipSJpLmyxtGe4EJH38EhqF8Sfy
- │ 2024-11-18 07:09:00 slip39.layout LTC m/84'/2'/0'/0/0 : ltc1qe5m2mst9kjcqtfpapaanaty40qe8xtusmq4ake
- │ 2024-11-18 07:09:06 slip39.layout Writing SLIP39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-18+07.09.04-ETH-0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1.pdf
+ │ 2024-11-21 08:15:50 slip39 It is recommended to not use '-w|--wallet '; specify '-' to read from input
+ │ 2024-11-21 08:15:50 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 30285 requiring 2 of 4 (extendable) groups to recover
+ │ 2024-11-21 08:15:50 slip39.layout ETH m/44'/60'/0'/0/0 : 0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1
+ │ 2024-11-21 08:15:50 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9yscq3l2yfxlvnlk3cszpqefparrv7tk24u6pl
+ │ 2024-11-21 08:15:50 slip39.layout DOGE m/44'/3'/0'/0/0 : DN8PNN3dipSJpLmyxtGe4EJH38EhqF8Sfy
+ │ 2024-11-21 08:15:50 slip39.layout LTC m/84'/2'/0'/0/0 : ltc1qe5m2mst9kjcqtfpapaanaty40qe8xtusmq4ake
+ │ 2024-11-21 08:15:55 slip39.layout Writing SLIP39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-21+08.15.53-ETH-0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1.pdf
└────
@@ -633,13 +633,13 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:09:08 slip39 It is recommended to not use '-s|--secret '; specify '-' to read from input
- │ 2024-11-18 07:09:08 slip39 It is recommended to not use '-w|--wallet '; specify '-' to read from input
- │ 2024-11-18 07:09:08 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 17235 requiring 2 of 4 (extendable) groups to recover
- │ 2024-11-18 07:09:08 slip39.layout ETH m/44'/60'/0'/0/0 : 0xb44A2011A99596671d5952CdC22816089f142FB3
- │ 2024-11-18 07:09:08 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qcupw7k8enymvvsa7w35j5hq4ergtvus3zk8a8s
- │ 2024-11-18 07:09:13 slip39.layout Writing SLIP39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-18+07.09.12-ETH-0xb44A2011A99596671d5952CdC22816089f142FB3.pdf
- │ SLIP39-2024-11-18+07.09.12-ETH-0xb44A2011A99596671d5952CdC22816089f142FB3.pdf
+ │ 2024-11-21 08:15:57 slip39 It is recommended to not use '-s|--secret '; specify '-' to read from input
+ │ 2024-11-21 08:15:57 slip39 It is recommended to not use '-w|--wallet '; specify '-' to read from input
+ │ 2024-11-21 08:15:57 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 4694 requiring 2 of 4 (extendable) groups to recover
+ │ 2024-11-21 08:15:57 slip39.layout ETH m/44'/60'/0'/0/0 : 0xb44A2011A99596671d5952CdC22816089f142FB3
+ │ 2024-11-21 08:15:57 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qcupw7k8enymvvsa7w35j5hq4ergtvus3zk8a8s
+ │ 2024-11-21 08:16:01 slip39.layout Writing SLIP39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-21+08.15.59-ETH-0xb44A2011A99596671d5952CdC22816089f142FB3.pdf
+ │ SLIP39-2024-11-21+08.15.59-ETH-0xb44A2011A99596671d5952CdC22816089f142FB3.pdf
└────
@@ -723,13 +723,13 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:09:15 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 25922 requiring 2 of 4 (extendable) groups to recover
- │ 2024-11-18 07:09:15 slip39.layout ETH m/44'/60'/0'/0/0 : 0x63ec7a15Df6bA4f1eb8965E21B3eC9D9fc6D78B5
- │ 2024-11-18 07:09:15 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qqxtvd5fndxe00hj30z4v7z37t4gxdswk0luv9r
+ │ 2024-11-21 08:16:02 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 30077 requiring 2 of 4 (extendable) groups to recover
+ │ 2024-11-21 08:16:02 slip39.layout ETH m/44'/60'/0'/0/0 : 0x9FF67Ce0593D9c7F94CDfB67eDA83c8f3399CEFb
+ │ 2024-11-21 08:16:02 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9rrn4x0dhcnalfp2m8fdz0xqfnvlj85jlnacse
│ ...later, after recovering SLIP-39 mnemonics...
- │ 2024-11-18 07:09:16 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 15824 requiring 2 of 4 (extendable) groups to recover
- │ 2024-11-18 07:09:16 slip39.layout ETH m/44'/60'/0'/0/0 : 0x63ec7a15Df6bA4f1eb8965E21B3eC9D9fc6D78B5
- │ 2024-11-18 07:09:16 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qqxtvd5fndxe00hj30z4v7z37t4gxdswk0luv9r
+ │ 2024-11-21 08:16:02 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 5773 requiring 2 of 4 (extendable) groups to recover
+ │ 2024-11-21 08:16:02 slip39.layout ETH m/44'/60'/0'/0/0 : 0x9FF67Ce0593D9c7F94CDfB67eDA83c8f3399CEFb
+ │ 2024-11-21 08:16:02 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9rrn4x0dhcnalfp2m8fdz0xqfnvlj85jlnacse
└────
@@ -750,12 +750,12 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:09:17 slip39 Assuming BIP-39 seed entropy: Ensure you recover and use via a BIP-39 Mnemonic
- │ 2024-11-18 07:09:17 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 31527 requiring 2 of 4 (extendable) groups to recover
- │ 2024-11-18 07:09:17 slip39.layout ETH m/44'/60'/0'/0/0 : 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
- │ 2024-11-18 07:09:17 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
- │ 2024-11-18 07:09:20 slip39.layout Writing SLIP39 backup for BIP-39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-18+07.09.20-ETH-0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E.pdf
- │ SLIP39-2024-11-18+07.09.20-ETH-0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E.pdf
+ │ 2024-11-21 08:16:03 slip39 Assuming BIP-39 seed entropy: Ensure you recover and use via a BIP-39 Mnemonic
+ │ 2024-11-21 08:16:03 slip39 Generated 128-bit SLIP-39 Mnemonics w/ identifier 4275 requiring 2 of 4 (extendable) groups to recover
+ │ 2024-11-21 08:16:03 slip39.layout ETH m/44'/60'/0'/0/0 : 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
+ │ 2024-11-21 08:16:03 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
+ │ 2024-11-21 08:16:06 slip39.layout Writing SLIP39 backup for BIP-39-encoded wallet for 'SLIP39' to: SLIP39-2024-11-21+08.16.06-ETH-0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E.pdf
+ │ SLIP39-2024-11-21+08.16.06-ETH-0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E.pdf
└────
@@ -765,7 +765,7 @@ Table of Contents
┌────
│ echo -n "[[./$( \
- │ python3 -m slip39 --secret "zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo wrong" --output SLIP39-Example.pdf \
+ │ python3 -m slip39 --secret "zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo wrong" --output SLIP39-Example.pdf \
│ )]]"
│
└────
@@ -909,11 +909,11 @@ Table of Contents
┌────
│
│
- │ nonce: 325acfbf3180635a1f096e8679977a70b7704fc222010522b4cd8660
- │ 0: 79880c8d8cf650fe68af9da3a92cb4eb7229fd405fd7086abed948f6a2c7c7617ffcf1bad6ce4c78240541bcaf2a6...
- │ 1: 60e6e208b91b13b752a06b6e52d2ac99315fd72de237939b3a42677de50ac4abe32038e3dce1d56f438e831599dd1...
- │ 2: 2db8e9235c5ce62092061929dfca774344ed9e476561bb739a5d2687c356970cd2998a49c9fce183a6c1134c659ad...
- │ 3: f05b465d4bc42c60b29044bcdb71e24e93f51a145dc1c08c968e48ce025d567cf5e94879def43b30b192019e886c2...
+ │ nonce: 93791b158cfeaa780a183aea43989273655940ceb181e2321d06987e
+ │ 0: 95c57c0a1cda08808642f717baf5520406a941efee90cf087eeeb33ae5447cfbfe77e365ad7f47e5c54f5e9bff88d...
+ │ 1: e6f4f9a8e389e07d3b830a0e9ba0f134030949b3317864ede19507e79f288d687299c3e35f30df180cb8e085ef4b6...
+ │ 2: def03710b296931c24448056f82d4cfeead53a2e835762d16819ab3a20285ceaaeba1f8362db67f935c007bec0a6d...
+ │ 3: 09ee6de19d77b9abc4b3d19ecec9f3cd10a382c2f04daee2821a6b6df5591e17f2e83a00bf5e2eaaa827a0a44c4a6...
└────
@@ -954,7 +954,7 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:09:32 slip39.generator Decrypting accountgroups with nonce: acff9300ce141ad85c9ea0fb
+ │ 2024-11-21 08:16:15 slip39.generator Decrypting accountgroups with nonce: 70a2d20d748d76a5cb01d58f
│ 0: [["ETH", "m/44'/60'/0'", "xpub6C2y6te3rtGg9SspDDFbjGEgn7yxc5ZzzkBk62yz3GRKvuqdaMDS7NUbesTJ44FprxAE7hvm5ZQjDMbYWehdJQsyBCP3mL87nnB4cB47HGS"], ["BTC", "m/84'/0'/0'", "zpub6rD5AGSXPTDMSnpmczjENMT3NvVF7q5MySww6uxitUsBYgkZLeBywrcwUWhW5YkeY2aS7xc45APPgfA6s6wWfG2gnfABq6TDz9zqeMu2JCY"]]
│ 1: [["ETH", "m/44'/60'/1'", "xpub6C2y6te3rtGgCPb4Gi89Qin7Da2dvnnHSuR9rLQV6bWQKiyfKyjtVzr2n9mKmTEHzr4rzK78LmdSXLSzvpZqVs4ussUU8NyXpt9nWWbKG3C"], ["BTC", "m/84'/0'/1'", "zpub6rD5AGSXPTDMUaSe3aGDqWk4uMTwcrFwytkKuDGmi3ofUkJ4dQxXHZwiXWbHHrELJAor8xGs61F8sbKS2JdQkLZRnu5PGktmr6F32nEBUBb"]]
│ 2: [["ETH", "m/44'/60'/2'", "xpub6C2y6te3rtGgENnaK62SyPawqKvbde17wc2ndMGFWi2yAkk3piwEY9QK8egtE9ye9uoqiqs5WV3MTNCCP2qjUNDb8cmSg4ZsVnwQnkziXVh"], ["BTC", "m/84'/0'/2'", "zpub6rD5AGSXPTDMYx2sQPuZgceniniRXDK5tELiREjxfSGJENNxuQD3u2yfpRqnNE1JeH14Pa7MVGrofDJtyXw252ws9HgRcd82X2M4KzkUfpZ"]]
@@ -976,16 +976,16 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:09:33 slip39.generator Decrypting accountgroups with nonce: ada2fca9ee75f3bad98c5c2e
- │ --- 0
- │ ["ETH","m/44'/60'/0'","xpub6C2y6te3rtGg9SspDDFbjGEgn7yxc5ZzzkBk62yz3GRKvuqdaMDS7NUbesTJ44FprxAE7hvm5ZQjDMbYWehdJQsyBCP3mL87nnB4cB47HGS"]
- │ ["BTC","m/84'/0'/0'","zpub6rD5AGSXPTDMSnpmczjENMT3NvVF7q5MySww6uxitUsBYgkZLeBywrcwUWhW5YkeY2aS7xc45APPgfA6s6wWfG2gnfABq6TDz9zqeMu2JCY"]
- │ --- 1
- │ ["ETH","m/44'/60'/1'","xpub6C2y6te3rtGgCPb4Gi89Qin7Da2dvnnHSuR9rLQV6bWQKiyfKyjtVzr2n9mKmTEHzr4rzK78LmdSXLSzvpZqVs4ussUU8NyXpt9nWWbKG3C"]
- │ ["BTC","m/84'/0'/1'","zpub6rD5AGSXPTDMUaSe3aGDqWk4uMTwcrFwytkKuDGmi3ofUkJ4dQxXHZwiXWbHHrELJAor8xGs61F8sbKS2JdQkLZRnu5PGktmr6F32nEBUBb"]
- │ --- 2
- │ ["ETH","m/44'/60'/2'","xpub6C2y6te3rtGgENnaK62SyPawqKvbde17wc2ndMGFWi2yAkk3piwEY9QK8egtE9ye9uoqiqs5WV3MTNCCP2qjUNDb8cmSg4ZsVnwQnkziXVh"]
- │ ["BTC","m/84'/0'/2'","zpub6rD5AGSXPTDMYx2sQPuZgceniniRXDK5tELiREjxfSGJENNxuQD3u2yfpRqnNE1JeH14Pa7MVGrofDJtyXw252ws9HgRcd82X2M4KzkUfpZ"]
+ │ 2024-11-21 08:16:16 slip39.generator Decrypting accountgroups with nonce: 1f71686886ae44b4ae8535bd
+ │ --- 0
+ │ ["ETH","m/44'/60'/0'","xpub6C2y6te3rtGg9SspDDFbjGEgn7yxc5ZzzkBk62yz3GRKvuqdaMDS7NUbesTJ44FprxAE7hvm5ZQjDMbYWehdJQsyBCP3mL87nnB4cB47HGS"]
+ │ ["BTC","m/84'/0'/0'","zpub6rD5AGSXPTDMSnpmczjENMT3NvVF7q5MySww6uxitUsBYgkZLeBywrcwUWhW5YkeY2aS7xc45APPgfA6s6wWfG2gnfABq6TDz9zqeMu2JCY"]
+ │ --- 1
+ │ ["ETH","m/44'/60'/1'","xpub6C2y6te3rtGgCPb4Gi89Qin7Da2dvnnHSuR9rLQV6bWQKiyfKyjtVzr2n9mKmTEHzr4rzK78LmdSXLSzvpZqVs4ussUU8NyXpt9nWWbKG3C"]
+ │ ["BTC","m/84'/0'/1'","zpub6rD5AGSXPTDMUaSe3aGDqWk4uMTwcrFwytkKuDGmi3ofUkJ4dQxXHZwiXWbHHrELJAor8xGs61F8sbKS2JdQkLZRnu5PGktmr6F32nEBUBb"]
+ │ --- 2
+ │ ["ETH","m/44'/60'/2'","xpub6C2y6te3rtGgENnaK62SyPawqKvbde17wc2ndMGFWi2yAkk3piwEY9QK8egtE9ye9uoqiqs5WV3MTNCCP2qjUNDb8cmSg4ZsVnwQnkziXVh"]
+ │ ["BTC","m/84'/0'/2'","zpub6rD5AGSXPTDMYx2sQPuZgceniniRXDK5tELiREjxfSGJENNxuQD3u2yfpRqnNE1JeH14Pa7MVGrofDJtyXw252ws9HgRcd82X2M4KzkUfpZ"]
└────
Then, it generates each client's sequence of addresses locally: you
@@ -1006,28 +1006,28 @@ Table of Contents
└────
┌────
- │ 2024-11-18 07:09:34 slip39.generator Decrypting accountgroups with nonce: faaedc29cb5ff625ecd2beb4
- │ --- 0
- │ ETH m/0/0 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
- │ ETH m/0/1 0xd1a7451beB6FE0326b4B78e3909310880B781d66
- │ ETH m/0/2 0x578270B5E5B53336baC354756b763b309eCA90Ef
- │ BTC m/0/0 bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
- │ BTC m/0/1 bc1qkd33yck74lg0kaq4tdcmu3hk4yruhjayxpe9ug
- │ BTC m/0/2 bc1qvr7e5aytd0hpmtaz2d443k364hprvqpm3lxr8w
- │ --- 1
- │ ETH m/0/0 0x9176A747BA67C1d7F80AaDC930180b4183AfB5c4
- │ ETH m/0/1 0xa1409B655aC3e09eF261de00BAa4e85bD2820AA4
- │ ETH m/0/2 0xae22C13Ef5891Ed835C24Ed5090542DFa748c21F
- │ BTC m/0/0 bc1q8pqnqs573vx3qdp0xp6qdqzvnvy8px24rxh9lp
- │ BTC m/0/1 bc1qwtc58u4mmnxa29u8j07e6lmqpnrs38vefy3y24
- │ BTC m/0/2 bc1qg9s8qzm0lcetfv6umhlm3evtca5zsqv7elqd5s
- │ --- 2
- │ ETH m/0/0 0x32A8b066c5dbD37147766491A32A612d313fda25
- │ ETH m/0/1 0xff8b88b975f9C296531C1E93d5e4f28757b4571A
- │ ETH m/0/2 0xc95Bdf50CA542E1B689f5C06e2D8bAd0625Dfa23
- │ BTC m/0/0 bc1q09zpchmkcnny90ghkg76gd69dvaf57qwcsrhes
- │ BTC m/0/1 bc1qjytdyw6zramwt4nvvpte93hfry2d4xhhqn0xg4
- │ BTC m/0/2 bc1qcummre0pxv5xj4gvyut0t84vfwjd6eu7r387v4
+ │ 2024-11-21 08:16:16 slip39.generator Decrypting accountgroups with nonce: 241d5d452dab493fb1667f95
+ │ --- 0
+ │ ETH m/0/0 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
+ │ ETH m/0/1 0xd1a7451beB6FE0326b4B78e3909310880B781d66
+ │ ETH m/0/2 0x578270B5E5B53336baC354756b763b309eCA90Ef
+ │ BTC m/0/0 bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
+ │ BTC m/0/1 bc1qkd33yck74lg0kaq4tdcmu3hk4yruhjayxpe9ug
+ │ BTC m/0/2 bc1qvr7e5aytd0hpmtaz2d443k364hprvqpm3lxr8w
+ │ --- 1
+ │ ETH m/0/0 0x9176A747BA67C1d7F80AaDC930180b4183AfB5c4
+ │ ETH m/0/1 0xa1409B655aC3e09eF261de00BAa4e85bD2820AA4
+ │ ETH m/0/2 0xae22C13Ef5891Ed835C24Ed5090542DFa748c21F
+ │ BTC m/0/0 bc1q8pqnqs573vx3qdp0xp6qdqzvnvy8px24rxh9lp
+ │ BTC m/0/1 bc1qwtc58u4mmnxa29u8j07e6lmqpnrs38vefy3y24
+ │ BTC m/0/2 bc1qg9s8qzm0lcetfv6umhlm3evtca5zsqv7elqd5s
+ │ --- 2
+ │ ETH m/0/0 0x32A8b066c5dbD37147766491A32A612d313fda25
+ │ ETH m/0/1 0xff8b88b975f9C296531C1E93d5e4f28757b4571A
+ │ ETH m/0/2 0xc95Bdf50CA542E1B689f5C06e2D8bAd0625Dfa23
+ │ BTC m/0/0 bc1q09zpchmkcnny90ghkg76gd69dvaf57qwcsrhes
+ │ BTC m/0/1 bc1qjytdyw6zramwt4nvvpte93hfry2d4xhhqn0xg4
+ │ BTC m/0/2 bc1qcummre0pxv5xj4gvyut0t84vfwjd6eu7r387v4
└────
You'll notice that, after this elaborate exercise of generating
@@ -1512,8 +1512,8 @@ Table of Contents
└────
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- Valid random 12-word mnemonics: 6.01%
- Or, about: 1 / 16.6
+ Valid random 12-word mnemonics: 6.45%
+ Or, about: 1 / 15.5
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Sure enough, about 1/16 random 12-word phrases are valid BIP-39
mnemonics. OK, we've got the contents of the BIP-39 phrase dialed in.
@@ -1773,9 +1773,9 @@ Table of Contents
│ ) 2>&1
└────
┌────
- │ 2024-11-18 07:09:50 slip39.recovery BIP-39 Language detected: english
- │ 2024-11-18 07:09:50 slip39.recovery Recovered 512-bit BIP-39 secret from english mnemonic
- │ 2024-11-18 07:09:50 slip39.recovery Recovered BIP-39 secret; To re-generate SLIP-39 wallet, send it to: python3 -m slip39 --secret -
+ │ 2024-11-21 08:16:29 slip39.recovery BIP-39 Language detected: english
+ │ 2024-11-21 08:16:29 slip39.recovery Recovered 512-bit BIP-39 secret from english mnemonic
+ │ 2024-11-21 08:16:29 slip39.recovery Recovered BIP-39 secret; To re-generate SLIP-39 wallet, send it to: python3 -m slip39 --secret -
│ b6a6d8921942dd9806607ebc2750416b289adea669198769f2e15ed926c3aa92bf88ece232317b4ea463e84b0fcd3b53577812ee449ccc448eb45e6f544e25b6
└────
@@ -1789,26 +1789,26 @@ Table of Contents
│ ) 2>&1 | tail -20
└────
┌────
- │ 2024-11-18 07:09:51 slip39 7 standard 19 careful 31 escape 43 wolf 55 either
- │ 2024-11-18 07:09:51 slip39 8 penalty 20 crazy 32 voter 44 scandal 56 says
- │ 2024-11-18 07:09:51 slip39 9 elephant 21 demand 33 fawn 45 standard 57 mouse
- │ 2024-11-18 07:09:51 slip39 10 smell 22 friar 34 library 46 paid 58 alpha
- │ 2024-11-18 07:09:51 slip39 11 prospect 23 dryer 35 editor 47 laser 59 oven
- │ 2024-11-18 07:09:51 slip39 12 wine 24 crystal 36 dragon 48 scared
- │ 2024-11-18 07:09:51 slip39 6th 1 stick 13 spray 25 dryer 37 aide 49 unfair
- │ 2024-11-18 07:09:51 slip39 2 spew 14 dictate 26 health 38 usher 50 buyer
- │ 2024-11-18 07:09:51 slip39 3 decision 15 language 27 aide 39 employer 51 adult
- │ 2024-11-18 07:09:51 slip39 4 spider 16 length 28 leader 40 jump 52 enlarge
- │ 2024-11-18 07:09:51 slip39 5 acne 17 furl 29 plunge 41 identify 53 actress
- │ 2024-11-18 07:09:51 slip39 6 flip 18 voter 30 cubic 42 practice 54 mountain
- │ 2024-11-18 07:09:51 slip39 7 woman 19 recall 31 become 43 finance 55 hunting
- │ 2024-11-18 07:09:51 slip39 8 gesture 20 merchant 32 clinic 44 fluff 56 recall
- │ 2024-11-18 07:09:51 slip39 9 squeeze 21 album 33 fatal 45 kidney 57 chemical
- │ 2024-11-18 07:09:51 slip39 10 herald 22 bulb 34 hormone 46 romp 58 calcium
- │ 2024-11-18 07:09:51 slip39 11 leaves 23 lungs 35 view 47 slice 59 lobe
- │ 2024-11-18 07:09:51 slip39 12 guest 24 length 36 silver 48 hawk
- │ 2024-11-18 07:09:51 slip39.layout ETH m/44'/60'/0'/0/0 : 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
- │ 2024-11-18 07:09:51 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
+ │ 2024-11-21 08:16:30 slip39 7 sniff 19 improve 31 bolt 43 award 55 satisfy
+ │ 2024-11-21 08:16:30 slip39 8 quantity 20 theory 32 style 44 guilt 56 meaning
+ │ 2024-11-21 08:16:30 slip39 9 video 21 exclude 33 holiday 45 equation 57 vintage
+ │ 2024-11-21 08:16:30 slip39 10 premium 22 order 34 penalty 46 black 58 senior
+ │ 2024-11-21 08:16:30 slip39 11 package 23 carve 35 exhaust 47 election 59 rival
+ │ 2024-11-21 08:16:30 slip39 12 geology 24 charity 36 discuss 48 educate
+ │ 2024-11-21 08:16:30 slip39 6th 1 exchange 13 literary 25 artist 37 involve 49 phrase
+ │ 2024-11-21 08:16:30 slip39 2 kidney 14 fraction 26 triumph 38 undergo 50 check
+ │ 2024-11-21 08:16:30 slip39 3 decision 15 group 27 execute 39 amazing 51 club
+ │ 2024-11-21 08:16:30 slip39 4 spider 16 angel 28 repair 40 unwrap 52 spark
+ │ 2024-11-21 08:16:30 slip39 5 academic 17 evaluate 29 morning 41 thumb 53 guitar
+ │ 2024-11-21 08:16:30 slip39 6 short 18 chew 30 earth 42 plains 54 lungs
+ │ 2024-11-21 08:16:30 slip39 7 failure 19 view 31 worthy 43 craft 55 epidemic
+ │ 2024-11-21 08:16:30 slip39 8 papa 20 imply 32 loan 44 crisis 56 repeat
+ │ 2024-11-21 08:16:30 slip39 9 lilac 21 video 33 merchant 45 bracelet 57 material
+ │ 2024-11-21 08:16:30 slip39 10 brother 22 huge 34 database 46 engage 58 tension
+ │ 2024-11-21 08:16:30 slip39 11 formal 23 true 35 bucket 47 year 59 charity
+ │ 2024-11-21 08:16:30 slip39 12 exotic 24 discuss 36 slush 48 false
+ │ 2024-11-21 08:16:30 slip39.layout ETH m/44'/60'/0'/0/0 : 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
+ │ 2024-11-21 08:16:30 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
└────
This `0xfc20..1B5E' address is the same Ethereum address as is
recovered on a Trezor using this BIP-39 mnemonic phrase. Thus, we can
@@ -1851,9 +1851,9 @@ Table of Contents
│ ) 2>&1
└────
┌────
- │ 2024-11-18 07:09:51 slip39.recovery BIP-39 Language detected: english
- │ 2024-11-18 07:09:51 slip39.recovery Recovered 128-bit BIP-39 entropy from english mnemonic (no passphrase supported)
- │ 2024-11-18 07:09:51 slip39.recovery Recovered BIP-39 secret; To re-generate SLIP-39 wallet, send it to: python3 -m slip39 --secret -
+ │ 2024-11-21 08:16:31 slip39.recovery BIP-39 Language detected: english
+ │ 2024-11-21 08:16:31 slip39.recovery Recovered 128-bit BIP-39 entropy from english mnemonic (no passphrase supported)
+ │ 2024-11-21 08:16:31 slip39.recovery Recovered BIP-39 secret; To re-generate SLIP-39 wallet, send it to: python3 -m slip39 --secret -
│ ffffffffffffffffffffffffffffffff
└────
@@ -1871,26 +1871,26 @@ Table of Contents
│ ) 2>&1 | tail -20
└────
┌────
- │ 2024-11-18 07:09:52 slip39 4 skin 11 fishing 18 rumor
- │ 2024-11-18 07:09:52 slip39 5 cinema 12 employer 19 roster
- │ 2024-11-18 07:09:52 slip39 6 surface 13 oven 20 cage
- │ 2024-11-18 07:09:52 slip39 7 spill 14 ending
- │ 2024-11-18 07:09:52 slip39 5th 1 forward 8 believe 15 location
- │ 2024-11-18 07:09:52 slip39 2 kidney 9 slap 16 metric
- │ 2024-11-18 07:09:52 slip39 3 decision 10 exercise 17 cards
- │ 2024-11-18 07:09:52 slip39 4 snake 11 fiber 18 rebuild
- │ 2024-11-18 07:09:52 slip39 5 being 12 mandate 19 jewelry
- │ 2024-11-18 07:09:52 slip39 6 lair 13 trash 20 award
- │ 2024-11-18 07:09:52 slip39 7 fiber 14 midst
- │ 2024-11-18 07:09:52 slip39 6th 1 forward 8 coding 15 glasses
- │ 2024-11-18 07:09:52 slip39 2 kidney 9 rebuild 16 negative
- │ 2024-11-18 07:09:52 slip39 3 decision 10 remove 17 flash
- │ 2024-11-18 07:09:52 slip39 4 spider 11 inherit 18 round
- │ 2024-11-18 07:09:52 slip39 5 boundary 12 again 19 staff
- │ 2024-11-18 07:09:52 slip39 6 closet 13 peanut 20 curly
- │ 2024-11-18 07:09:52 slip39 7 mixed 14 lend
- │ 2024-11-18 07:09:52 slip39.layout ETH m/44'/60'/0'/0/0 : 0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1
- │ 2024-11-18 07:09:52 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9yscq3l2yfxlvnlk3cszpqefparrv7tk24u6pl
+ │ 2024-11-21 08:16:31 slip39 4 skin 11 pecan 18 ruin
+ │ 2024-11-21 08:16:31 slip39 5 auction 12 theater 19 duration
+ │ 2024-11-21 08:16:31 slip39 6 easy 13 fused 20 artist
+ │ 2024-11-21 08:16:31 slip39 7 buyer 14 undergo
+ │ 2024-11-21 08:16:31 slip39 5th 1 group 8 observe 15 herald
+ │ 2024-11-21 08:16:31 slip39 2 typical 9 coding 16 birthday
+ │ 2024-11-21 08:16:31 slip39 3 decision 10 episode 17 pile
+ │ 2024-11-21 08:16:31 slip39 4 snake 11 parking 18 deadline
+ │ 2024-11-21 08:16:31 slip39 5 daisy 12 maiden 19 coding
+ │ 2024-11-21 08:16:31 slip39 6 hormone 13 activity 20 leaves
+ │ 2024-11-21 08:16:31 slip39 7 ordinary 14 arcade
+ │ 2024-11-21 08:16:31 slip39 6th 1 group 8 blanket 15 order
+ │ 2024-11-21 08:16:31 slip39 2 typical 9 maximum 16 aunt
+ │ 2024-11-21 08:16:31 slip39 3 decision 10 desktop 17 grownup
+ │ 2024-11-21 08:16:31 slip39 4 spider 11 ounce 18 dismiss
+ │ 2024-11-21 08:16:31 slip39 5 devote 12 careful 19 grin
+ │ 2024-11-21 08:16:31 slip39 6 submit 13 railroad 20 erode
+ │ 2024-11-21 08:16:31 slip39 7 escape 14 agree
+ │ 2024-11-21 08:16:31 slip39.layout ETH m/44'/60'/0'/0/0 : 0x824b174803e688dE39aF5B3D7Cd39bE6515A19a1
+ │ 2024-11-21 08:16:31 slip39.layout BTC m/84'/0'/0'/0/0 : bc1q9yscq3l2yfxlvnlk3cszpqefparrv7tk24u6pl
└────
Because we must tell `slip39' to that we're using the BIP-39 Mnemonic
and Seed generation process to derived the wallet addresses from the
@@ -1904,26 +1904,26 @@ Table of Contents
│ ) 2>&1 | tail -20
└────
┌────
- │ 2024-11-18 07:09:53 slip39 4 skin 11 season 18 lunch
- │ 2024-11-18 07:09:53 slip39 5 cargo 12 squeeze 19 crystal
- │ 2024-11-18 07:09:53 slip39 6 profile 13 dwarf 20 born
- │ 2024-11-18 07:09:53 slip39 7 album 14 level
- │ 2024-11-18 07:09:53 slip39 5th 1 ceiling 8 moment 15 adorn
- │ 2024-11-18 07:09:53 slip39 2 typical 9 branch 16 method
- │ 2024-11-18 07:09:53 slip39 3 decision 10 carpet 17 threaten
- │ 2024-11-18 07:09:53 slip39 4 snake 11 mayor 18 volume
- │ 2024-11-18 07:09:53 slip39 5 devote 12 arena 19 wireless
- │ 2024-11-18 07:09:53 slip39 6 idle 13 lecture 20 observe
- │ 2024-11-18 07:09:53 slip39 7 guitar 14 dynamic
- │ 2024-11-18 07:09:53 slip39 6th 1 ceiling 8 flash 15 forbid
- │ 2024-11-18 07:09:53 slip39 2 typical 9 hunting 16 reunion
- │ 2024-11-18 07:09:53 slip39 3 decision 10 shrimp 17 promise
- │ 2024-11-18 07:09:53 slip39 4 spider 11 loan 18 client
- │ 2024-11-18 07:09:53 slip39 5 clock 12 ecology 19 tracks
- │ 2024-11-18 07:09:53 slip39 6 makeup 13 exercise 20 squeeze
- │ 2024-11-18 07:09:53 slip39 7 blimp 14 satisfy
- │ 2024-11-18 07:09:53 slip39.layout ETH m/44'/60'/0'/0/0 : 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
- │ 2024-11-18 07:09:53 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
+ │ 2024-11-21 08:16:32 slip39 4 skin 11 domestic 18 dramatic
+ │ 2024-11-21 08:16:32 slip39 5 cause 12 secret 19 kind
+ │ 2024-11-21 08:16:32 slip39 6 snapshot 13 sniff 20 display
+ │ 2024-11-21 08:16:32 slip39 7 manager 14 helpful
+ │ 2024-11-21 08:16:32 slip39 5th 1 silent 8 terminal 15 unkind
+ │ 2024-11-21 08:16:32 slip39 2 birthday 9 robin 16 square
+ │ 2024-11-21 08:16:32 slip39 3 decision 10 huge 17 party
+ │ 2024-11-21 08:16:32 slip39 4 snake 11 standard 18 genuine
+ │ 2024-11-21 08:16:32 slip39 5 aide 12 domestic 19 petition
+ │ 2024-11-21 08:16:32 slip39 6 username 13 famous 20 purchase
+ │ 2024-11-21 08:16:32 slip39 7 task 14 surprise
+ │ 2024-11-21 08:16:32 slip39 6th 1 silent 8 trial 15 expect
+ │ 2024-11-21 08:16:32 slip39 2 birthday 9 facility 16 sack
+ │ 2024-11-21 08:16:32 slip39 3 decision 10 security 17 mansion
+ │ 2024-11-21 08:16:32 slip39 4 spider 11 tracks 18 elephant
+ │ 2024-11-21 08:16:32 slip39 5 cleanup 12 grill 19 explain
+ │ 2024-11-21 08:16:32 slip39 6 preach 13 animal 20 rich
+ │ 2024-11-21 08:16:32 slip39 7 forbid 14 island
+ │ 2024-11-21 08:16:32 slip39.layout ETH m/44'/60'/0'/0/0 : 0xfc2077CA7F403cBECA41B1B0F62D91B5EA631B5E
+ │ 2024-11-21 08:16:32 slip39.layout BTC m/84'/0'/0'/0/0 : bc1qk0a9hr7wjfxeenz9nwenw9flhq0tmsf6vsgnn2
└────
And, there we have it – we've recovered exactly the same Ethereum and
Bitcoin wallets as would a native BIP-39 hardware wallet like a Ledger
diff --git a/SLIP39-Example.pdf b/SLIP39-Example.pdf
index 4d8d63c..536937b 100644
Binary files a/SLIP39-Example.pdf and b/SLIP39-Example.pdf differ
diff --git a/requirements-gui.txt b/requirements-gui.txt
index c9551f1..82e801d 100644
--- a/requirements-gui.txt
+++ b/requirements-gui.txt
@@ -1 +1 @@
-pysimplegui >=5.0.0,<5.1
+pysimplegui >=5.0.7,<5.1
diff --git a/slip39/version.py b/slip39/version.py
index 62968a9..a9efbe7 100644
--- a/slip39/version.py
+++ b/slip39/version.py
@@ -1,2 +1,2 @@
-__version_info__ = ( 13, 0, 0 )
+__version_info__ = ( 13, 0, 1 )
__version__ = '.'.join( map( str, __version_info__ ))