Releases: bluescan/bip39tools
Keeping Current
Entropy Check
Check if entropy is within the secp256k1 curve period. This is a non critical update because the curve period is only a little below the crazy big number 2^256. Dice2Bip39 and ValidateBip39 now both perform this check.
Results from the ValidateBip39 tool are more detailed. Possible failure conditions include: a word is invalid, the checksum failed, you are out of the secp256k1 range, or you simply entered the wrong number of words. These were checked before but not reported other than a simple 'fail'. The validateBip39 tool now also prints usage instructions if run with -h.
FinalWordsBip39 tool may be used exclusively from the command line -- simply enter the words (minus the last one) on the command line. Default (no words entered) is to enter interactive mode like before.
Some Words For You
FinalWordsBip39 now saves the full list of possible last words as well as the particular one you chose randomly with coin flips. Before, if you chose to flip coins, only the final chosen one would be saved. Also updated to latest tacent library and formatted the word list a bit better so they all line up.
Install Launchers
Launchers for Windows and Linux now installed by cmake.
Check That Sum
Added a new tool, MakeCompliantBip39, that allows you to take an existing invalid mnemonic sentence and create a valid one with the correct checksum. This tool does not modify the entropy bits so the new phrase is just as safe as the original. This tool also allows you to clear (zero) the checsum bits. While this (most of the time) results in an invalid Bip-39 phrase, some wallets require zeroed checksum bits. At the time of this release one such wallet is the Helium (HNT) mobile wallet.
Launcher
Added a launcher bash script that allows you to choose which tool to run. This is useful when setting up your installation, especially if you decide to autorun on a Pi Zero. The finalwordsbip39 tool is also improved -- if you opt to save the results, the starting words are also saved for reference.
Fast Finale
Faster algorithm in use for generating the list of final words when using the FinalWordsBip39 tool. Instead of just trying all possible 2048 words and checking validity, it now just generates the word list for set of possible entropy bits. This will be about 256 times faster if you supply 23 words, and 16 times faster if 11 words supplied.
Mini Suite
Dice2Bip39 is now a mini-suite of four tools backed off of a clean Bip39 API.
-
Dice2Bip39
The same seed-phrase generaing tool as before. -
FinalWordsBip39
Allows you to enter all but the last word. For example, enter 23 words and this will tell you all valid possible last words. It then gives you the option to flip a coin a few times to choose a random last word. This tool is useful, for example, if you have 12 uncompromised words already stamped into metal, and want to switch the wallet to 24 words without restamping the first 12. Just generate 11 more words and use this tool to compute the 24th. -
UnitTestsBip39
A separate unit-test tool that shares the backend Bip39 library. Tests SHA-256, the Bip39 test vectors, the Bip39 dictionary code, etc. -
ValidateBip39
A simple tool for verifying the integrity of an existing seed phrase.
Look in namespaces Bip39 and Bip39::Dictionary for the stateless backend API.
ARMed
Clean and Clear
Code cleanup. A ranged input method that is used for all input. Program will exit after a large number of consecutive invalid entries. When done with entropy bits, overwrites memory with random bits multiple times, and then clears it. Corrected some of the method description text.
Precompiled executables are not included in releases on purpose -- audit the code as you see fit. Compiling and running this software should be done on an air-gapped machine that is clean.