update documentation

This commit is contained in:
The MMGen Project 2026-05-17 18:03:37 +00:00
commit 170a0a892a
Signed by: mmgen
GPG key ID: 3F8B1861E32B7DA2
23 changed files with 103 additions and 56 deletions

View file

@ -252,8 +252,7 @@ Make sure that [Monerod][M] is installed and running and that
Skip this step for MSYS2, as these requirements were already installed by
pacman.
Skip ‘keccak-requirements.txt’ if your Python version 3.13 or greater and
you don’t plan to run the test suite.
Skip ‘keccak-requirements.txt’ if your Python version is 3.13 or greater.
```text
$ python3 -m pip install -r keccak-requirements.txt # see above
@ -276,10 +275,15 @@ in the [**Getting Started**][ct] guide, with the following differences:
machine with no arguments. This creates the watch-only wallet or wallets
that together comprise the user’s tracking wallet. For watch-only wallets
that already exist, no action is performed.
- `mmgen-txcreate` supports both sweep transactions and send to external
address (see `mmgen-txcreate --coin=xmr --help`)
- Tracking wallet views are account-based.
- The `mmgen-xmrwallet` script may be used to list and view sent transactions
on the removable device. Type `mmgen-xmrwallet --help` for details.
- New accounts and addresses may be added to the tracking wallet via
`mmgen-tool --coin=xmr listaddresses`.
- Compatibility mode is not available for Windows. Windows users must use
`mmgen-xmrwallet` in non-automount (v1) mode to transact Monero.
#### Wallet creation and transacting via `mmgen-xmrwallet` (deprecated)

View file

@ -60,8 +60,8 @@ Enter Version 2 Autosigning.
## <a id="as_v2">Autosigning, Version 2</a>
Here the main innovation was to automate all mounting, unmounting, and file
copying operations. Version 2 autosigning is sometimes referred to in program
output by the term “automount”.
copying operations. Version 2 autosigning is sometimes referred to in the
program output and documentation by the term “automount”.
#### Preparation of signing session:
1. Same as for [Version 1](#as_v1_s)

View file

@ -345,8 +345,8 @@ offline machine, which will greatly simplify the transacting process. For
optimal user experience, the offline signing device should be a Raspberry Pi
or other single-board computer for which LED signaling support is provided.*
*The [**Autosigning**][ax] wiki page outlines the differences between the manual
and autosigning methods of transacting.*
*The* [***Autosigning***][ax] *wiki page outlines the differences between the
manual and autosigning methods of transacting.*
Now that you have some coins under MMGen Wallet’s control, you’re ready to
create a transaction. Note that transactions are harmless until they’re signed

View file

@ -59,9 +59,9 @@ Download the MSYS2 executable installer for your architecture from the [MSYS2
homepage][mh], but ignore the installation instructions there.
Run the installer, accepting all defaults. When installation completes,
uncheck ‘Run MSYS2 now’ and click ‘Finish’. From the Start menu, drag the
‘MSYS2 UCRT64’ icon to the desktop. You will use it to launch all MSYS2
terminal sessions from now on. Double-click the icon to launch the terminal.
uncheck ‘Run MSYS2 now’ and click ‘Finish’. From the Start menu, pin the
‘MSYS2 UCRT64’ icon to the taskbar. You will use it to launch all MSYS2
terminal sessions from now on. Click the icon to launch the terminal.
Note that the root of your MSYS2 installation is located in `C:\\msys64`, so the
following commands, for example, will produce a listing of the same directory:
@ -102,18 +102,18 @@ $ ls 'C:\\msys64\etc' # the path as seen by Windows
>
> Download up-to-date versions of these files from the primary MSYS2 mirror:
>
>> <https://mirror.msys2.org/msys/x86_64/msys.db>
>> <https://mirror.msys2.org/msys/x86_64/msys.db.sig>
>> <https://mirror.msys2.org/mingw/mingw64/mingw64.db>
>> <https://mirror.msys2.org/mingw/mingw64/mingw64.db.sig>
>> <https://mirror.msys2.org/mingw/mingw32/mingw32.db>
>> <https://mirror.msys2.org/mingw/mingw32/mingw32.db.sig>
>> <https://mirror.msys2.org/mingw/clang64/clang64.db>
>> <https://mirror.msys2.org/mingw/clang64/clang64.db.sig>
>> <https://mirror.msys2.org/mingw/clangarm64/clangarm64.db>
>> <https://mirror.msys2.org/mingw/clangarm64/clangarm64.db.sig>
>> <https://mirror.msys2.org/mingw/ucrt64/ucrt64.db>
>> <https://mirror.msys2.org/mingw/ucrt64/ucrt64.db.sig>
>> <https://repo.msys2.org/msys/x86_64/msys.db>
>> <https://repo.msys2.org/msys/x86_64/msys.db.sig>
>> <https://repo.msys2.org/mingw/mingw64/mingw64.db>
>> <https://repo.msys2.org/mingw/mingw64/mingw64.db.sig>
>> <https://repo.msys2.org/mingw/mingw32/mingw32.db>
>> <https://repo.msys2.org/mingw/mingw32/mingw32.db.sig>
>> <https://repo.msys2.org/mingw/clang64/clang64.db>
>> <https://repo.msys2.org/mingw/clang64/clang64.db.sig>
>> <https://repo.msys2.org/mingw/clangarm64/clangarm64.db>
>> <https://repo.msys2.org/mingw/clangarm64/clangarm64.db.sig>
>> <https://repo.msys2.org/mingw/ucrt64/ucrt64.db>
>> <https://repo.msys2.org/mingw/ucrt64/ucrt64.db.sig>
>
> Copy the files to your offline machine, replacing the originals at
> `C:\msys64\var\lib\pacman\sync`.
@ -184,13 +184,13 @@ pacman -S tar git vim autoconf automake-wrapper autogen libtool cygrunsrv \
mingw-w64-ucrt-x86_64-libsodium \
mingw-w64-ucrt-x86_64-python-pynacl \
mingw-w64-ucrt-x86_64-python-cryptography \
mingw-w64-ucrt-x86_64-python-pycryptodome \
mingw-w64-ucrt-x86_64-python-six \
mingw-w64-ucrt-x86_64-python-pexpect \
mingw-w64-ucrt-x86_64-python-gmpy2 \
mingw-w64-ucrt-x86_64-python-pysocks \
mingw-w64-ucrt-x86_64-python-requests \
mingw-w64-ucrt-x86_64-python-aiohttp \
mingw-w64-ucrt-x86_64-python-ecdsa \
mingw-w64-ucrt-x86_64-python-pyreadline3 \
mingw-w64-ucrt-x86_64-python-lxml
```
@ -238,17 +238,13 @@ prevent pip from installing packages in the system directory.
On your online machine:
```text
$ python3 -m pip download ecdsa
$ python3 -m pip download --no-binary :all: scrypt==0.8.27 aiohttp==3.12.9
$ python3 -m pip download --no-binary :all: scrypt==0.8.27
```
Copy the downloaded files to your offline machine (if applicable) and install:
```text
$ python3 -m pip install ecdsa-*.whl
$ python3 -m pip install --no-build-isolation scrypt*gz
$ python3 -m pip install --no-build-isolation aiohtt* multidic* yarl* aiohap* aiosig* attrs* frozenlist* idna* propcache*
```
### <a id="a_se">7. Clone and copy the secp256k1 library (offline install only)</a>
@ -316,7 +312,7 @@ Enter the repo directory, build and install:
```text
$ cd mmgen-wallet
$ python3 -m build --no-isolation
$ python3 -m build --no-isolation --wheel
$ python3 -m pip install dist/*.whl
```

View file

@ -51,12 +51,10 @@ $ python3 -m pip download pycoin # online
$ python3 -m pip install --no-build-isolation pycoin-*.tar.gz # offline
```
CD to the MMGen Wallet repository root and build the secp256k1 extension module
in place:
CD to the MMGen Wallet repository root:
```text
$ cd path/to/mmgen/repo
$ python3 setup.py build_ext --inplace
```
Run the following if upgrading from a previous version of MMGen:
@ -94,7 +92,8 @@ requires the SSH daemon to be set up and running. On MSYS2 systems, SSHD
is not configured by default, but it may be easily set up with the following
steps:
Open PowerShell as administrator, and at the DOS prompt, execute:
Open PowerShell as administrator (right mouse click, “Run as Administrator”).
At the DOS prompt, execute:
```text
system32> net user administrator /active:yes

View file

@ -1,7 +1,9 @@
```text
MMGEN-ADDRGEN: Generate a range or list of addresses from an MMGen wallet,
mnemonic, seed or brainwallet
USAGE: mmgen-addrgen [opts] [seed source] <index list or range(s)>
USAGE: mmgen-addrgen [opts] [seed source] <index list or range(s)>
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -78,12 +80,14 @@
subwallets from a single parent. This leaves each user with a total of two
million subwallets, which should be enough for most practical purposes.
PASSPHRASE NOTE:
For passphrases all combinations of whitespace are equal, and leading and
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1,6 +1,8 @@
```text
MMGEN-CLI: Communicate with a coin daemon via its JSON-RPC interface
USAGE: mmgen-cli [opts] <command> <command args>
USAGE: mmgen-cli [opts] <command> <command args>
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options

View file

@ -1,7 +1,9 @@
```text
MMGEN-KEYGEN: Generate a range or list of secret keys from an MMGen wallet,
mnemonic, seed or brainwallet
USAGE: mmgen-keygen [opts] [seed source] <index list or range(s)>
USAGE: mmgen-keygen [opts] [seed source] <index list or range(s)>
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -83,12 +85,14 @@
subwallets from a single parent. This leaves each user with a total of two
million subwallets, which should be enough for most practical purposes.
PASSPHRASE NOTE:
For passphrases all combinations of whitespace are equal, and leading and
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1,10 +1,13 @@
```text
MMGEN-MSG: Perform message signing operations for MMGen addresses
USAGE: mmgen-msg [opts] create MESSAGE_TEXT ADDRESS_SPEC [...]
mmgen-msg [opts] sign MESSAGE_FILE [WALLET_FILE ...]
mmgen-msg [opts] verify MESSAGE_FILE [MMGen ID]
mmgen-msg [opts] verify <exported JSON dump file> [address]
mmgen-msg [opts] export MESSAGE_FILE [MMGen ID]
USAGE:
mmgen-msg [opts] create MESSAGE_TEXT ADDRESS_SPEC [...]
mmgen-msg [opts] sign MESSAGE_FILE [WALLET_FILE ...]
mmgen-msg [opts] verify MESSAGE_FILE [MMGen ID]
mmgen-msg [opts] verify <exported JSON dump file> [address]
mmgen-msg [opts] export MESSAGE_FILE [MMGen ID]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options

View file

@ -1,6 +1,8 @@
```text
MMGEN-PASSCHG: Change the passphrase, hash preset or label of the default or specified MMGen wallet
USAGE: mmgen-passchg [opts] [infile]
USAGE: mmgen-passchg [opts] [infile]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options

View file

@ -1,7 +1,9 @@
```text
MMGEN-PASSGEN: Generate a range or list of passwords from an MMGen wallet,
mnemonic, seed or brainwallet for the given ID string
USAGE: mmgen-passgen [opts] [seed source] <ID string> <index list or range(s)>
USAGE: mmgen-passgen [opts] [seed source] <ID string> <index list or range(s)>
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -41,6 +43,7 @@
Changing either the password format (base32,base58) or length alters the seed
and thus generates a completely new set of passwords.
PASSWORD FORMATS:
Code Description Min Len Max Len Default Len
@ -50,6 +53,7 @@
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:
@ -78,6 +82,7 @@
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1,6 +1,8 @@
```text
MMGEN-REGTEST: Coin daemon regression test mode setup and operations for the MMGen suite
USAGE: mmgen-regtest [opts] <command>
USAGE: mmgen-regtest [opts] <command>
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options

View file

@ -1,7 +1,9 @@
```text
MMGEN-SEEDJOIN: Regenerate an MMGen deterministic wallet from seed shares
created by 'mmgen-seedsplit'
USAGE: mmgen-seedjoin [options] share1 share2 [...shareN]
USAGE: mmgen-seedjoin [options] share1 share2 [...shareN]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -39,6 +41,7 @@
For usage examples, see the help screen for the 'mmgen-seedsplit' command.
PASSPHRASE NOTE:
For passphrases all combinations of whitespace are equal, and leading and

View file

@ -1,6 +1,8 @@
```text
MMGEN-SEEDSPLIT: Generate a seed share from the default or specified MMGen wallet
USAGE: mmgen-seedsplit [opts] [infile] [<Split ID String>:]<index>:<share count>
USAGE: mmgen-seedsplit [opts] [infile] [<Split ID String>:]<index>:<share count>
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -115,12 +117,14 @@
$ mmgen-seedsplit -M4 -o bip39 2:2 # Step N (share B)
$ mmgen-seedjoin -M4 -H my.hincog,1325 <output_of_step_N>
PASSPHRASE NOTE:
For passphrases all combinations of whitespace are equal, and leading and
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1,6 +1,8 @@
```text
MMGEN-SUBWALLETGEN: Generate a subwallet from the default or specified MMGen wallet
USAGE: mmgen-subwalletgen [opts] [infile] <Subseed Index>
USAGE: mmgen-subwalletgen [opts] [infile] <Subseed Index>
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -68,12 +70,14 @@
subwallets from a single parent. This leaves each user with a total of two
million subwallets, which should be enough for most practical purposes.
PASSPHRASE NOTE:
For passphrases all combinations of whitespace are equal, and leading and
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1,6 +1,8 @@
```text
MMGEN-SWAPTXCREATE: Create a DEX swap transaction from one MMGen tracking wallet to another
USAGE: mmgen-swaptxcreate [opts] COIN1 [AMT CHG_ADDR] COIN2 [ADDR] [addr file ...]
USAGE: mmgen-swaptxcreate [opts] COIN1 [AMT CHG_ADDR] COIN2 [ADDR]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options

View file

@ -1,6 +1,8 @@
```text
MMGEN-SWAPTXDO: Create, sign and send a DEX swap transaction from one MMGen tracking wallet to another
USAGE: mmgen-swaptxdo [opts] COIN1 [AMT CHG_ADDR] COIN2 [ADDR] [addr file ...] [seed source ...]
USAGE: mmgen-swaptxdo [opts] COIN1 [AMT CHG_ADDR] COIN2 [ADDR] [addr file ...] [seed source ...]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -215,7 +217,6 @@
Seed source files must have the canonical extensions listed in the 'FileExt'
column below:
FMT CODES:
Format FileExt Valid codes

View file

@ -19,6 +19,8 @@
-q, --quiet Produce quieter output
-r, --usr-randchars n Get 'n' characters of additional randomness from
user (min=10, max=80)
-s, --scroll Use the curses-like scrolling interface for tracking
wallet views
-t, --type t Specify address type (valid choices: 'legacy',
'compressed', 'segwit', 'bech32', 'zcash_z')
-v, --verbose Produce more verbose output
@ -205,5 +207,5 @@
Type ‘mmgen-tool help <command>’ for help on a particular command
MMGEN-WALLET 16.1.dev37 May 2026 MMGEN-TOOL(1)
MMGEN-WALLET 16.1.dev41 May 2026 MMGEN-TOOL(1)
```

View file

@ -1,6 +1,8 @@
```text
MMGEN-TXSIGN: Sign cryptocoin transactions generated by mmgen-txcreate
USAGE: mmgen-txsign [opts] <transaction file>... [seed source]...
USAGE: mmgen-txsign [opts] <transaction file>... [seed source]...
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -67,7 +69,6 @@
Seed source files must have the canonical extensions listed in the 'FileExt'
column below:
FMT CODES:
Format FileExt Valid codes

View file

@ -1,6 +1,8 @@
```text
MMGEN-WALLETCHK: Check validity of the default or specified MMGen wallet
USAGE: mmgen-walletchk [opts] [infile]
USAGE: mmgen-walletchk [opts] [infile]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -28,6 +30,7 @@
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1,6 +1,8 @@
```text
MMGEN-WALLETCONV: Convert the default or specified MMGen wallet from one format to another
USAGE: mmgen-walletconv [opts] [infile]
USAGE: mmgen-walletconv [opts] [infile]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -39,6 +41,7 @@
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1,6 +1,8 @@
```text
MMGEN-WALLETGEN: Generate an MMGen wallet from a random seed
USAGE: mmgen-walletgen [opts]
USAGE: mmgen-walletgen [opts]
OPTIONS:
-h, --help Print this help message
--longhelp Print help message for long (global) options
@ -31,6 +33,7 @@
trailing space are ignored. This permits reading passphrase or brainwallet
data from a multi-line file with free spacing and indentation.
BRAINWALLET NOTE:
To thwart dictionary attacks, it’s recommended to use a strong hash preset

View file

@ -1 +1 @@
16.1.dev40
16.1.dev41