From 9c653e4138e09bd01ffa33e8d63c4b9501f92a1f Mon Sep 17 00:00:00 2001 From: openoms Date: Tue, 28 Apr 2020 17:23:09 +0100 Subject: [PATCH] joinmarket: describe coin control --- joinmarket/README.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/joinmarket/README.md b/joinmarket/README.md index 855a545..a8f7e96 100644 --- a/joinmarket/README.md +++ b/joinmarket/README.md @@ -66,6 +66,19 @@ Start by logging in with the `joinmarket` user: You can pay or withdraw to an external address with (or without) a CoinJoin using the `sendpayment.py`. +* Example: + `(jmvenv)$ python sendpayment.py -N5 -m1 WALLET.jmdat 100000000 mprGzBA9rQk82Ly41TsmpQGa8UPpZb2w8c` + + Sends 1BTC (100 million satoshis) from mixing depth 1 (the second!), mixing with five other parties. +* The most importan options (see all with --help): + ``` + -N MAKERCOUNT, --makercount=MAKERCOUNT + how many makers to coinjoin with, default random from 5 to 7 + + -m MIXDEPTH, --mixdepth=MIXDEPTH + mixing depth to spend from, default=0 (choose one from 0 to 4) + ``` + * Described in: https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/USAGE.md#try-out-a-coinjoin-using-sendpaymentpy * How to keep fees to minimum: @@ -77,6 +90,18 @@ You can pay or withdraw to an external address with (or without) a CoinJoin usin These settings might make it difficult to find counterparties to coinjoin with, see the [offerbook](https://joinmarket.me/ob) for the market and increase limit if offers are scarce or running into errors. * press CTRL + o, ENTER to save and CTRL + X to exit. +### Coin control with the `freeze` method + +* List all UTXO-s in the WALLET with: + `(jmvenv)$ python wallet-tool.py WALLET.jmdat` +* Pick a mixdepth (-m[0-4]) to transfer from: +* Run the `wallet-tool.py` with the `freeze` method: + `(jmvenv)$ python wallet-tool.py -m0 WALLET.jmdat freeze` +* The script will ask which UTXO to freeze or unfreeze - you can keep pressing the numbers to choose. +* Once done use `-1` to exit. +* Sweep the mixdepth with `-N 0` to send the NOT FROZEN UTXO-s without a coinjoin: + `(jmvenv)$ python sendpayment.py -N 0 WALLET.jmdat 0 DESTINATION_BITCOIN_ADDRESS` + ### Tumbler script The Tumbler does series of CoinJoins with various amounts and timing between them to break the link between different addresses.