diff --git a/doc/wiki/Altcoin-and-Forkcoin-Support.md b/doc/wiki/Altcoin-and-Forkcoin-Support.md index 4e7594b0..99a2cd12 100644 --- a/doc/wiki/Altcoin-and-Forkcoin-Support.md +++ b/doc/wiki/Altcoin-and-Forkcoin-Support.md @@ -4,7 +4,7 @@ #### [Ethereum (ETH), Ethereum Classic (ETC) and ERC20 Tokens](#a_eth) * [Install the Ethereum dependencies](#a_ed) -* [Install and run Geth or Parity](#a_geth) +* [Install and run Reth, Geth or Parity](#a_geth) * [Transacting and other basic operations](#a_tx) * [Creating and deploying ERC20 tokens](#a_dt) @@ -12,6 +12,10 @@ #### [Monero (XMR)](#a_xmr) +#### [THORChain (RUNE)](#a_rune) + +#### [Asset swaps via THORChain](#a_tcswap) + #### [Key/address generation for Zcash (ZEC)](#a_zec) #### [Key/address generation for 144 Bitcoin-derived altcoins](#a_kg) @@ -35,20 +39,31 @@ From the MMGen Wallet repository root, type: ```text $ python3 -m pip install -r alt-requirements.txt # skip this for MSYS2 -$ python3 -m pip install --no-deps -r eth-requirements.txt ``` -#### Install and run Geth or Parity +#### Install and run Reth, Geth or Parity -MMGen Wallet uses Go-Ethereum (Geth) to communicate with the Ethereum network. -For information on installing Geth on your system, visit the the Geth [Github -repo][ge]. On Arch Linux systems, Go-Ethereum is a package and may be installed -with `pacman`. +MMGen Wallet uses Rust Ethereum (Reth) or Go-Ethereum (Geth) to communicate with +the Ethereum network, with Reth now being preferred by the MMGen Project. + +Installation and usage instructions for Reth can be found [here][RE] and +prebuilt binaries [here][rb]. + +Information for Geth can be found at its [homepage][gh] or [Github repo][ge]. +On Arch Linux systems, Geth is a package and may be installed with `pacman`. On +RISC-V platforms, for which no prebuilt binaries are available, Geth must be +built from source, preferably using the most recent version of [Go][gd]. Note that the Ethereum daemon is not used for transaction signing, so you needn’t install it on your offline machine. -For Geth, the following command-line options are required: +For Reth, the following command-line options are required, among others: + +```text +--http --http.api=eth,rpc,web3,txpool +``` + +For Geth, the following command-line options are required, among others: ```text --http --http.api=eth,web3,txpool --http.port=8745 @@ -71,8 +86,8 @@ Parity’s light client mode, which queries other nodes on the network for blockchain data, is supported. 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. Invoke your daemon with the `--help` -option for more complete information. +Other command-line options will certainly be required. Invoke your daemon with +the `--help` option for more complete information. #### Transacting and other basic operations @@ -80,7 +95,7 @@ Basic operations with ETH, ETC and ERC20 tokens work as described in the [**Getting Started**][bo] guide, with some differences. Please note the following: -* Don’t forget to invoke all commands with `--coin=eth` or `--coin=etc`. +* Don’t forget to invoke relevant commands with `--coin=eth` or `--coin=etc`. * Use the `--token` option with the token symbol as parameter for all token operations. When importing addresses for a new token into your tracking wallet, use the `--token-addr` option with the token address instead. @@ -93,6 +108,14 @@ following: your account balances have changed, they may be refreshed interactively within the TRACKED ACCOUNTS menu. Cached balances are stored persistently in your tracking wallet. +* Note that sending transactions with your Ethereum node can easily deanonymize + you by linking the transaction with your IP address (running a Reth node + over Tor or Tor+VPN is theoretically possible, but problematic in practice). + As a solution to this problem, MMGen Wallet supports broadcasting transactions + via the etherscan.io website with the `--tx-proxy` option. Sending is done + using the site’s public web form, so no registration or API key is required. + For anonymity, the connection can be routed via Tor or I2P using the `--proxy` + option. See `mmgen-txsend --help` for details. ##### Transacting example: @@ -205,11 +228,14 @@ To transact BCH or Litecoin, first make sure the Bitcoin Cash Node or Litecoin daemons are properly installed ([source][si])([binaries][bi]), [running][p8] and synced. +On RISC-V platforms, Bitcoin Cash Node must be compiled from source, as no +precompiled binaries are available. + MMGen Wallet requires that the bitcoin-bchn daemon be listening on non-standard [RPC port 8432][p8]. If your daemon version is >= 0.16.2, you must use the `--usecashaddr=0` option. -Then just add the `--coin=bch` or `--coin=ltc` option to all your MMGen Wallet +Then just add the `--coin=bch` or `--coin=ltc` option to applicable MMGen Wallet commands. It’s that simple! ### Monero (XMR) @@ -274,6 +300,30 @@ have multiple wallets requiring long sync times. To learn how to transact using your wallets, continue on to the [`mmgen-xmrwallet`][mx] help screen. +### THORChain (RUNE) + +Transacting RUNE with MMGen Wallet is similar to transacting BTC as described in +the [**Getting Started**][gs] guide. Just add the `--coin=rune` option to all +relevant commands. With `mmgen-autosign`, add `rune` to the list of coins in +the `--coins` parameter. + +Note that MMGen Wallet’s RUNE support requires no locally running node; instead, +balances are fetched and transactions sent via a public node at ninerealms.com. +As this can compromise your privacy, it’s recommended to proxy all +communications via Tor or I2P: refer to the helpscreens of `mmgen-txcreate`, +`mmgen-swaptxcreate` and `mmgen-txsend` for more information. + +### Asset swaps via THORChain + +21 assets (as of this writing) may be swapped directly within MMGen Wallet via +THORChain. Swapping assets is just like normal transacting, except transactions +are created using `mmgen-swaptxcreate` instead of `mmgen-txcreate`. Note that +coin daemons for both the send and receive assets must be running and synced +before carrying out a swap. Depending on your setup, communication with two +daemons simultaneously may require the use of *coin-specific options* (see +`mmgen-swaptxcreate --longhelp`). For usage information, examples, and a list +of supported assets, invoke `mmgen-swaptxcreate --help`. + ### Key/address generation for Zcash (ZEC) MMGen Wallet supports generation of Zcash **z-addresses.** @@ -353,7 +403,11 @@ the MMGen Project. [si]: Install-Bitcoind-from-Source-on-Linux.md [bi]: Install-Bitcoind.md#a_d [p8]: Install-Bitcoind.md#a_r +[gh]: https://geth.ethereum.org [ge]: https://github.com/ethereum/go-ethereum [mx]: commands/command-help-xmrwallet.md [sb]: https://github.com/ethereum/solidity/releases [sd]: https://docs.soliditylang.org +[RE]: https://reth.rs/overview +[rb]: https://github.com/paradigmxyz/reth/releases +[gd]: https://go.dev diff --git a/doc/wiki/Getting-Started-with-MMGen-Wallet.md b/doc/wiki/Getting-Started-with-MMGen-Wallet.md index 8d4d1bf2..52364126 100644 --- a/doc/wiki/Getting-Started-with-MMGen-Wallet.md +++ b/doc/wiki/Getting-Started-with-MMGen-Wallet.md @@ -38,31 +38,31 @@ #### Before you begin -Before you begin, note that the filenames, seed IDs and Bitcoin addresses used -in this primer are intentionally invalid and are for purposes of illustration -only. As you perform the exercises, you will substitute real ones in their -place. +Before you begin, please note that the filenames, seed IDs and Bitcoin addresses +used in this primer are intentionally invalid and are for purposes of +illustration only. As you perform the exercises, you will substitute real ones +in their place. The up arrow (for repeating commands) and tab key (or Ctrl-I) (for completing commands and filenames) will speed up your work at the command line greatly. The examples in this tutorial are geared towards Bitcoin, but with some modification they may be used with altcoins and forkcoins for which MMGen -Wallet supports transaction operations (BCH, LTC, ETH, ETC and XMR as of this -writing). See [Altcoin-and-Forkcoin-Support][09] for more details. +Wallet supports transaction operations (BCH, LTC, ETH, ETC, RUNE and XMR as of +this writing). See [Altcoin-and-Forkcoin-Support][09] for more details. #### Invocation -MMGen Wallet is not a single program but a suite of lightweight scripts run from -the command line. Commands all begin, not surprisingly, with `mmgen`, and thus -you may view all available commands by typing `mmgen` followed by the TAB key. -Every command has a help screen displaying detailed usage and options -information. To view it, type the command name followed by `--help`. Note that -most command options have long and short versions. For example, the `--help` -option may be abbreviated to `-h`. Exceptions are the options listed by -`--longhelp`, which have no short versions. +MMGen Wallet is not a single program but a suite of scripts run from the command +line. Commands all begin, not surprisingly, with `mmgen`, and thus you may view +all available commands by typing `mmgen` followed by the TAB key. Every command +has a help screen displaying detailed usage and options information, available +by entering the command name followed by `--help`. Note that most command +options have long and short versions. For example, the `--help` option may be +abbreviated to `-h`. Exceptions are the options listed by `--longhelp`, which +have no short versions. -MMGen Wallet’s commands are generally interactive, providing you with information +MMGen Wallet’s scripts are generally interactive, providing you with information and prompting you for input. The `--verbose` or `-v` option requests commands to be more wordy, while the `--quiet` or `-q` option suppresses all but the most essential information. These options are available for all MMGen Wallet @@ -80,31 +80,35 @@ Sample command invocations: ```text $ mmgen-txcreate --help +$ mmgen-txcreate --coin=eth --help $ mmgen-addrgen --verbose 1-10 $ mmgen-walletgen $ mmgen-walletgen --quiet --seed-len 128 ``` +Note that the help screens are contextual, so the first two invocations will +produce different output. + #### Configuration file -Just like Bitcoin Core, MMGen Wallet has its own data directory and -configuration file. The data directory is `.mmgen` in the user’s home directory -and the config file is `mmgen.cfg`. The config file contains global settings -which you may wish to edit at some point to customize your installation. These -settings include the maximum transaction fee; the user name, password and -hostname used for communicating with your Bitcoin or altcoin daemon; and a -number of others. +Just like Bitcoin Core, MMGen Wallet has its own data directory, `.mmgen` in the +user’s home directory, and configuration file, `mmgen.cfg`. The config file +contains global settings which you may wish to edit at some point to customize +your installation. These settings include the maximum transaction fee; the user +name, password and hostname used for communicating with your Bitcoin or altcoin +daemon; and many others. For details, consult the configuration file itself, +which is extensively commented. #### Bob and Alice regtest mode If you just want to quickly test using MMGen Wallet, it’s possible to perform all wallet generation, wallet format conversion, address and key generation, and -address import operations on an offline computer with no blockchain and no -bitcoin balance. +address import operations on an offline computer with no blockchain and no coin +balance. -If you want to practice creating, signing and sending transactions with real -bitcoins, however, you’ll need a fully synced blockchain and some coins to play -with. This involves an expenditure of both time and money. +However, if you want to practice creating, signing and sending transactions with +real assets, you’ll need a fully synced blockchain and some coins to play with. +This involves an expenditure of both time and money. Fortunately, there’s an alternative: MMGen Wallet’s **regtest mode** creates a virtual network of two users, Bob and Alice, who transact with each other on a @@ -158,16 +162,16 @@ Since the wallet is a small, humanly readable ASCII file, it can easily be printed out on paper. Another highly recommended way to back up your wallet is to generate a mnemonic -seed phrase or seed file [as described below](#a_ms) and write it down or -memorize it. If you have an average or better memory, you’ll find memorizing -your seed phrase to be surprisingly easy. And the peace of mind that comes with -knowing that your coins are recoverable **even if you lose all your physical -backups** can’t be overestimated. +seed phrase or seed file [as described below](#a_ms) and record or memorize it. +If you have an average or better memory, you’ll find memorizing your seed phrase +to be surprisingly easy. And the peace of mind that comes with knowing that your +coins are recoverable **even if you lose all your physical backups** can’t be +overestimated. ### Transacting -*The following transacting information is applicable to BTC, BCH, LTC, ETH and -ETC. For transacting with Monero, consult [Altcoin-and-Forkcoin-Support][ax] +*The following transacting information is applicable to BTC, BCH, LTC, ETH, ETC +and RUNE. For transacting with Monero, consult [Altcoin-and-Forkcoin-Support][x] and the [`mmgen-xmrwallet`][mx] help screen.* #### Generate addresses (offline computer) @@ -249,77 +253,51 @@ $ cat '89ABCDEF-B[1-10].addrs' Note that for non-legacy address types the code letter is included in the filename. -To fund your wallet, first import the addresses into your tracking wallet and -then send some coins to any of them. If you run out of addresses, generate -more. To generate a hundred addresses you’d specify an address range of -`1-100`. - -Let’s say you’ve decided to spend some BTC into the first four addresses above. -Begin by importing these addresses into the tracking wallet on your online -machine so their balances will be visible. For convenience of reference, -provide the addresses with labels. We’ll use the labels ‘Donations’, ‘Storage -1’, ‘Storage 2’ and ‘Storage 3’. - -Make a copy of the address file - -```text -$ cp '89ABCDEF-S[1-10].addrs' my.addrs -``` - -and edit it using the text editor of your choice, - -```text -$ nano my.addrs -``` - -adding labels to the addresses you’ve chosen to spend to: - -```text -# My first MMGen addresses -89ABCDEF SEGWIT { - 1 36bNmyYISiptuvJG3X7MPwiiS4HYvD7ksE Donations - 2 3AmkUxrfy5dMrfmeYwTxLxfIswUCcpeysc Storage 1 - 3 3HgYCsfqYzIg7LVVfDTp7gYJocJEiDAy6N Storage 2 - 4 34Tu3z1tiexXDonNsFIkvzqutE5E3pTK8s Storage 3 - 5 3PeI55vtp2bX2uKDkAAR2c6ekHNYe4Hcq7 - 6 3FEqfEsSILwXPfMvVvVuUovzTaaST62Mnf - 7 3LTTzuhMqPLwQ4IGCwwugny6ZMtUQJSJ1 - 8 3F9495H8EJLb54wirgZkVgI47SP7M2RQWv - 9 3JbrCyt7BdxRE9GX1N7GiEct8UnIjPmpYd - 10 3H7vVTk4ejUbQXw45I6g5qvPBSe9bsjDqh -} -``` - -Any line beginning with `#` is a comment. Comments may be placed at the ends -of lines as well. - -Save the file, copy it onto a USB stick and transfer it to your online computer. - #### Import addresses (online computer) +To fund your wallet, you must import the addresses you’ve generated into your +tracking wallet. + Start the coin daemon with the required options (see the [Install-Bitcoind][08] wiki page for more details on invoking the daemon for your coin and platform). Upon startup, older daemons used to automatically generate a new default `wallet.dat`, which MMGen Wallet used as its tracking wallet. With newer -daemons (e.g. Core 0.21.0 and above), the tracking wallet will be a directory -named `mmgen-tracking-wallet`, located by default under the `wallets` -subdirectory in your daemon’s datadir. +daemons (e.g. Core 0.21.0 and above), the tracking wallet is generated when +first invoking `mmgen-addrimport` and will be a directory named +`mmgen-tracking-wallet` located by default under the `wallets` subdirectory +in your coin daemon’s datadir. -Import the ten addresses into your new tracking wallet with the command: +Create your tracking wallet and import the ten addresses generated above into +it as follows: ```text -$ mmgen-addrimport --batch my.addrs +$ mmgen-addrimport my.addrs ``` -These addresses will now be tracked: any BTC transferred to them will show up in -your listing of address balances. Balances can be viewed using `mmgen-tool -listaddresses` (the `showempty` option requests addresses with empty balances -to be displayed too). +These addresses are now tracked: any BTC transferred to them will show up in +your listing of address balances, and balances will be updated automatically +as your node syncs with the blockchain. Balances can be viewed using +`mmgen-tool listaddresses`: ```text -$ mmgen-tool listaddresses showempty=1 -MMGenID ADDRESS COMMENT BALANCE +$ mmgen-tool listaddresses +MMGenID Address Comment Balance +89ABCDEF:S:1 36bNmyYISiptuvJG3X7MPwiiS4HYvD7ksE 0 +89ABCDEF:S:2 3AmkUxrfy5dMrfmeYwTxLxfIswUCcpeysc 0 +89ABCDEF:S:3 3HgYCsfqYzIg7LVVfDTp7gYJocJEiDAy6N 0 +89ABCDEF:S:4 34Tu3z1tiexXDonNsFIkvzqutE5E3pTK8s 0 +89ABCDEF:S:5 3PeI55vtp2bX2uKDkAAR2c6ekHNYe4Hcq7 0 +... +TOTAL: 0 BTC +``` + +Invoke `mmgen-tool listaddresses interactive=1` and add some comments to your +newly-imported addresses using the ‘l’ key. Depending on your comments, your +output will now look something like this: + +```text +MMGenID Address Comment Balance 89ABCDEF:S:1 36bNmyYISiptuvJG3X7MPwiiS4HYvD7ksE Donations 0 89ABCDEF:S:2 3AmkUxrfy5dMrfmeYwTxLxfIswUCcpeysc Storage 1 0 89ABCDEF:S:3 3HgYCsfqYzIg7LVVfDTp7gYJocJEiDAy6N Storage 2 0 @@ -330,10 +308,11 @@ TOTAL: 0 BTC ``` *While not covered in this introduction, note that it’s also possible to [import -external coin addresses into your tracking wallet][01]. This allows MMGen +non-MMGen coin addresses into your tracking wallet][01]. This allows MMGen Wallet to track and spend funds from another wallet without having to transfer -the coins through the network. To do this, you must save the keys corresponding -to the given addresses in a separate file for use during transaction signing.* +the coins via the blockchain. To do this, you must save the private keys +corresponding to the given addresses in a separate file for use during +transaction signing.* Note that each address has a unique ID (the ‘MMGen ID’) consisting of a Seed ID, address type code letter, and index. Addresses of different types may be @@ -342,29 +321,27 @@ sub-seeds you needn’t worry about key reuse. For example, the addresses `89ABCDEF:S:1` and `89ABCDEF:B:1` are cryptographically unrelated: no one but the wallet’s owner can see that they were generated from the same seed. -Now that your addresses are being tracked, you may go ahead and send some BTC to -them over the Bitcoin network. If you send 0.1, 0.2, 0.3 and 0.4 BTC -respectively, your address listing will look like this after the transactions -have confirmed: +Now that your addresses are being tracked, you may send some BTC to them over +the Bitcoin network. If you send 0.1, 0.2, 0.3 and 0.4 BTC respectively, your +address listing will look like this after the transactions have confirmed: ```text $ mmgen-tool listaddresses -MMGenID COMMENT BALANCE -89ABCDEF:S:1 Donations 0.1 -89ABCDEF:S:2 Storage 1 0.2 -89ABCDEF:S:3 Storage 2 0.3 -89ABCDEF:S:4 Storage 3 0.4 +MMGenID Address Comment Balance +89ABCDEF:S:1 36bNmyYISiptuvJG3X7MPwiiS4HYvD7ksE Donations 0.1 +89ABCDEF:S:2 3AmkUxrfy5dMrfmeYwTxLxfIswUCcpeysc Storage 1 0.2 +89ABCDEF:S:3 3HgYCsfqYzIg7LVVfDTp7gYJocJEiDAy6N Storage 2 0.3 +89ABCDEF:S:4 34Tu3z1tiexXDonNsFIkvzqutE5E3pTK8s Storage 3 0.4 TOTAL: 1 BTC ``` #### Create a transaction (online computer) -Now that you have some BTC under MMGen Wallets’s control, you’re ready to create -a transaction. Note that transactions are harmless until they’re signed and -broadcast to the network, so feel free to experiment and create transactions +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 +and broadcast to the network, so feel free to experiment and create transactions with different combinations of inputs and outputs. Of course, if you’re using -testnet or regtest mode, then you risk nothing even when broadcasting -transactions. +testnet or regtest mode, you risk nothing even when broadcasting transactions. To send 0.1 BTC to the a third-party address `3AmkUxrfy5dMrfmeYwTxLxfIswUCcpeysc`, for example, and send the change back to @@ -426,8 +403,9 @@ amount of 0.1 BTC, plus the transaction fee (for more on fees, see ‘Transactio Fees’ under ‘Advanced Topics’ below). Output #2 is worth 0.2 BTC, which is sufficient, so we’ll choose that and hit ENTER. When prompted for a transaction fee, we’ll choose 0.0001 BTC (note that integer fees followed by -the letter ‘s’ for “satoshis per byte” are also permissible). After a couple -more prompts and confirmations, your transaction will be saved: +the letter ‘s’ for “satoshis per byte” are also accepted, and this is actually +the preferred way to indicate fees). After a couple more prompts and +confirmations, your transaction will be saved: ```text Transaction written to file 'FEDCBA[0.1].rawtx' @@ -475,17 +453,17 @@ Once the transaction is broadcast to the network and confirmed, your address listing should look something like this: ```text -$ mmgen-tool listaddresses minconf=1 -MMGenID COMMENT BALANCE -89ABCDEF:S:1 Donations 0.1 -89ABCDEF:S:3 Storage 2 0.3 -89ABCDEF:S:4 Storage 3 0.4 -89ABCDEF:S:5 0.0999 +$ mmgen-tool listaddresses +MMGenID Address Comment Balance +89ABCDEF:S:1 36bNmyYISiptuvJG3X7MPwiiS4HYvD7ksE Donations 0.1 +89ABCDEF:S:3 3HgYCsfqYzIg7LVVfDTp7gYJocJEiDAy6N Storage 2 0.3 +89ABCDEF:S:4 34Tu3z1tiexXDonNsFIkvzqutE5E3pTK8s Storage 3 0.4 +89ABCDEF:S:5 3PeI55vtp2bX2uKDkAAR2c6ekHNYe4Hcq7 0.0999 TOTAL: 0.8999 BTC ``` -Alternatively, you may use `mmgen-tool twview` or `mmgen-txcreate -i` for more -detailed and configurable output: +Alternatively, you may use view your addresses with `mmgen-tool twview`, which +lists only unspent outputs and provides some additional information: ```text $ mmgen-tool twview @@ -1149,7 +1127,7 @@ $ python3 -m pip install user --upgrade dist/*.whl [07]: commands/command-help-autosign.md [08]: Install-Bitcoind.md [09]: Altcoin-and-Forkcoin-Support.md -[ax]: Altcoin-and-Forkcoin-Support.md#a_xmr +[x]: Altcoin-and-Forkcoin-Support.md#a_xmr [cp]: ../../../../commits/master [mx]: commands/command-help-xmrwallet.md [li]: Install-MMGen-Wallet-on-Linux-or-macOS.md diff --git a/doc/wiki/Install-MMGen-Wallet-on-Linux-or-macOS.md b/doc/wiki/Install-MMGen-Wallet-on-Linux-or-macOS.md index 6b3d0d77..4c7c669d 100644 --- a/doc/wiki/Install-MMGen-Wallet-on-Linux-or-macOS.md +++ b/doc/wiki/Install-MMGen-Wallet-on-Linux-or-macOS.md @@ -11,7 +11,7 @@ For computers with no Internet connection, see **Note for offline machines** bel #### Debian/Ubuntu: ```text -$ sudo apt-get install curl git gcc libtool make autoconf libgmp-dev libssl-dev libpcre2-dev libmpfr-dev libmpc-dev python3-dev python3-pip libsecp256k1-dev +$ sudo apt-get install curl git gcc libtool make autoconf e2fsprogs libgmp-dev libssl-dev libpcre2-dev libmpfr-dev libmpc-dev python3-dev python3-pip libsecp256k1-dev ``` #### Arch Linux: @@ -26,6 +26,8 @@ $ sudo pacman -S curl git gcc libtool make autoconf automake autogen pcre python $ brew install python bash autoconf coreutils gcc libmpc libtool readline secp256k1 ``` +On RISC-V machines, you may additionally need to install the `libffi-dev` package and [Rust][rs] + You may wish to use a [virtual environment][vv] to keep your MMGen Wallet installation isolated from the rest of your Python packages. @@ -110,3 +112,4 @@ Congratulations, your installation is now complete! You can now proceed to [af]: Altcoin-and-Forkcoin-Support.md [ec]: https://github.com/bitcoin-core/secp256k1.git [vv]: https://docs.python.org/3/library/venv.html +[rs]: https://rustup.rs diff --git a/doc/wiki/Install-MMGen-Wallet-on-Microsoft-Windows.md b/doc/wiki/Install-MMGen-Wallet-on-Microsoft-Windows.md index 9c2e6459..2fc6e2d6 100644 --- a/doc/wiki/Install-MMGen-Wallet-on-Microsoft-Windows.md +++ b/doc/wiki/Install-MMGen-Wallet-on-Microsoft-Windows.md @@ -11,15 +11,13 @@ * [Offline install](#a_md1) * [4. Set up your shell environment](#a_ev) * [5. Choose your Python environment](#a_pev) -* [6. Install the Python ECDSA library (offline install only)](#a_ec) -* [7. Install the standalone scrypt package (required for strong password hashing)](#a_sc) -* [8. Clone and copy the secp256k1 library (offline install only)](#a_se) -* [9. Install MMGen Wallet](#a_mm) +* [6. Install required Python packages](#a_pp) +* [7. Clone and copy the secp256k1 library (offline install only)](#a_se) +* [8. Install MMGen Wallet](#a_mm) * [Stable version](#a_mms) * [Development version](#a_mmd) -* [10. Install Python Ethereum dependencies (if applicable)](#a_pe) -* [11. Install and launch your coin daemons](#a_cd) -* [12. You’re done!](#a_do) +* [9. Install and launch your coin daemons](#a_cd) +* [10. You’re done!](#a_do) #### [Keeping your installation up to date](#a_u) * [Upgrading MSYS2](#a_us) @@ -106,14 +104,12 @@ $ ls 'C:\\msys64\etc' # the path as seen by Windows > >> >> ->> ->> ->> ->> +>> +>> +>> +>> >> >> ->> ->> >> >> >> @@ -195,7 +191,8 @@ pacman -S tar git vim autoconf automake-wrapper autogen libtool cygrunsrv \ 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-pyreadline3 + mingw-w64-ucrt-x86_64-python-pyreadline3 \ + mingw-w64-ucrt-x86_64-python-lxml ``` ### 4. Set up your shell environment @@ -236,46 +233,25 @@ If you choose not to use a virtual environment, then you should add `--user` to the command line every time you run `pip install` as directed below. This will prevent pip from installing packages in the system directory. -### 6. Install the Python ECDSA library (offline install only) +### 6. Install required Python packages 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 + ``` -Copy the downloaded file to your offline machine and install: +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* ``` -### 7. Install the standalone scrypt package (required for strong password hashing) - -Due to a faulty implementation of the `scrypt` function included in Python’s -`hashlib`, the standalone `scrypt` module is required for stronger-than-default -password hashing (i.e. hash presets greater than `3`). Installing the package is -therefore highly advisable. - -On your online machine, clone the Py-Scrypt repository from Github: - -```text -$ git clone https://github.com/holgern/py-scrypt.git -``` - -Offline install: - -> Copy the cloned repo to your offline machine. - -Build and install: - -```text -$ cd py-scrypt -$ python3 -m build --no-isolation -$ python3 -m pip install dist/*.whl -``` - -### 8. Clone and copy the secp256k1 library (offline install only) +### 7. Clone and copy the secp256k1 library (offline install only) On your online machine, clone the secp256k1 repository from Github: @@ -292,7 +268,7 @@ $ cp -a /path/to/secp256k1/repo/secp256k1 ~/.cache/mmgen $ ls ~/.cache/mmgen/secp256k1/autogen.sh # check that files were correctly copied ``` -### 9. Install MMGen Wallet +### 8. Install MMGen Wallet Now you’re ready to install MMGen Wallet itself. @@ -350,31 +326,7 @@ occasion. Note that MMGen Wallet has a test suite. Refer to the [Test Suite][ts] wiki page for details. -### 10. Install Python Ethereum dependencies (if applicable) - -If you’ll be using MMGen Wallet with Ethereum, then you must install a few -dependencies. From the MMGen repository root, type the following: - -Online install: - -> ```text -> $ python3 -m pip install --no-deps -r eth-requirements.txt -> ``` - -Offline install: - -> ```text -> $ python3 -m pip download --no-deps -r eth-requirements.txt -> ``` -> -> Transfer the downloaded files to your offline machine, `cd` to the directory -> containing the files and install them: -> -> ```text -> $ python3 -m pip install --no-deps *.whl -> ``` - -### 11. Install and launch your coin daemons +### 9. Install and launch your coin daemons At this point your installation will be able to generate wallets, along with keys and addresses for all supported coins. However, if you intend to do any @@ -399,7 +351,7 @@ Please note that Ethereum daemons perform rather poorly under Windows due to threading limitations. Unless you have very fast hardware, transacting and syncing the blockchain will be painfully slow. -### 12. You’re done! +### 10. You’re done! Congratulations, your installation is now complete, and you can proceed to [**Getting Started with MMGen Wallet**][gs]. Note that all features supported diff --git a/doc/wiki/Test-Suite.md b/doc/wiki/Test-Suite.md index 7b526ea3..c9af48a8 100644 --- a/doc/wiki/Test-Suite.md +++ b/doc/wiki/Test-Suite.md @@ -38,6 +38,8 @@ Every time the container is started, you may need to create the files afresh: ### BTC-only testing +Install the Bitcoin Core daemon [(source)][sd] [(binaries)][bd]. + Install Pycoin: ```text @@ -49,7 +51,8 @@ $ 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 without installing: +CD to the MMGen Wallet repository root and build the secp256k1 extension module +in place: ```text $ cd path/to/mmgen/repo @@ -62,7 +65,8 @@ Run the following if upgrading from a previous version of MMGen: $ test/cmdtest.py clean ``` -Run the test suite in fast mode, skipping altcoin tests: +Run the test suite in fast mode, skipping altcoin tests (fast mode skips +non-essential tests and uses fewer rounds for repeated tests): ```text $ test/test-release.sh -FA @@ -75,9 +79,10 @@ Complete the BTC-only installation steps above, without running the test. Make sure the [Bitcoin Cash Node][cnd], [Litecoin][ld] and [Monero][md] daemons are installed on your system. -Install [Parity, Geth and the ETH Python requirements][oe], optionally the +Install [Reth, Geth, Parity and the ETH Python requirements][rg], optionally the [Solidity compiler][sc], and [the XMR Python requirements][xr] as described on -the Altcoin-and-Forkcoin-Support page. +the Altcoin-and-Forkcoin-Support page. For Ethereum testing in fast mode, Reth +may be omitted. In addition, you must install the following helper programs and libraries (MSYS2 users can omit Zcash-Mini and leave out `sudo` in commands): @@ -112,32 +117,54 @@ may also be started and stopped manually at the DOS or MSYS2 prompt as follows # net stop msys2_sshd ``` -#### Monero-Python +#### Install Monero-Python ```text $ python3 -m pip install pycryptodome ipaddress varint $ python3 -m pip install --no-deps monero ``` -#### Eth-Keys +#### Install Eth-Keys (non-MSYS2 systems) + +This pulls in a lot of dependencies. If you prefer, you may install the +openethereum ‘ethkey’ utility instead, if it’s available on your platform. ```text $ python3 -m pip install eth-keys ``` -#### Vanitygen PlusPlus (forked from Vanitygen Plus) +#### Install OpenEthereum Ethkey (alternative to eth-keys) + +Install this on MSYS2 or if ‘eth-keys’ is unavailable on your platform. Do not +confuse this with the Reth ‘ethkey’ utility, which is entirely different. + +On Arch Linux and ArchLinuxArm systems, ‘ethkey’ is installed as follows: + +```text +$ pacman -S openethereum +``` + +For 64-bit Windows (MSYS2), Linux and macOS systems, ‘ethkey’ can be found in +the zip archives distributed with [this release][oz]. + +#### Install Vanitygen PlusPlus (a fork of Vanitygen Plus) ```text $ git clone https://github.com/10gic/vanitygen-plusplus $ cd vanitygen-plusplus $ git checkout -b vanitygen-plus e7858035d092 # rewind to fork commit +``` + +Edit the Makefile, changing `-lpcre` to `-lpcre2-posix` on the second line. + +```text $ make keyconv # ‘mingw32-make.exe keyconv’ for MSYS2 $ sudo install --strip keyconv /usr/local/bin # Linux, macOS $ install --strip keyconv.exe /usr/local/bin # MSYS2 $ cd .. ``` -#### Zcash-Mini +#### Install Zcash-Mini ```text $ sudo apt-get install golang # skip this if Go is already installed @@ -163,7 +190,7 @@ If you experience such a failure, just restart the test. ### Run the tests -Now you can run the test suite for all coins: +Now you may run the test suite in fast mode for all coins: ```text $ test/test-release.sh -F @@ -205,7 +232,7 @@ display the commands’ output on the screen as they’re being run. [ad]: https://download.bitcoinabc.org/ [cnd]: https://bitcoincashnode.org/ [ld]: https://download.litecoin.org/litecoin-0.17.1/ -[oe]: Altcoin-and-Forkcoin-Support.md#a_ed +[rg]: Altcoin-and-Forkcoin-Support.md#a_geth [sc]: Altcoin-and-Forkcoin-Support.md#a_dt [xr]: Altcoin-and-Forkcoin-Support.md#a_xmr_req [oz]: https://github.com/openethereum/openethereum/releases/tag/v3.1.0 diff --git a/doc/wiki/cmds/command-help-addrgen.md b/doc/wiki/cmds/command-help-addrgen.md index b0a69a55..2a0bc333 100644 --- a/doc/wiki/cmds/command-help-addrgen.md +++ b/doc/wiki/cmds/command-help-addrgen.md @@ -121,5 +121,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN-WALLET 15.1.dev44 June 2025 MMGEN-ADDRGEN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-ADDRGEN(1) ``` diff --git a/doc/wiki/cmds/command-help-addrimport.md b/doc/wiki/cmds/command-help-addrimport.md index 47e47c7e..14efebdf 100644 --- a/doc/wiki/cmds/command-help-addrimport.md +++ b/doc/wiki/cmds/command-help-addrimport.md @@ -31,5 +31,5 @@ It’s recommended to use ‘--rpc-backend=aio’ with ‘--rescan’. - MMGEN v15.1.dev18 March 2025 MMGEN-ADDRIMPORT(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-ADDRIMPORT(1) ``` diff --git a/doc/wiki/cmds/command-help-autosign.md b/doc/wiki/cmds/command-help-autosign.md index 72d70c7f..12c7f77e 100644 --- a/doc/wiki/cmds/command-help-autosign.md +++ b/doc/wiki/cmds/command-help-autosign.md @@ -6,6 +6,12 @@ --longhelp Print help message for long (global) options -c, --coins c Coins to sign for (comma-separated list) -I, --no-insert-check Don’t check for device insertion + -k, --keys-from-file F Use wif keys listed in file ‘F’ for signing non-MMGen + inputs. The file may be MMGen encrypted if desired. The + ‘setup’ operation creates a temporary encrypted copy of + the file in volatile memory for use during the signing + session, thus permitting the deletion of the original + file for increased security. -l, --seed-len N Specify wallet seed length of ‘N’ bits (for setup only) -L, --led Use status LED to signal standby, busy and error -m, --mountpoint M Specify an alternate mountpoint 'M' @@ -127,5 +133,5 @@ Always remember to power off the signing machine when your signing session is over. - MMGEN v15.1.dev18 March 2025 MMGEN-AUTOSIGN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-AUTOSIGN(1) ``` diff --git a/doc/wiki/cmds/command-help-cli.md b/doc/wiki/cmds/command-help-cli.md index d8c953f8..de760194 100644 --- a/doc/wiki/cmds/command-help-cli.md +++ b/doc/wiki/cmds/command-help-cli.md @@ -31,5 +31,5 @@ '[{"txid":"832f5aa9af55dc453314e26869c8f96db1f2a9acac9f23ae18d396903971e0c6","vout":0}]' \ '[{"1111111111111111111114oLvT2":0.001}]' - MMGEN v15.1.dev19 March 2025 MMGEN-CLI(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-CLI(1) ``` diff --git a/doc/wiki/cmds/command-help-keygen.md b/doc/wiki/cmds/command-help-keygen.md index 00d079c1..eb3781e3 100644 --- a/doc/wiki/cmds/command-help-keygen.md +++ b/doc/wiki/cmds/command-help-keygen.md @@ -126,5 +126,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN-WALLET 15.1.dev44 June 2025 MMGEN-KEYGEN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-KEYGEN(1) ``` diff --git a/doc/wiki/cmds/command-help-msg.md b/doc/wiki/cmds/command-help-msg.md index 6d43a4df..6c613056 100644 --- a/doc/wiki/cmds/command-help-msg.md +++ b/doc/wiki/cmds/command-help-msg.md @@ -107,5 +107,5 @@ Verify and display the exported JSON signature data: $ mmgen-msg verify signatures.json - MMGEN-WALLET 15.1.dev44 June 2025 MMGEN-MSG(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-MSG(1) ``` diff --git a/doc/wiki/cmds/command-help-passchg.md b/doc/wiki/cmds/command-help-passchg.md index 616d1282..c0641a9f 100644 --- a/doc/wiki/cmds/command-help-passchg.md +++ b/doc/wiki/cmds/command-help-passchg.md @@ -53,5 +53,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-PASSCHG(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-PASSCHG(1) ``` diff --git a/doc/wiki/cmds/command-help-passgen.md b/doc/wiki/cmds/command-help-passgen.md index e76946ab..f86358c2 100644 --- a/doc/wiki/cmds/command-help-passgen.md +++ b/doc/wiki/cmds/command-help-passgen.md @@ -101,5 +101,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-PASSGEN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-PASSGEN(1) ``` diff --git a/doc/wiki/cmds/command-help-regtest.md b/doc/wiki/cmds/command-help-regtest.md index 701b4eb5..c2ea7773 100644 --- a/doc/wiki/cmds/command-help-regtest.md +++ b/doc/wiki/cmds/command-help-regtest.md @@ -25,5 +25,5 @@ wallet_cli - execute a wallet RPC call with supplied arguments (wallet is first argument) - MMGEN v15.1.dev18 March 2025 MMGEN-REGTEST(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-REGTEST(1) ``` diff --git a/doc/wiki/cmds/command-help-seedjoin.md b/doc/wiki/cmds/command-help-seedjoin.md index b0d6929b..df438a05 100644 --- a/doc/wiki/cmds/command-help-seedjoin.md +++ b/doc/wiki/cmds/command-help-seedjoin.md @@ -62,5 +62,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-SEEDJOIN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-SEEDJOIN(1) ``` diff --git a/doc/wiki/cmds/command-help-seedsplit.md b/doc/wiki/cmds/command-help-seedsplit.md index 04d55750..ac17a803 100644 --- a/doc/wiki/cmds/command-help-seedsplit.md +++ b/doc/wiki/cmds/command-help-seedsplit.md @@ -144,5 +144,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-SEEDSPLIT(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-SEEDSPLIT(1) ``` diff --git a/doc/wiki/cmds/command-help-subwalletgen.md b/doc/wiki/cmds/command-help-subwalletgen.md index 4a9c9cfc..91cff5bf 100644 --- a/doc/wiki/cmds/command-help-subwalletgen.md +++ b/doc/wiki/cmds/command-help-subwalletgen.md @@ -97,5 +97,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-SUBWALLETGEN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-SUBWALLETGEN(1) ``` diff --git a/doc/wiki/cmds/command-help-swaptxcreate.md b/doc/wiki/cmds/command-help-swaptxcreate.md index 33dea591..6f89ea19 100644 --- a/doc/wiki/cmds/command-help-swaptxcreate.md +++ b/doc/wiki/cmds/command-help-swaptxcreate.md @@ -254,5 +254,5 @@ $ https_proxy=http://gw1:4444 mmgen-swaptxcreate --proxy=env RUNE 1000 BTC - MMGEN-WALLET 15.1.dev47 June 2025 MMGEN-SWAPTXCREATE(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-SWAPTXCREATE(1) ``` diff --git a/doc/wiki/cmds/command-help-swaptxdo.md b/doc/wiki/cmds/command-help-swaptxdo.md index 06ae087b..daa79b68 100644 --- a/doc/wiki/cmds/command-help-swaptxdo.md +++ b/doc/wiki/cmds/command-help-swaptxdo.md @@ -316,5 +316,5 @@ $ https_proxy=http://gw1:4444 mmgen-swaptxdo --proxy=env RUNE 1000 BTC - MMGEN-WALLET 15.1.dev47 June 2025 MMGEN-SWAPTXDO(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-SWAPTXDO(1) ``` diff --git a/doc/wiki/cmds/command-help-tool(detail).md b/doc/wiki/cmds/command-help-tool(detail).md index 556b6e55..fcfa9e04 100644 --- a/doc/wiki/cmds/command-help-tool(detail).md +++ b/doc/wiki/cmds/command-help-tool(detail).md @@ -499,10 +499,22 @@ Required ARG (type shown in square brackets): pubkeyhex [str] (use '-' to read from STDIN) ``` +### `mmgen-tool privhex2pair` + +```text +Generate a wifkey/address pair from the provided hexadecimal key + +USAGE: mmgen-tool [OPTS] privhex2pair ARG + +Required ARG (type shown in square brackets): + + privhex [str] (use '-' to read from STDIN) +``` + ### `mmgen-tool randpair` ```text -Generate a random private key/address pair +Generate a random wifkey/address pair USAGE: mmgen-tool [OPTS] randpair ``` @@ -1240,5 +1252,5 @@ Optional KEYWORD ARGS (type and default value shown in square brackets): ``` ```text -MMGEN v15.1.dev18 March 2025 MMGEN-TOOL(DETAIL)(1) +MMGEN-WALLET 16.0.0 September 2025 MMGEN-TOOL(DETAIL)(1) ``` diff --git a/doc/wiki/cmds/command-help-tool(usage).md b/doc/wiki/cmds/command-help-tool(usage).md index 5e2835b0..2bfc363e 100644 --- a/doc/wiki/cmds/command-help-tool(usage).md +++ b/doc/wiki/cmds/command-help-tool(usage).md @@ -61,6 +61,7 @@ GENERAL USAGE INFORMATION FOR MMGEN-TOOL COMMANDS pubhash2addr pubhashhex [str or STDIN] pubhex2addr pubkeyhex [str or STDIN] pubhex2redeem_script pubkeyhex [str or STDIN] + privhex2pair privhex [str or STDIN] randpair randwif redeem_script2addr redeem_script_hex [str or STDIN] @@ -187,5 +188,5 @@ EXAMPLES: Same as above, but supply input via STDIN: $ echo "deadbeefcafe" | mmgen-tool hexreverse - - MMGEN v15.1.dev18 March 2025 MMGEN-TOOL(USAGE)(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-TOOL(USAGE)(1) ``` diff --git a/doc/wiki/cmds/command-help-tool.md b/doc/wiki/cmds/command-help-tool.md index e35dac73..ab4b4a73 100644 --- a/doc/wiki/cmds/command-help-tool.md +++ b/doc/wiki/cmds/command-help-tool.md @@ -19,7 +19,9 @@ -t, --type t Specify address type (valid choices: 'legacy', 'compressed', 'segwit', 'bech32', 'zcash_z') -v, --verbose Produce more verbose output - -X, --cached-balances Use cached balances (Ethereum only) + -x, --proxy P Proxy HTTP connections via SOCKS5h proxy ‘P’ (host:port). + Use special value ‘env’ to honor *_PROXY environment + vars instead. -y, --yes Answer 'yes' to prompts, suppress non-essential output @@ -84,7 +86,9 @@ pubhex2addr - convert a hexadecimal pubkey to an address pubhex2redeem_script - convert a hexadecimal pubkey to a Segwit P2SH-P2WPKH redeem script - randpair - generate a random private key/address pair + privhex2pair - generate a wifkey/address pair from the provided + hexadecimal key + randpair - generate a random wifkey/address pair randwif - generate a random private key in WIF format redeem_script2addr - convert a Segwit P2SH-P2WPKH redeem script to an address @@ -198,5 +202,5 @@ Type ‘mmgen-tool help ’ for help on a particular command - MMGEN v15.1.dev18 March 2025 MMGEN-TOOL(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-TOOL(1) ``` diff --git a/doc/wiki/cmds/command-help-txbump.md b/doc/wiki/cmds/command-help-txbump.md index e5cb7890..11d4354e 100644 --- a/doc/wiki/cmds/command-help-txbump.md +++ b/doc/wiki/cmds/command-help-txbump.md @@ -120,5 +120,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN-WALLET 15.1.dev44 June 2025 MMGEN-TXBUMP(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-TXBUMP(1) ``` diff --git a/doc/wiki/cmds/command-help-txcreate.md b/doc/wiki/cmds/command-help-txcreate.md index 3dcbec8f..8eeeff13 100644 --- a/doc/wiki/cmds/command-help-txcreate.md +++ b/doc/wiki/cmds/command-help-txcreate.md @@ -124,5 +124,5 @@ $ mmgen-txcreate B - MMGEN-WALLET 15.1.dev44 June 2025 MMGEN-TXCREATE(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-TXCREATE(1) ``` diff --git a/doc/wiki/cmds/command-help-txdo.md b/doc/wiki/cmds/command-help-txdo.md index 69ce4c0b..5902287c 100644 --- a/doc/wiki/cmds/command-help-txdo.md +++ b/doc/wiki/cmds/command-help-txdo.md @@ -190,5 +190,5 @@ $ mmgen-txdo B - MMGEN-WALLET 15.1.dev44 June 2025 MMGEN-TXDO(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-TXDO(1) ``` diff --git a/doc/wiki/cmds/command-help-txsend.md b/doc/wiki/cmds/command-help-txsend.md index 4da9fafd..94fcd3d0 100644 --- a/doc/wiki/cmds/command-help-txsend.md +++ b/doc/wiki/cmds/command-help-txsend.md @@ -34,5 +34,5 @@ instead. -y, --yes Answer 'yes' to prompts, suppress non-essential output - MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-TXSEND(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-TXSEND(1) ``` diff --git a/doc/wiki/cmds/command-help-txsign.md b/doc/wiki/cmds/command-help-txsign.md index e35859eb..b6eb428f 100644 --- a/doc/wiki/cmds/command-help-txsign.md +++ b/doc/wiki/cmds/command-help-txsign.md @@ -5,8 +5,7 @@ -h, --help Print this help message --longhelp Print help message for long (global) options -a, --autosign Sign a transaction created for offline autosigning (see - ‘mmgen-autosign’). The removable device is mounted and - unmounted automatically + ‘mmgen-autosign’) -b, --brain-params l,p Use seed length 'l' and hash preset 'p' for brainwallet input -d, --outdir d Specify an alternate directory 'd' for output @@ -85,5 +84,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN-WALLET 15.1.dev47 June 2025 MMGEN-TXSIGN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-TXSIGN(1) ``` diff --git a/doc/wiki/cmds/command-help-walletchk.md b/doc/wiki/cmds/command-help-walletchk.md index a7073c7a..db08bd60 100644 --- a/doc/wiki/cmds/command-help-walletchk.md +++ b/doc/wiki/cmds/command-help-walletchk.md @@ -51,5 +51,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-WALLETCHK(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-WALLETCHK(1) ``` diff --git a/doc/wiki/cmds/command-help-walletconv.md b/doc/wiki/cmds/command-help-walletconv.md index 00493bf0..086a36d5 100644 --- a/doc/wiki/cmds/command-help-walletconv.md +++ b/doc/wiki/cmds/command-help-walletconv.md @@ -62,5 +62,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-WALLETCONV(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-WALLETCONV(1) ``` diff --git a/doc/wiki/cmds/command-help-walletgen.md b/doc/wiki/cmds/command-help-walletgen.md index 0be74e72..20041219 100644 --- a/doc/wiki/cmds/command-help-walletgen.md +++ b/doc/wiki/cmds/command-help-walletgen.md @@ -54,5 +54,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-WALLETGEN(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-WALLETGEN(1) ``` diff --git a/doc/wiki/cmds/command-help-xmrwallet.md b/doc/wiki/cmds/command-help-xmrwallet.md index 0f8f8ecb..0f767c35 100644 --- a/doc/wiki/cmds/command-help-xmrwallet.md +++ b/doc/wiki/cmds/command-help-xmrwallet.md @@ -499,5 +499,5 @@ to delete your old hot wallets, make sure to do so securely using ‘shred’, ‘wipe’ or some other secure deletion utility. - MMGEN v15.1.dev18 March 2025 MMGEN-XMRWALLET(1) + MMGEN-WALLET 16.0.0 September 2025 MMGEN-XMRWALLET(1) ``` diff --git a/mmgen/data/version b/mmgen/data/version index e8fe8c66..9ccf7c26 100644 --- a/mmgen/data/version +++ b/mmgen/data/version @@ -1 +1 @@ -15.1.dev55 +15.1.dev56