From 2565d0e7e5a54c58beaba19774a80ac5436778d7 Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Tue, 25 Feb 2020 19:10:01 +0000 Subject: [PATCH] Update documentation for v0.12.0 --- Altcoin-and-Forkcoin-Support.md | 13 +++- Getting-Started-with-MMGen.md | 51 ++++++++++++++ Home.md | 6 ++ Install-MMGen-on-Debian-or-Ubuntu-Linux.md | 10 ++- Install-MMGen-on-Microsoft-Windows.md | 81 +++++++++++++--------- MMGen-command-help.md | 2 + _Sidebar.md | 6 ++ addrgen-[MMGen-command-help].md | 15 ++-- addrimport-[MMGen-command-help].md | 2 +- autosign-[MMGen-command-help].md | 2 +- keygen-[MMGen-command-help].md | 15 ++-- passchg-[MMGen-command-help].md | 13 ++-- passgen-[MMGen-command-help].md | 46 ++++++++---- regtest-[MMGen-command-help].md | 16 ++--- seedjoin-[MMGen-command-help].md | 2 +- seedsplit-[MMGen-command-help].md | 2 +- split-[MMGen-command-help].md | 2 +- subwalletgen-[MMGen-command-help].md | 17 +++-- tool(usage)-[MMGen-command-help].md | 30 ++++---- tool-[MMGen-command-help].md | 49 +++++++++---- txbump-[MMGen-command-help].md | 13 ++-- txcreate-[MMGen-command-help].md | 7 +- txdo-[MMGen-command-help].md | 18 +++-- txsend-[MMGen-command-help].md | 2 +- txsign-[MMGen-command-help].md | 13 ++-- walletchk-[MMGen-command-help].md | 13 ++-- walletconv-[MMGen-command-help].md | 13 ++-- walletgen-[MMGen-command-help].md | 11 +-- 28 files changed, 328 insertions(+), 142 deletions(-) diff --git a/Altcoin-and-Forkcoin-Support.md b/Altcoin-and-Forkcoin-Support.md index 190e185..a9f5f1f 100644 --- a/Altcoin-and-Forkcoin-Support.md +++ b/Altcoin-and-Forkcoin-Support.md @@ -38,6 +38,11 @@ To transact Ethereum Classic, use `--chain=classic --jsonrpc-port=8555` To run the daemon offline, use `--mode=offline`, otherwise `--mode=active`. +MMGen can also be used with Parity’s light client mode, which queries other +nodes on the Ethereum network for blockchain data. Add the `--light` option to +the Parity command line and read the applicable note in the [Transacting](#a_tx) +section below. + You may require other options as well. Consult `parity --help` for the full list. @@ -69,6 +74,12 @@ Basic operations with ETH, ETC and ERC20 tokens work as described in the * Addresses and other hexadecimal values are given without the leading `0x`. * Fees are expressed in Gas price, e.g. `12G` for 12 Gwei or `1000M` for 1000 Mwei. This works at both the command line and interactive prompt. +* When using Parity in light client mode, the `--cached-balances` option + will greatly speed up operations of the `mmgen-txcreate`, `mmgen-txdo` and + `mmgen-tool twview` commands by reducing network queries to a minimum. If + your account balances have changed, they may be refreshed interactively within + the TRACKED ACCOUNTS menu. Cached balances are stored persistently in your + tracking wallet. ##### Transacting example: @@ -223,7 +234,7 @@ To generate Zcash t-addresses, just omit the `--type` argument: ### Key/address generation and wallet creation/syncing for Monero (XMR) -Generate ten Monero address pairs from your default wallet: +Generate ten Monero key/address pairs from your default wallet: $ mmgen-keygen --coin=xmr 1-10 diff --git a/Getting-Started-with-MMGen.md b/Getting-Started-with-MMGen.md index 2e77d97..0b097d4 100644 --- a/Getting-Started-with-MMGen.md +++ b/Getting-Started-with-MMGen.md @@ -17,6 +17,9 @@ #### [Additional Features](#a_af) * [Using the mnemonic, seed and hexseed formats](#a_ms) * [Mnemonics, seeds and hexseeds: additional information](#a_ai) +* [Die roll wallet generation](#a_dr) +* [BIP39 mnemonic support](#a_39) +* [Monero mnemonic support](#a_mm) * [Incognito wallets](#a_ic) * [Hidden incognito wallets](#a_hi) @@ -555,6 +558,54 @@ using the `--outdir` or `-d` option. For example, on a Linux system you can use ensuring that no trace of your secret data remains once your computer’s been powered down. +#### Die roll wallet generation + +Interactive dieroll wallet generation works just like the interactive mnemonic +input described in the preceding section. To generate a new dieroll wallet, +type: + + $ mmgen-walletconv -i dieroll + +To save the wallet in a format of your choice, use the `-o` option: + + $ mmgen-walletconv -i dieroll -o bip39 + +50, 75 and 100 rolls of the die are required to create 128, 192 and 256-bit +seeds, respectively. + +#### BIP39 support + +BIP39 mnemonic support and usage is identical to that for native MMGen mnemonics +described above. Just use the `bip39` format specifier and extension instead of +`words`. + +Convert an MMGen native mnemonic wallet to BIP39: + + $ mmgen-walletconv -o bip39 mywallet.words + +Restore an MMGen wallet from a BIP39 seed phrase in a file: + + $ mmgen-walletconv seed.bip39 + +#### Monero mnemonic support + +MMGen has limited support for Monero new-style mnemonics. While they can’t be +used as wallets, they’re supported as a password format by the `mmgen-passgen` +command and can be converted to and from hex data by the `mmgen-tool` mnemonic +commands. The format specifier and extension is `xmrseed`. Only 25-word +mnemonics (256-bit keys) are supported. Key data is reduced in accordance with +the Monero protocol before conversion, so the resulting mnemonics are guaranteed +to be canonical. + +Generate a random Monero seed phrase: + + $ mmgen-tool mn_rand256 fmt=xmrseed + +Generate a list of passwords in Monero mnemonic format with ID 'foo' from your +default wallet: + + $ mmgen-passgen -f xmrseed 'foo' 1-10 + #### Incognito wallets An incognito format wallet is indistinguishable from random data, allowing you diff --git a/Home.md b/Home.md index 82f8eb2..25803d3 100644 --- a/Home.md +++ b/Home.md @@ -28,4 +28,10 @@ are performed via the `/` key. > #### [Subwallets](Subwallets) +> #### [XOR Seed Splitting](https://github.com/mmgen/mmgen/wiki/XOR-Seed-Splitting:-Theory-and-Practice) + +> #### [Test Suite](Test-Suite) + +> #### [Tool API](Tool-API) + [cn]: https://github.com/mmgen/mmgen/commits/master diff --git a/Install-MMGen-on-Debian-or-Ubuntu-Linux.md b/Install-MMGen-on-Debian-or-Ubuntu-Linux.md index 8df23e9..29d03f6 100644 --- a/Install-MMGen-on-Debian-or-Ubuntu-Linux.md +++ b/Install-MMGen-on-Debian-or-Ubuntu-Linux.md @@ -24,10 +24,18 @@ Install MMGen: $ git clone https://github.com/mmgen/mmgen.git $ cd mmgen - $ git checkout stable_linux + $ git checkout stable_linux # see 'Note' below $ sudo ./setup.py install $ cd .. +**Note:** if you want to use features that have appeared since the latest +`stable_linux` release, then you can omit the `git checkout` step and remain on +the `master` branch. But though the tip of `master` is always tested on Linux +before being pushed to the public repository, please be aware that security +vulnerabilities are more likely to be present in new code than in a stable +release. In addition, new code may require dependencies or installation steps +not yet covered in the documentation. + Install your coin daemon(s). To install prebuilt binaries, go [here][01]. To install from source, go [here][02]. diff --git a/Install-MMGen-on-Microsoft-Windows.md b/Install-MMGen-on-Microsoft-Windows.md index d400283..c3e941f 100644 --- a/Install-MMGen-on-Microsoft-Windows.md +++ b/Install-MMGen-on-Microsoft-Windows.md @@ -165,7 +165,10 @@ specifically required by MMGen. Install the packages and their dependencies: - $ pacman -S tar git nano vim \ + $ pacman -S tar git nano vim autoconf automake-wrapper autogen \ + mingw64/mingw-w64-x86_64-libtool \ + mingw64/mingw-w64-x86_64-pcre \ + mingw64/mingw-w64-x86_64-make \ mingw64/mingw-w64-x86_64-python3-cryptography \ mingw64/mingw-w64-x86_64-python3-six \ mingw64/mingw-w64-x86_64-python3-pexpect \ @@ -249,7 +252,31 @@ Save the file and exit the editor. Now build and install: $ python3 setup.py build --compiler=mingw32 $ python3 setup.py install -### 8. Install MMGen +### 8. Install the secp256k1 library + +On your online machine, clone the repository: + + $ git clone https://github.com/bitcoin-core/secp256k1.git + +If you’re doing an offline install, copy the cloned secp256k1 directory +to your offline machine. + +Enter the directory, configure, build and install: + + $ cd secp256k1 + $ libtoolize + $ ./autogen.sh + $ ./configure + $ mingw32-make.exe install MAKE=mingw32-make LIBTOOL=$(which libtool) + +### 9. Install the sdelete utility (required for secure wallet deletion) + +Grab the latest SDelete [zip archive][sd], and unzip and copy `sdelete.exe` to +`/usr/local/bin`. You must run the program once manually to accept the license +agreement. Failing to do this will cause some scripts to hang, so you should do +it now. + +### 10. Install MMGen Now you’re ready to install MMGen itself. On your online machine, clone the repository: @@ -263,10 +290,19 @@ to your offline machine. Enter the directory and install: $ cd mmgen - $ git checkout stable_msys2 + $ git checkout stable_msys2 # See 'Note' below $ ./setup.py install -### 9. Install and launch your coin daemons +**Note:** if you want to use features that have appeared since the latest +`stable_msys2` release, then you can omit the `git checkout` step and remain on +the `master` branch. But please be aware that security vulnerabilities are more +likely to be present in new code than in a stable release. In addition, while +the tip of `master` is always tested on Linux before being pushed to the public +repository, it’s not guaranteed to install or run on MSYS2. Installation or +runtime issues may also arise due to missing dependencies or installation steps +not yet covered in the documentation. + +### 11. Install and launch your coin daemons At this point your MMGen installation will be able to generate wallets, along with keys and addresses for all supported coins. However, if you intend to do @@ -291,42 +327,25 @@ Typically you’ll wish to launch Parity as follows: More information on Parity’s command-line options can be found [here][pl]. -### 10. You’re done! +### 12. You’re done! Congratulations, your installation is now complete, and you can proceed to -[**Getting Started with MMGen**][gs]. Before doing so, however, you might want -to acquaint yourself with some caveats regarding running MMGen on -Microsoft Windows: - - + [Autosigning][X] is not supported on Windows and is not likely to be in the - future. - + [Monero wallet creation/syncing][M] support is also lacking due to password - file descriptor issues with `monero-wallet-cli`. - + Due to unpredictable behavior of MSYS2's Python `getpass()` implementation, - passwords containing non-ASCII characters should be entered using the - `--echo-passphrase` option or via a password file. Otherwise, these - symbols might end up being silently ignored. - If you have an all-ASCII wallet password and wish to silence the annoying - warning you’re getting before every password prompt, set `mswin_pw_warning` - to `false` in `mmgen.cfg`. - If you *really* don't want to have your passwords echoed, you may test whether - `getpass()` is reading your non-ASCII input correctly by running the script - `test/misc/password_entry.py`. If the script reads back the characters - exactly as you entered them, then you’re probably safe and can go ahead and - disable the warning. - + Though MSYS2 support is well tested and considered stable, it’s a new feature - and other glitches might remain. If you think you've found a bug, don't - hesistate to file an issue at . +[**Getting Started with MMGen**][gs]. Note that all features supported by +MMGen on Linux, except for [autosigning][ax], are now supported on MSYS2 too. +Please be aware of the following, however: ++ Non-ASCII filenames cannot be used with the Monero wallet syncing tool. This + appears to be an issue with the Monero wallet RPC daemon rather than MMGen. [mh]: https://www.msys2.org [mp]: https://sourceforge.net/projects/msys2 [mw]: https://github.com/msys2/msys2/wiki [ov]: https://github.com/mmgen/mmgen/releases/tag/v0.9.8 +[sd]: https://download.sysinternals.com/files/SDelete.zip +[pg]: https://github.com/paritytech/parity-ethereum/releases [di]: Deprecated-MSWin-Installation [ib]: Install-Bitcoind [gs]: Getting-Started-with-MMGen -[pg]: https://github.com/paritytech/parity-ethereum/releases [pl]: Altcoin-and-Forkcoin-Support#a_par -[X]: autosign-[MMGen-command-help] -[M]: Altcoin-and-Forkcoin-Support#a_xmr +[ax]: autosign-[MMGen-command-help] +[mc]: Altcoin-and-Forkcoin-Support#a_xmr diff --git a/MMGen-command-help.md b/MMGen-command-help.md index bb27468..89ac079 100644 --- a/MMGen-command-help.md +++ b/MMGen-command-help.md @@ -5,6 +5,8 @@ * [mmgen-passchg](passchg-[MMGen-command-help]) * [mmgen-passgen](passgen-[MMGen-command-help]) * [mmgen-regtest](regtest-[MMGen-command-help]) +* [mmgen-seedjoin](seedjoin-[MMGen-command-help]) +* [mmgen-seedsplit](seedsplit-[MMGen-command-help]) * [mmgen-split](split-[MMGen-command-help]) * [mmgen-subwalletgen](subwalletgen-[MMGen-command-help]) * [mmgen-tool](tool-[MMGen-command-help]) diff --git a/_Sidebar.md b/_Sidebar.md index 284fc84..cab76c6 100644 --- a/_Sidebar.md +++ b/_Sidebar.md @@ -13,6 +13,9 @@ * [Recovering your keys without the MMGen software][6] * [Altcoin and Forkcoin support (ETH, ETC, XMR, ZEC, LTC, BCH and 144 Bitcoin-derived alts)][7] * [Subwallets][8] +* [XOR Seed Splitting][9] +* [Test Suite][10] +* [Tool API][11] [1]: Install-MMGen-on-Microsoft-Windows [2]: Install-MMGen-on-Debian-or-Ubuntu-Linux @@ -22,3 +25,6 @@ [6]: Recovering-Your-Keys-Without-the-MMGen-Software [7]: Altcoin-and-Forkcoin-Support [8]: Subwallets +[9]: https://github.com/mmgen/mmgen/wiki/XOR-Seed-Splitting:-Theory-and-Practice +[10]: Test-Suite +[11]: Tool-API diff --git a/addrgen-[MMGen-command-help].md b/addrgen-[MMGen-command-help].md index 871be0f..7fcbee3 100644 --- a/addrgen-[MMGen-command-help].md +++ b/addrgen-[MMGen-command-help].md @@ -15,7 +15,7 @@ -O, --old-incog-fmt Specify old-format incognito input -k, --use-internal-keccak-module Force use of the internal keccak module -K, --key-generator m Use method 'm' for public key generation - Options: 1:python-ecdsa 2:secp256k1 (default: 2) + Options: 1:python-ecdsa 2:libsecp256k1 (default: 2) -l, --seed-len l Specify wallet seed length of 'l' bits. This option is required only for brainwallet and incognito inputs with non-standard (< 256-bit) seed lengths @@ -39,7 +39,7 @@ Address indexes are given as a comma-separated list and/or hyphen-separated range(s). - If available, the secp256k1 library will be used for address generation. + If available, the libsecp256k1 library will be used for address generation. ADDRESS TYPES: 'L','legacy' - Legacy uncompressed address @@ -104,13 +104,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-ADDRGEN(1) + MMGEN v0.12.0 February 2020 MMGEN-ADDRGEN(1) diff --git a/addrimport-[MMGen-command-help].md b/addrimport-[MMGen-command-help].md index e324703..e9919df 100644 --- a/addrimport-[MMGen-command-help].md +++ b/addrimport-[MMGen-command-help].md @@ -17,4 +17,4 @@ The --batch and --rescan options cannot be used together. - MMGEN v0.11.0 May 2019 MMGEN-ADDRIMPORT(1) + MMGEN v0.12.0 February 2020 MMGEN-ADDRIMPORT(1) diff --git a/autosign-[MMGen-command-help].md b/autosign-[MMGen-command-help].md index 80a4cf5..c8fb11d 100644 --- a/autosign-[MMGen-command-help].md +++ b/autosign-[MMGen-command-help].md @@ -65,4 +65,4 @@ This command is currently available only on Linux-based platforms. - MMGEN v0.11.0 May 2019 MMGEN-AUTOSIGN(1) + MMGEN v0.12.0 February 2020 MMGEN-AUTOSIGN(1) diff --git a/keygen-[MMGen-command-help].md b/keygen-[MMGen-command-help].md index 5bd86ab..f7a81be 100644 --- a/keygen-[MMGen-command-help].md +++ b/keygen-[MMGen-command-help].md @@ -16,7 +16,7 @@ -O, --old-incog-fmt Specify old-format incognito input -k, --use-internal-keccak-module Force use of the internal keccak module -K, --key-generator m Use method 'm' for public key generation - Options: 1:python-ecdsa 2:secp256k1 (default: 2) + Options: 1:python-ecdsa 2:libsecp256k1 (default: 2) -l, --seed-len l Specify wallet seed length of 'l' bits. This option is required only for brainwallet and incognito inputs with non-standard (< 256-bit) seed lengths @@ -43,7 +43,7 @@ By default, both addresses and secret keys are generated. - If available, the secp256k1 library will be used for address generation. + If available, the libsecp256k1 library will be used for address generation. ADDRESS TYPES: 'L','legacy' - Legacy uncompressed address @@ -108,13 +108,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-KEYGEN(1) + MMGEN v0.12.0 February 2020 MMGEN-KEYGEN(1) diff --git a/passchg-[MMGen-command-help].md b/passchg-[MMGen-command-help].md index 1cee8eb..8a73e5e 100644 --- a/passchg-[MMGen-command-help].md +++ b/passchg-[MMGen-command-help].md @@ -1,4 +1,4 @@ - MMGEN-PASSCHG: Change the passphrase, hash preset or label of an MMGen wallet + MMGEN-PASSCHG: Change the passphrase, hash preset or label of the default or specified MMGen wallet USAGE: mmgen-passchg [opts] [infile] OPTIONS: -h, --help Print this help message @@ -38,13 +38,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-PASSCHG(1) + MMGEN v0.12.0 February 2020 MMGEN-PASSCHG(1) diff --git a/passgen-[MMGen-command-help].md b/passgen-[MMGen-command-help].md index 289e301..5bad011 100644 --- a/passgen-[MMGen-command-help].md +++ b/passgen-[MMGen-command-help].md @@ -4,18 +4,17 @@ OPTIONS: -h, --help Print this help message --longhelp Print help message for long options (common options) - -b, --base32 Generate passwords in Base32 format instead of Base58 - -x, --hex Generate passwords in raw hex format instead of Base58 -d, --outdir d Output files to directory 'd' instead of working dir -e, --echo-passphrase Echo passphrase or mnemonic to screen upon entry + -f, --passwd-fmt f Generate passwords of format 'f'. Default: b58. + See PASSWORD FORMATS below -i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below) -H, --hidden-incog-input-params f,o Read hidden incognito data from file 'f' at offset 'o' (comma-separated) -O, --old-incog-fmt Specify old-format incognito input - -L, --passwd-len l Specify length of generated passwords - (default: 20 chars [base58], 24 chars [base32], - 64 chars [hex]). An argument of 'h' will generate - passwords of half the default length. + -L, --passwd-len l Specify length of generated passwords. For defaults, + see PASSWORD FORMATS below. An argument of 'h' will + generate passwords of half the default length. -l, --seed-len l Specify wallet seed length of 'l' bits. This option is required only for brainwallet and incognito inputs with non-standard (< 256-bit) seed lengths @@ -41,19 +40,33 @@ Changing either the password format (base32,base58) or length alters the seed and thus generates a completely new set of passwords. - EXAMPLE: + PASSWORD FORMATS: + + Code Description Min Len Max Len Default Len + b32 - base32 password 10 42 24 + b58 - base58 password 8 36 20 + bip39 - BIP39 mnemonic 12 24 24 + xmrseed - Monero new-style mnemonic 25 25 25 + hex - hexadecimal password 32 64 64 + + EXAMPLES: Generate ten base58 passwords of length 20 for Alice's email account: mmgen-passgen alice@nowhere.com 1-10 Generate ten base58 passwords of length 16 for Alice's email account: - mmgen-passgen -L16 alice@nowhere.com 1-10 + mmgen-passgen --passwd-len=16 alice@nowhere.com 1-10 Generate ten base32 passwords of length 24 for Alice's email account: - mmgen-passgen -b alice@nowhere.com 1-10 + mmgen-passgen --passwd-fmt=b32 alice@nowhere.com 1-10 - The three sets of passwords are completely unrelated to each other, so - Alice doesn't need to worry about password reuse. + Generate three BIP39 mnemonic seed phrases of length 24 for Alice's + Trezor device: + mmgen-passgen --passwd-fmt=bip39 mytrezor 1-3 + + All passwords are cryptographically unlinkable with each other, including + passwords with the same format but different length, so Alice needn't worry + about inadvertent reuse of private data. NOTES FOR ALL GENERATOR COMMANDS @@ -74,13 +87,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-PASSGEN(1) + MMGEN v0.12.0 February 2020 MMGEN-PASSGEN(1) diff --git a/regtest-[MMGen-command-help].md b/regtest-[MMGen-command-help].md index b36a194..d63200f 100644 --- a/regtest-[MMGen-command-help].md +++ b/regtest-[MMGen-command-help].md @@ -11,17 +11,17 @@ AVAILABLE COMMANDS - setup - set up system for regtest operation with MMGen - fork COIN - create a fork of coin COIN + setup - set up Bob and Alice regtest mode stop - stop the regtest coin daemon bob - switch to Bob's wallet, starting daemon if necessary alice - switch to Alice's wallet, starting daemon if necessary + miner - switch to Miner's wallet, starting daemon if necessary user - show current user - generate N - mine n blocks (defaults to 1) + generate N - mine N blocks (defaults to 1) send ADDR AMT - send amount AMT of miner funds to address ADDR - test_daemon - test whether daemon is running - get_balances - get balances of Bob and Alice - show_mempool - show transaction IDs in mempool - cli [arguments] - execute an RPC call with arguments + state - show current state of daemon (ready, busy, or stopped) + balances - get Bob and Alice's balances + mempool - show transaction IDs in mempool + cli - execute an RPC call with supplied arguments - MMGEN v0.11.0 May 2019 MMGEN-REGTEST(1) + MMGEN v0.12.0 February 2020 MMGEN-REGTEST(1) diff --git a/seedjoin-[MMGen-command-help].md b/seedjoin-[MMGen-command-help].md index 5721e93..3569679 100644 --- a/seedjoin-[MMGen-command-help].md +++ b/seedjoin-[MMGen-command-help].md @@ -60,4 +60,4 @@ PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.099 December 2019 MMGEN-SEEDJOIN(1) + MMGEN v0.12.0 February 2020 MMGEN-SEEDJOIN(1) diff --git a/seedsplit-[MMGen-command-help].md b/seedsplit-[MMGen-command-help].md index 108d0ea..8b11922 100644 --- a/seedsplit-[MMGen-command-help].md +++ b/seedsplit-[MMGen-command-help].md @@ -141,4 +141,4 @@ PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.099 February 2020 MMGEN-SEEDSPLIT(1) + MMGEN v0.12.0 February 2020 MMGEN-SEEDSPLIT(1) diff --git a/split-[MMGen-command-help].md b/split-[MMGen-command-help].md index 7bb1817..6f26084 100644 --- a/split-[MMGen-command-help].md +++ b/split-[MMGen-command-help].md @@ -45,4 +45,4 @@ behind the timelock, protection is contingent on getting the non-timelocked transaction reconfirmed before the timelock expires. Use at your own risk. - MMGEN v0.11.0 May 2019 MMGEN-SPLIT(1) + MMGEN v0.12.0 February 2020 MMGEN-SPLIT(1) diff --git a/subwalletgen-[MMGen-command-help].md b/subwalletgen-[MMGen-command-help].md index cc9a4e7..ace1671 100644 --- a/subwalletgen-[MMGen-command-help].md +++ b/subwalletgen-[MMGen-command-help].md @@ -1,12 +1,12 @@ - MMGEN-SUBWALLETGEN: Generate a subwallet from an MMGen wallet + MMGEN-SUBWALLETGEN: Generate a subwallet from the default or specified MMGen wallet USAGE: mmgen-subwalletgen [opts] [infile] OPTIONS: -h, --help Print this help message --longhelp Print help message for long options (common options) -d, --outdir d Output files to directory 'd' instead of working dir -e, --echo-passphrase Echo passphrases and other user input to screen - -i, --in-fmt f Convert from wallet format 'f' (see FMT CODES below) - -o, --out-fmt f Convert to wallet format 'f' (see FMT CODES below) + -i, --in-fmt f Input from wallet format 'f' (see FMT CODES below) + -o, --out-fmt f Output to wallet format 'f' (see FMT CODES below) -H, --hidden-incog-input-params f,o Read hidden incognito data from file 'f' at offset 'o' (comma-separated) -J, --hidden-incog-output-params f,o Write hidden incognito data to file @@ -82,13 +82,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-SUBWALLETGEN(1) + MMGEN v0.12.0 February 2020 MMGEN-SUBWALLETGEN(1) diff --git a/tool(usage)-[MMGen-command-help].md b/tool(usage)-[MMGen-command-help].md index 0ed5d00..4398671 100644 --- a/tool(usage)-[MMGen-command-help].md +++ b/tool(usage)-[MMGen-command-help].md @@ -15,19 +15,21 @@ b58chktohex b58chk_num [str or STDIN] b58tobytes b58num [str or STDIN] "pad" [int=0] b58tohex b58num [str or STDIN] "pad" [int=0] + b6dtohex b6d_num [str or STDIN] "pad" [int=0] bytespec dd_style_byte_specifier [str] bytestob58 infile [str] "pad" [int=0] hash160 hexstr [str or STDIN] hash256 string_or_bytes [str] "file_input" [bool=False] "hex_input" [bool=False] - hexdump infile [str] "cols" [int=8] "line_nums" [bool=True] + hexdump infile [str] "cols" [int=8] "line_nums" [str='hex'] hexlify infile [str] hexreverse hexstr [str or STDIN] hextob32 hexstr [str or STDIN] "pad" [int=0] hextob58 hexstr [str or STDIN] "pad" [int=0] hextob58chk hexstr [str or STDIN] + hextob6d hexstr [str or STDIN] "pad" [int=0] "add_spaces" [bool=True] id6 infile [str] id8 infile [str] - randb58 "nbytes" [int=32] "pad" [bool=True] + randb58 "nbytes" [int=32] "pad" [int=0] randhex "nbytes" [str='32'] str2id6 string [str or STDIN] unhexdump infile [str] @@ -52,15 +54,15 @@ wif2redeem_script wifkey [str or STDIN] wif2segwit_pair wifkey [str or STDIN] - Seed mnemonic utilities (wordlist: choose 'electrum' (default) or 'tirosh') + Seed phrase utilities (valid formats: 'mmgen' (default), 'bip39', 'xmrseed') - hex2mn hexstr [str or STDIN] "wordlist_id" [str='electrum'] - mn2hex seed_mnemonic [str or STDIN] "wordlist" [str='electrum'] - mn_printlist "wordlist" [str='electrum'] - mn_rand128 "wordlist" [str='electrum'] - mn_rand192 "wordlist" [str='electrum'] - mn_rand256 "wordlist" [str='electrum'] - mn_stats "wordlist" [str='electrum'] + hex2mn hexstr [str or STDIN] "fmt" [str='mmgen' (valid options: 'mmgen', 'bip39', 'xmrseed')] + mn2hex seed_mnemonic [str or STDIN] "fmt" [str='mmgen' (valid options: 'mmgen', 'bip39', 'xmrseed')] + mn_printlist "fmt" [str='mmgen' (valid options: 'mmgen', 'bip39', 'xmrseed')] "enum" [bool=False] "pager" [bool=False] + mn_rand128 "fmt" [str='mmgen' (valid options: 'mmgen', 'bip39', 'xmrseed')] + mn_rand192 "fmt" [str='mmgen' (valid options: 'mmgen', 'bip39', 'xmrseed')] + mn_rand256 "fmt" [str='mmgen' (valid options: 'mmgen', 'bip39', 'xmrseed')] + mn_stats "fmt" [str='mmgen' (valid options: 'mmgen', 'bip39', 'xmrseed')] Utilities for viewing/checking MMGen address and transaction files @@ -85,6 +87,7 @@ gen_key mmgen_addr [str] "wallet" [str=''] get_subseed subseed_idx [str] "wallet" [str=''] get_subseed_by_seed_id seed_id [str] "wallet" [str=''] "last_idx" [int=100] + list_shares share_count [int] "id_str" [str='default'] "master_share" [int=0 (min:1, max:1024, 0=no master share)] "wallet" [str=''] list_subseeds subseed_idx_range [str] "wallet" [str=''] Tracking wallet commands using the JSON-RPC interface @@ -110,6 +113,9 @@ Generate a random Bech32 public/private keypair for LTC: $ mmgen-tool -r0 --coin=ltc --type=bech32 randpair + Generate a DASH compressed public key address from the supplied WIF key: + $ mmgen-tool --coin=dash --type=compressed wif2addr XJkVRC3eGKurc9Uzx1wfQoio3yqkmaXVqLMTa6y7s3M3jTBnmxfw + Generate a well-known burn address: $ mmgen-tool hextob58chk 000000000000000000000000000000000000000000 @@ -119,7 +125,7 @@ Same as above, but get additional entropy from user: $ mmgen-tool mn_rand128 - Convert a string to base 58: + Encode bytes from a file to base 58: $ mmgen-tool bytestob58 /etc/timezone pad=20 Reverse a hex string: @@ -128,4 +134,4 @@ Same as above, but use a pipe: $ echo "deadbeefcafe" | mmgen-tool hexreverse - - MMGEN v0.11.0 May 2019 MMGEN-TOOL(USAGE)(1) + MMGEN v0.12.0 February 2020 MMGEN-TOOL(USAGE)(1) diff --git a/tool-[MMGen-command-help].md b/tool-[MMGen-command-help].md index c9c5f1b..2fbc13a 100644 --- a/tool-[MMGen-command-help].md +++ b/tool-[MMGen-command-help].md @@ -14,6 +14,7 @@ -t, --type t Specify address type (valid options: 'legacy', 'compressed', 'segwit', 'bech32', 'zcash_z') -v, --verbose Produce more verbose output + -X, --cached-balances Use cached balances (Ethereum only) COMMANDS @@ -30,6 +31,7 @@ b58tobytes - convert a base 58 number to bytes (warning: outputs binary data) b58tohex - convert a base 58 number to hexadecimal + b6dtohex - convert a die roll base6 (base6d) number to hexadecimal bytespec - convert a byte specifier such as '1GB' into an integer bytestob58 - convert bytes to base 58 (supply data via STDIN) hash160 - compute ripemd160(sha256(data)) (convert hex pubkey to hex @@ -41,6 +43,7 @@ hextob32 - convert a hexadecimal number to MMGen's flavor of base 32 hextob58 - convert a hexadecimal number to base 58 hextob58chk - convert a hexadecimal number to base58-check encoding + hextob6d - convert a hexadecimal number to die roll base6 (base6d) id6 - generate 6-character MMGen ID for a file (use '-' for stdin) id8 - generate 8-character MMGen ID for a file (use '-' for stdin) randb58 - generate random data (default: 32 bytes) and convert it to @@ -63,7 +66,8 @@ addr2pubhash - convert coin address to public key hash addr2scriptpubkey - convert coin address to scriptPubKey hex2wif - convert a private key from hex to WIF format - privhex2addr - generate coin address from private key in hex format + privhex2addr - generate coin address from raw private key data in + hexadecimal format privhex2pubhex - generate a hex public key from a hex private key pubhash2addr - convert public key hash to address pubhex2addr - convert a hex pubkey to an address @@ -81,17 +85,32 @@ wif2segwit_pair - generate both a Segwit P2SH-P2WPKH redeem script and address from WIF - Seed mnemonic utilities (wordlist: choose 'electrum' (default) or 'tirosh'): + Seed phrase utilities (valid formats: 'mmgen' (default), 'bip39', 'xmrseed'): - IMPORTANT NOTE: Though MMGen mnemonics use the Electrum wordlist, they're - computed using a different algorithm and are NOT Electrum-compatible! + IMPORTANT NOTE: MMGen's default seed phrase format uses the Electrum + wordlist, however seed phrases are computed using a different algorithm + and are NOT Electrum-compatible! - hex2mn - convert a 16, 24 or 32-byte hexadecimal number to a mnemonic - mn2hex - convert a 12, 18 or 24-word mnemonic to a hexadecimal number + BIP39 support is fully compatible with the standard, allowing users to + import and export seed entropy from BIP39-compatible wallets. However, + users should be aware that BIP39 support does not imply BIP32 support! + MMGen uses its own key derivation scheme differing from the one described + by the BIP32 protocol. + + For Monero ('xmrseed') seed phrases, input data is reduced to a spendkey + before conversion so that a canonical seed phrase is produced. This is + required because Monero seeds, unlike ordinary wallet seeds, are tied + to a concrete key/address pair. To manually generate a Monero spendkey, + use the 'hex2wif' command. + + hex2mn - convert a 16, 24 or 32-byte hexadecimal number to a + mnemonic seed phrase + mn2hex - convert a 12, 18 or 24-word mnemonic seed phrase to a + hexadecimal number mn_printlist - print mnemonic wordlist - mn_rand128 - generate random 128-bit mnemonic - mn_rand192 - generate random 192-bit mnemonic - mn_rand256 - generate random 256-bit mnemonic + mn_rand128 - generate random 128-bit mnemonic seed phrase + mn_rand192 - generate random 192-bit mnemonic seed phrase + mn_rand256 - generate random 256-bit mnemonic seed phrase mn_stats - show stats for mnemonic wordlist Utilities for viewing/checking MMGen address and transaction files: @@ -127,6 +146,8 @@ Index for default or specified wallet get_subseed_by_seed_id - get the Subseed Index of a single subseed by Seed ID for default or specified wallet + list_shares - list the Seed IDs of the shares resulting from a + split of default or specified wallet list_subseeds - list a range of subseed Seed IDs for default or specified wallet @@ -143,9 +164,13 @@ Monero wallet utilities: - keyaddrlist2monerowallets - create Monero wallets from key-address list - syncmonerowallets - sync Monero wallets from key-address list + Note that the use of these commands requires private data to be exposed on + A network-connected machine in order to unlock the Monero wallets. This is + A violation of MMGen's security policy. + + keyaddrlist2monerowallets - create Monero wallets from a key-address list + syncmonerowallets - sync Monero wallets from a key-address list Type 'mmgen-tool help ' for help on a particular command - MMGEN v0.11.0 May 2019 MMGEN-TOOL(1) + MMGEN v0.12.0 February 2020 MMGEN-TOOL(1) diff --git a/txbump-[MMGen-command-help].md b/txbump-[MMGen-command-help].md index 8dcba51..598e04b 100644 --- a/txbump-[MMGen-command-help].md +++ b/txbump-[MMGen-command-help].md @@ -21,7 +21,7 @@ with non-standard (< 256-bit) seed lengths. -k, --keys-from-file f Provide additional keys for non-MMGen addresses -K, --key-generator m Use method 'm' for public key generation - Options: 1:python-ecdsa 2:secp256k1 + Options: 1:python-ecdsa 2:libsecp256k1 (default: 2) -M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key- address file (output of 'mmgen-keygen'). Permits @@ -72,13 +72,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-TXBUMP(1) + MMGEN v0.12.0 February 2020 MMGEN-TXBUMP(1) diff --git a/txcreate-[MMGen-command-help].md b/txcreate-[MMGen-command-help].md index e3e1eb2..537ed69 100644 --- a/txcreate-[MMGen-command-help].md +++ b/txcreate-[MMGen-command-help].md @@ -9,6 +9,8 @@ -C, --tx-confs c Desired number of confirmations (default: 3) -d, --outdir d Specify an alternate directory 'd' for output -D, --contract-data D Path to hex-encoded contract data (ETH only) + -E, --fee-estimate-mode M Specify the network fee estimate mode. Choices: + 'conservative','economical'. Default: 'conservative' -f, --tx-fee f Transaction fee, as a decimal BTC amount or as satoshis per byte (an integer followed by s). See FEE SPECIFICATION below. If omitted, fee will be @@ -26,10 +28,11 @@ -v, --verbose Produce more verbose output -V, --vsize-adj f Adjust transaction's estimated vsize by factor 'f' -y, --yes Answer 'yes' to prompts, suppress non-essential output + -X, --cached-balances Use cached balances (Ethereum only) The transaction's outputs are specified on the command line, while its inputs - are chosen from a list of the user's unpent outputs via an interactive menu. + are chosen from a list of the user's unspent outputs via an interactive menu. If the transaction fee is not specified on the command line (see FEE SPECIFICATION below), it will be calculated dynamically using network fee @@ -53,4 +56,4 @@ a plain decimal number, or as satoshis per byte, using an integer followed by 's', for satoshi. - MMGEN v0.11.0 May 2019 MMGEN-TXCREATE(1) + MMGEN v0.12.0 February 2020 MMGEN-TXCREATE(1) diff --git a/txdo-[MMGen-command-help].md b/txdo-[MMGen-command-help].md index c86e10a..cb255d2 100644 --- a/txdo-[MMGen-command-help].md +++ b/txdo-[MMGen-command-help].md @@ -12,6 +12,8 @@ -d, --outdir d Specify an alternate directory 'd' for output -D, --contract-data D Path to hex-encoded contract data (ETH only) -e, --echo-passphrase Print passphrase to screen when typing it + -E, --fee-estimate-mode M Specify the network fee estimate mode. Choices: + 'conservative','economical'. Default: 'conservative' -f, --tx-fee f Transaction fee, as a decimal BTC amount or as satoshis per byte (an integer followed by s). See FEE SPECIFICATION below. If omitted, fee will be @@ -28,7 +30,7 @@ with non-standard (< 256-bit) seed lengths. -k, --keys-from-file f Provide additional keys for non-MMGen addresses -K, --key-generator m Use method 'm' for public key generation - Options: 1:python-ecdsa 2:secp256k1 + Options: 1:python-ecdsa 2:libsecp256k1 (default: 2) -L, --locktime t Lock time (block height or unix seconds) (default: 0) -m, --minconf n Minimum number of confirmations required to spend @@ -49,12 +51,13 @@ wallet is scanned for subseeds. -v, --verbose Produce more verbose output -V, --vsize-adj f Adjust transaction's estimated vsize by factor 'f' + -X, --cached-balances Use cached balances (Ethereum only) -y, --yes Answer 'yes' to prompts, suppress non-essential output -z, --show-hash-presets Show information on available hash presets The transaction's outputs are specified on the command line, while its inputs - are chosen from a list of the user's unpent outputs via an interactive menu. + are chosen from a list of the user's unspent outputs via an interactive menu. If the transaction fee is not specified on the command line (see FEE SPECIFICATION below), it will be calculated dynamically using network fee @@ -103,13 +106,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-TXDO(1) + MMGEN v0.12.0 February 2020 MMGEN-TXDO(1) diff --git a/txsend-[MMGen-command-help].md b/txsend-[MMGen-command-help].md index 1e4c835..5ff8223 100644 --- a/txsend-[MMGen-command-help].md +++ b/txsend-[MMGen-command-help].md @@ -8,4 +8,4 @@ -s, --status Get status of a sent transaction -y, --yes Answer 'yes' to prompts, suppress non-essential output - MMGEN v0.11.0 May 2019 MMGEN-TXSEND(1) + MMGEN v0.12.0 February 2020 MMGEN-TXSEND(1) diff --git a/txsign-[MMGen-command-help].md b/txsign-[MMGen-command-help].md index 9afd08c..f14c398 100644 --- a/txsign-[MMGen-command-help].md +++ b/txsign-[MMGen-command-help].md @@ -21,7 +21,7 @@ -z, --show-hash-presets Show information on available hash presets -k, --keys-from-file f Provide additional keys for non-MMGen addresses -K, --key-generator m Use method 'm' for public key generation - Options: 1:python-ecdsa 2:secp256k1 (default: 2) + Options: 1:python-ecdsa 2:libsecp256k1 (default: 2) -M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key- address file (output of 'mmgen-keygen'). Permits online signing without an MMGen seed source. The @@ -64,13 +64,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-TXSIGN(1) + MMGEN v0.12.0 February 2020 MMGEN-TXSIGN(1) diff --git a/walletchk-[MMGen-command-help].md b/walletchk-[MMGen-command-help].md index 1cb1b34..c9a0009 100644 --- a/walletchk-[MMGen-command-help].md +++ b/walletchk-[MMGen-command-help].md @@ -1,4 +1,4 @@ - MMGEN-WALLETCHK: Check validity of an MMGen wallet + MMGEN-WALLETCHK: Check validity of the default or specified MMGen wallet USAGE: mmgen-walletchk [opts] [infile] OPTIONS: -h, --help Print this help message @@ -37,13 +37,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-WALLETCHK(1) + MMGEN v0.12.0 February 2020 MMGEN-WALLETCHK(1) diff --git a/walletconv-[MMGen-command-help].md b/walletconv-[MMGen-command-help].md index 71623ff..e76204d 100644 --- a/walletconv-[MMGen-command-help].md +++ b/walletconv-[MMGen-command-help].md @@ -1,4 +1,4 @@ - MMGEN-WALLETCONV: Convert an MMGen wallet from one format to another + MMGEN-WALLETCONV: Convert the default or specified MMGen wallet from one format to another USAGE: mmgen-walletconv [opts] [infile] OPTIONS: -h, --help Print this help message @@ -47,13 +47,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-WALLETCONV(1) + MMGEN v0.12.0 February 2020 MMGEN-WALLETCONV(1) diff --git a/walletgen-[MMGen-command-help].md b/walletgen-[MMGen-command-help].md index fed9d1e..8da30da 100644 --- a/walletgen-[MMGen-command-help].md +++ b/walletgen-[MMGen-command-help].md @@ -40,13 +40,16 @@ Format FileExt Valid codes ------ ------- ----------- + BIP39Mnemonic .bip39 bip39 Brainwallet .mmbrain mmbrain,brainwallet,brain,bw,b - HexSeedFile .mmhex seedhex,hexseed,hex,mmhex + DieRollSeedFile .b6d b6d,die,dieroll IncogWallet .mmincog mmincog,incog,icg,i IncogWalletHex .mmincox mmincox,incox,incog_hex,xincog,ix,xi IncogWalletHidden None incog_hidden,hincog,ih,hi - Mnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m - SeedFile .mmseed mmseed,seed,s + MMGenHexSeedFile .mmhex seedhex,hexseed,mmhex + MMGenMnemonic .mmwords mmwords,words,mnemonic,mnem,mn,m + MMGenSeedFile .mmseed mmseed,seed,s + PlainHexSeedFile .hex hex,rawhex,plainhex Wallet .mmdat wallet,w - MMGEN v0.11.0 May 2019 MMGEN-WALLETGEN(1) + MMGEN v0.12.0 February 2020 MMGEN-WALLETGEN(1)