Skip to content
This repository has been archived by the owner on May 19, 2020. It is now read-only.

Add UX recommendation #40

Open
nopara73 opened this issue Oct 12, 2017 · 1 comment
Open

Add UX recommendation #40

nopara73 opened this issue Oct 12, 2017 · 1 comment

Comments

@nopara73
Copy link
Owner

nopara73 commented Oct 12, 2017

Based on the mailing:

Mail 1:

Just to elaborate on the thought I mentioned re change outputs:
Eliminating change outputs can improve privacy a lot. A transaction with 5 inputs and 1 output could both be internal consolidation (same owner), or "send all to" to an exchange (other owner). It successfully throws off some blockchain analysis tools.
Examples on UI that can eliminate change outputs.
Alice wants to send 0.8 BTC to kraken to sell. 0.8 BTC send would produce change, the closest amounts based on full utxos available in the walelt would be 0.76 or 0.83.
UI informs: Nearby options available with increased privacy. Please choose one:
Send 0.76 with improved privacy
Send 0.83 with improved privacy
Send 0.8 BTC and receive a change output of 0.03 BTC.
In reality there's many cases where it does not need to be an exact amount sent, many deposits to
accounts are actually quite flexible.
Same benefits can also be achieved by occasionally cleaning out the wallet with a "Send all" tool, which on one side groups all your utxos, but on the other side "the trail ends here".

Mail 2:

Eliminating change outputs can improve privacy a lot.

Hell yes:)

A transaction with 5 inputs and 1 output could both be internal consolidation (same owner), or "send all to" to an exchange (other owner).

ZeroLink's post mix wallet doesn't allow inputs joining together, which results in bad UX experience that can balanced with some Stever Jobs like creativity (visualized transaction history, coin control feature, etc), but this is necessary in order to achieve complete anonymity.
However if you want to do such things: 5 people joins inputs together and send it to the exchange there are some starts those must align well:

  1. The people should want the transaction to happen in the same time.
  2. People should want to spend exact inputs, since no changes are allowed.
  3. Exchange must be prepared, know which inputs are from which user in order to be able to credit their accunts indiviually.
  4. A CoinJoin server must be built that deals with such transactions.

It successfully throws off some blockchain analysis tools.

All blockchain analysis tools. For a couple of years until they adopt.
However your example is telling a different story, but I am happy that you shared it. I'm pretty close to do something similar in ZeroLink by simply saying "Use some kind of coin control feature", but your example takes it to another level and I'd like to incorporate it into ZeroLink.
I imagine to put it in the "Coin Selection" section (https://github.com/nopara73/ZeroLink#coin-selection) above the "To enhance useability of a post-mix wallet" sentence.

Same benefits can also be achieved by occasionally cleaning out the wallet with a "Send all" tool, which on one side groups all your utxos, but on the other side "the trail ends here".

Again, not in ZeroLink, because we don't allow input joining, so the "Send all" would not make sense there, because it is not allowed in the first place.

@nopara73
Copy link
Owner Author

An UX recommendations section should be created.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant