Skip to content
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

Remove or isolate transparent addresses (privacy leak) #34

Open
powerkangaroo opened this issue Sep 15, 2020 · 0 comments
Open

Remove or isolate transparent addresses (privacy leak) #34

powerkangaroo opened this issue Sep 15, 2020 · 0 comments

Comments

@powerkangaroo
Copy link

powerkangaroo commented Sep 15, 2020

The client queries the lightwalletd server simultaneously for transactions to its transparent and to its shielded address. The client also reveals to the server if a block has a fully shielded transaction in which the client is involved.

Since fully shielded transactions are so rare that on average currently only every 4th block contains one, the server can tie transparent addresses to fully shielded transactions. If it's lite wallets sending fully shielded transactions to each other, from the server's perspective, this no more private than using transparent addresses, the difference being is that amounts are hidden.

For this reason, I suggest doing one of the following:

  • Remove transparent addresses completely. Potentially split the wallet into two apps, one exclusively handling t-addresses, the other exclusively z-addresses.
  • Disable transparent addresses by default. Put up a warning message and require opt-in from the user before first displaying transparent addresses and querying the server for their balance. Following that, require the user to pass a softer conformation screen every time the transparent tab is opened. Query t-addr balances only when the transparent tab is open. If there are confirmed transparent funds when leaving the transparent tab, suggest making a transaction that transfers them to a z-addr of the wallet. (This should be made as smooth and easy as tapping "Yes" on the screen, with amount management, address choice, signing, etc. all happening in the background.)

What do you think?

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

No branches or pull requests

1 participant