Comments (12)
With #11958 merged and released, we made a quick fix for this issue.
Should we proceed with one of the ideas?
If yes, which one?
If no, then I think we can close this issue.
from walletwasabi.
Should we proceed with one of the ideas?
from walletwasabi.
proposal: change how often the client attempts to register a banned coin from 2 days to 2 weeks.
from walletwasabi.
According to the title Local prison should have an invalidation mechanism this is done.
One more thing remained to mitigate the suboptimal coinselection. @adamPetho will create a separate issue for that.
from walletwasabi.
It is the same as the previous solution, except this process is done directly when registering inputs. This has the caveat of making a bad input selection if the coin is still banned.
I am catching up on this, I was abroad at this time - sorry for the confusion. Local invalidation is a good solution on the client side. What happens after that? The client tries to register and finds out there are banned coins, which leads to suboptimal coin selection.
There is a simple naive solution for that. If the client detects there is a banned coin in the selection - it will just stop registering and leave the round by letting it's inputs timeout. The implementation is already done for leaving a round without privacy loss. If it is too late to leave, then proceed with the round (rare case).
WDYT?
from walletwasabi.
For me this solution is also the best, as it's a proper fix and doesn't introduce much complexity. I like the idea of filters etc and it might be more convenient for integrations but I don't feel an absolute urge and need to have it. For Wasabi clients, waiting 2-4 days in case we ban incorrectly is not really a big deal as it doesn't really happen often.
It's a bit implementation detail, but something to consider:
I have 10 coins banned for 1 week. After some day, I try to register them again, all at once.
If we implement this solution, and don't continue with registering the coins, we will need 10 successive rounds that we unregister from to get rid of this incorrect information, as we will do 1 by 1.
So we have to choose between:
- Do 1 by 1 -> drawback: time, UX
- If we detect a banned coin in the selection, keep trying to register the selection to detect the other banned coins, then unregister all -> drawback: privacy
from walletwasabi.
I vote for the second option.
from walletwasabi.
If no one else wants to vote on this, then I will start to figure out how to implement the second option.
Altho, I'm not a fan of choosing a solution with privacy drawbacks over UX drawbacks...
from walletwasabi.
Well there is a complex solution. The client has a set of coins to register into the coinjoin. It starts registering one by one. If at least one coin is banned we set a flag.
If the flag is set we just register the coins but we never confirm, so coins will time out in input reg phase. Before the input reg ends we bail out and remember the banned coins.
The solution has no drawback except that it is complex...
from walletwasabi.
@adamPetho please change the parameter to 2 weeks.
from walletwasabi.
@adamPetho please change the parameter to 2 weeks.
Why?
Didn't this discussion happen last week?
from walletwasabi.
You know I could also change the title. Closing issue for the sake of closing issues is ridiculous, this is not fixed.
from walletwasabi.
Related Issues (20)
- [macOs] `CurrencyEntryBox`: `OnKeyDown` called an extra time for cmd + some letters HOT 1
- Fix CodeFactor HOT 1
- [UI] Focus problem with currency controls HOT 2
- [UI] Set fixed horizontal size for textbox controls HOT 2
- Segmentation Fault on Debian (bookworm) HOT 2
- Crash when closing app
- wtf mate HOT 1
- help keeps crashing as soon as i start the program so can you HOT 1
- "Fee rate was too high" but will it try again? HOT 3
- Error log "Uneconomical round skipped." not descriptive enough. HOT 1
- Report connection error with coordinator instead of "Awaiting coinjoin"
- Give details of why are some UTXO marked "Excluded from Coinjoin" HOT 2
- Show number of UTXO in Coin selection panel.
- update contributing.md
- update security.md
- Final fee in sats per bytes changes with fee avoidance option or ? but doesn't reflect in final confirmation panel. HOT 2
- UI Esthetic, White boxes around things since I think last 2-3 updates, Windows 11 HOT 3
- Pay coordination fee every time, low default coordination fee
- Shared DOS protection
- searchbar: exclude coins is missing
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from walletwasabi.