-
Notifications
You must be signed in to change notification settings - Fork 92
coordinator attack: add clearnet/Tor attack and inconsistent round id attack #1867
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
MarnixCroes
wants to merge
1
commit into
WalletWasabi:master
Choose a base branch
from
MarnixCroes:coord-attack
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -146,6 +146,20 @@ _**Privacy & Availaibility Concerns**_ | |
| Other users would also notice a lack of mixed coins. | ||
| Learn more about this attack [here](https://github.com/WalletWasabi/WabiSabi/blob/master/protocol.md#attacks-on-privacy). | ||
|
|
||
| - **Client to Coordinator communication**: | ||
| - IP address leak when not using Tor: | ||
| This allows the coordinator to link all communication and inputs and outputs of the coinjoin and thus complete de-anonymisation. | ||
| This is why Wasabi communicates over Tor by default. | ||
| - (Theoretical) Tor network-level de-anonymisation: | ||
| Wasabi uses Tor by default, assuming that this is the most available and usable anonymous way to communicate, and that it cannot be de-anonymised at the network level. | ||
| If Tor does not uphold these assumptions, the client could be de-anonymised. | ||
|
|
||
| - **Inconsistent Round ID**: | ||
| The client asks the coordinator for the active rounds, and the coordinator returns the _Round ID_. | ||
| The round ID is the resulting hash of information about the round, such as when the round started and the parameters. The coordinator could create rounds that do not match the parameters and/or create rounds with inputs that were supposed to be registered in different rounds. | ||
| This allows the coordinator to de-anonymize and/or link users' coins. | ||
| To mitigate against this, the client calculates the round ID by itself to verify, and will abort if it detects the coordinator is doing this. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. that doesn't mitigate anything because ownership proof "verification" trusts the coordinator to provide prevouts even if they were, the round id is insufficient to ensure consistency |
||
|
|
||
| - **Metadata Leak**: | ||
| While this is not a direct attack by the coordinator, if a client disconnects after registering multiple coins, the coordinator may assume that these coins belong to the same owner as they all stop sending the subsequent required requests. | ||
|
|
||
|
|
||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: "anonymization" is used elsewhere in the docs.