From 6f1e645e07578c730d5b36285af5ca3b8dcb7acc Mon Sep 17 00:00:00 2001 From: Marnix <93143998+MarnixCroes@users.noreply.github.com> Date: Mon, 23 Sep 2024 14:09:24 +0200 Subject: [PATCH] coinjoin: update fees remove coord fee --- docs/FAQ/FAQ-UseWasabi.md | 8 ++++++-- docs/glossary/Glossary-PrivacyWasabi.md | 5 ----- docs/using-wasabi/CoinJoin.md | 17 +++++++++++------ docs/using-wasabi/StartupParameters.md | 1 - 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/docs/FAQ/FAQ-UseWasabi.md b/docs/FAQ/FAQ-UseWasabi.md index d660b45fb8..a38a326c71 100644 --- a/docs/FAQ/FAQ-UseWasabi.md +++ b/docs/FAQ/FAQ-UseWasabi.md @@ -756,9 +756,13 @@ The default maximum is a 43000 BTC UTXO. ### What are the fees for the coinjoin? -The coinjoin coordinator sets its own fee policy for the coinjoin service provided. +As of Wasabi version [2.2.0.0](https://github.com/WalletWasabi/WalletWasabi/releases/tag/v2.2.0.0), the Wasabi client will only participate in +coinjoin rounds where it only pays for the mining fees. -This includes things like the mining fee, the coordination fee, no coordination fee for remixes and/or no coordination fee for UTXO amounts below a threshold etc. +Previous versions also included the coordination fee concept, where the coordinator could charge a fee for providing the service. +This has now been removed, so it will not participate in coinjoin rounds that charge a coordination fee. + +Read more [here](/using-wasabi/CoinJoin.md#fees). ### What is the anonymity set? diff --git a/docs/glossary/Glossary-PrivacyWasabi.md b/docs/glossary/Glossary-PrivacyWasabi.md index fef9c50600..7c1e957856 100644 --- a/docs/glossary/Glossary-PrivacyWasabi.md +++ b/docs/glossary/Glossary-PrivacyWasabi.md @@ -152,11 +152,6 @@ A label can be added to a coin, as a small note on who knows this coin belongs t Good labelling can help the user and the wallet to make better privacy conscious decisions later on when spending. Read more: [Why do I have to label my address](/FAQ/FAQ-UseWasabi.md#why-do-i-have-to-label-my-address) -### Max Coordination Fee Rate - -The maximum coordination fee rate the client is willing to accept to participate into a round. -The default value is 0. - ### Max Coinjoin Mining Fee Rate The maximum mining fee rate in sat/vByte the client is willing to pay to participate into a round. diff --git a/docs/using-wasabi/CoinJoin.md b/docs/using-wasabi/CoinJoin.md index 75e282aafd..44ad90486c 100644 --- a/docs/using-wasabi/CoinJoin.md +++ b/docs/using-wasabi/CoinJoin.md @@ -66,17 +66,22 @@ Notice that it is not yet possible to coinjoin from a hardware wallet, the keys ### Fees -The coinjoin coordinator sets its own fee policy for the coinjoin service provided. +As of Wasabi version [2.2.0.0](https://github.com/WalletWasabi/WalletWasabi/releases/tag/v2.2.0.0), the Wasabi client will only participate in coinjoin rounds where it only pays for the mining fees for the blockspace it uses, like any other bitcoin transaction. -Although the coordinator cannot steal money from the coinjoin participants, it could set a high mining fee rate and/or a high coordination fee. -This would make the participants pay a lot (unnecessarily). -To prevent against such behavior the Wasabi client can configure the maximum mining fee rate and the maximum coordination fee it is willing to pay per round. -If one of these is higher than the set values, the client will not participate in the coinjoin. +The coordinator sets the mining fee rate for the coinjoin transaction. -The default is a coordination fee rate of 0 and a maximum mining fee rate of 150 sat/vByte. +Users can set the maximum coinjoin mining fee rate they are willing to pay, as well as the minimum number of inputs the coinjoin transaction should have to participate. + +The default is a maximum mining fee rate of 150 sat/vByte and a minimum input count of 21. ![Coinjoin Configurations](/SettingsCoinjoinConfigs.png "Coinjoin Configurations") +It will not participate in rounds where the coordinator charges a coordination fee. + +> Previous versions also included the coordination fee concept, where the coordinator could charge a fee for providing the service. +This has now been removed, as it could be abused by malicious coordinators and/or would require some trust in the coordinator (like free remixes, as they are not enforced in the protocol). +The full explanation can be found [here](https://blog.wasabiwallet.io/killing-coordination-fee/). + ## WabiSabi protocol step-by-step WabiSabi protocol requires 5 steps to successfully create and broadcast a coinjoin transaction to the bitcoin network. diff --git a/docs/using-wasabi/StartupParameters.md b/docs/using-wasabi/StartupParameters.md index c20dcb092f..148f43870d 100644 --- a/docs/using-wasabi/StartupParameters.md +++ b/docs/using-wasabi/StartupParameters.md @@ -47,7 +47,6 @@ All configuration options available via the `Config.json` file are also availabl | "DustThreshold": "0.00005" | --dustthreshold=0.00005 | WASABI-DUSTTHRESHOLD=0.00005 | | "EnableGpu": true | --enablegpu=true | WASABI-ENABLEGPU=true | | "CoordinatorIdentifier": "CoinJoinCoordinatorIdentifier" | --coordinatoridentifier="coinjoincoordinatoridentifier" | WASABI-COORDINATORIDENTIFIER="coinjoincoordinatoridentifier" | -| "MaxCoordinationFeeRate": 0.0 | --maxcoordinationfeerate=0.0 | WASABI-MAXCOORDINATIONFEERATE=0.0 | | "MaxCoinJoinMiningFeeRate": 150.0 | --maxcoinjoinminingfeerate=150.0 | WASABI-MAXCOINJOINMININGFEERATE=150.0 | | "AbsoluteMinInputCount": 21 | --absolutemininputcount=21 | WASABI-ABSOLUTEMININPUTCOUNT=21 |