Comments (3)
Yes, it is valuable. I spent quite some time of thinking about it and I succeeded to make some incremental improvement with much implementation overhead and useability degradation.
To enhance useability of a post-mix wallet
- the wallet MAY implement coin control feature,
- the wallet MAY offer the user to donate smaller change outputs, instead of getting them back. This could even finance the development of such wallet,
- the wallet MAY also implement a visualized transaction history, instead of a traditional wallet history.
Dead Change Attack
While the recommended strict coin selection properly separates mixed coins from each other, it does not protect against the dead change attack. Change outputs will be used for different purposes, therefore it is possible to connect those payments together. Fortunately it does not affect the anonymity set of other users who participated in the mix, but it does affect individual privacy.
To encourage more cautious user behavior post-mix wallet MAY implement a transaction labeling system, so users can decide manually what purcheses it does not care about if they are connected together by third party observers.
Furthermore it is possible to completely defeat the dead change attack for the first transaction after the mix, the post-mix wallets MAY make the users' first purchase to be a regular CoinJoin transaction, without the usage of fixed denomination. In this CoinJoin every input transaction is the same denomination, therefore an observer will not be able to tell who wanted to pay who and it cannot come to conclusions about the changes either.
In this case the Chaumian CoinJoin technique must be modified in a way that the active CoinJoin output must be provided in a separate phase, otherwise the change attack defense would not work against the Tumbler.
from zerolink.
If you have no other idea in your mind I think the issue can be closed.
from zerolink.
I was wrong about my dead change attack defense idea, it does not help in any way against dead change. However the method adds more anonymity set. The modified section:
Additional Anonymity Set
A post-mix wallet MAY offer to make a user's first purchase to be a regular CoinJoin transaction, without the usage of fixed denomination so additional anonymity set can be achieved. In this CoinJoin every input transaction is the same denomination, therefore an observer will not be able to tell who wanted to pay who, it can only figure out which change belongs to which active output.
from zerolink.
Related Issues (20)
- Add RBF ratio idea
- Typing numeric value into mixing Amount doesnt work as expected. Windows 10 HOT 1
- Research: Open Lightning Channel with CoinJoin HOT 1
- ZeroLink v2? HOT 12
- Evaluate BIP147
- Evaluate Bitfury: Automatic Bitcoin Address Clustering HOT 2
- Evaluate study: "Bitcoin Laundering: An Analysis of Illicit Flows into Digital Currency Services" HOT 1
- Evaluate study: "Bitcoin Laundering: An Analysis of Illicit Flows into Digital Currency Services" HOT 1
- Evaluate if makes a difference: Require Bech32 for higher anonymity set? HOT 1
- Creative Input Joining Avoidance Strategy
- Evaluate research: "When A Small Leak Sinks A Great Ship: Deanonymizing Tor Hidden Service Users Through Bitcoin Transactions Analysis"
- Evaluate Xim Again HOT 2
- Ideas On Decentralizing ZeroLink Coordinator HOT 3
- Evaluate Bob Wallet - ZeroLink Surprise Implementation
- Evaluate Murch's Coin Selection Paper
- Evaluate: Bitcoin over Tor
- Evaluate: Trending Paper HOT 1
- Mixing Unequal Inputs [CCJ Extensions] HOT 3
- Mixing Unequal Inputs [Optimal Heuristic] HOT 3
- Mixing To Self vs Mixing To Others
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 zerolink.