BIP39 Tool
A tool for converting BIP39 mnemonic phrases to addresses and private keys.
This tool tries to find the best world between Coinomi's and iancoleman's versions of the implementation, plus a few additions.
Note that this version is centered on my use of Coinomis's wallet, which has a few differences to exact BIP44 implementation:
- Coinomi's Ethereum networks don't use change in the BIP44 path.
Online Version
Standalone offline version
Download bip39-standalone.html
Open the file in a browser by double clicking it.
This can be compiled from source using the command python compile.py
Usage
Enter your BIP39 phrase into the 'BIP39 Phrase' field, or press 'Generate Random Phrase'
If required, set the derivation path, although the defaults are quite usable.
See the table for a list of addresses generated from the phrase.
Toggle columns to blank to easily copy/paste a single column of data, eg to import private keys into a wallet or supply someone with a list of addresses.
The BIP32 keys can be used at bip32.org if desired.
Donations
Since this project is the efforts of many people, most of which don't appear in the obvious places like code or issues, donating to the project itself causes significant operational difficulties.
As a result, if you would like to support this project financially you are encouraged to donate to one of the many groups that makes the internet a place amenable to projects such as this one.
Donation-accepting organizations and projects
If the list is too difficult to choose from, the EFF is a good choice.
Electronic Frontier Foundation
or for a direct bitcoin address, consider donating to the Free Software Foundation at 1PC9aZC4hNX2rmmrt7uHTfYAS3hRbph4UN
Making changes
Please do not make modifications to bip39-standalone.html
, since they will
be overwritten by compile.py
.
Make changes in src/*
.
Changes are applied during release using the command python compile.py
, so
please do not commit changes to bip39-standalone.html
Tests
Tests depend on
- nodejs
- selenium webdriver - cd /path/to/bip39/tests; npm install
- selenium driver for firefox (geckodriver) and / or chrome (chromedriver)
- jasmine - npm install --global jasmine
Before running tests, the site must be served at http://localhost:8000.
``` $ cd /path/to/bip39/src $ python -m http.server
or for python2 $ python -m SimpleHTTPServer ```
Run tests from the command-line
$ cd /path/to/bip39/tests
$ jasmine spec/tests.js
License
This BIP39 tool is released under the terms of the MIT license. See LICENSE for more information or see https://opensource.org/licenses/MIT.