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

User feedback on output address #3

Open
lukechilds opened this issue Jan 22, 2019 · 0 comments
Open

User feedback on output address #3

lukechilds opened this issue Jan 22, 2019 · 0 comments

Comments

@lukechilds
Copy link
Member

lukechilds commented Jan 22, 2019

You can read about why funds are sent back to a new address here.

Discussion leading to the decision of the current behaviour with Komodo lead developer @jl777:
https://discordapp.com/channels/412898016371015680/502811530002300939/517482251324358662

Click to open

lukechilds - 29/11/2018
by the way, how do you think is the best way to group the UTXOs to claim interest from a Ledger Live acount?
They use BIP44
not sure how familiar you are with it
but it has the concept of accounts
and inside an account you have a new address derived for each recieving TX and a new address derived for each change TX
if you make a payment larger than a single UTXO for one of your addresses it will combine UTXOs together from any addresses in that account
but it will never combine UTXOs from seperate accounts to preserve anonymity between accounts
the way that makes the most sense to me would be to allow users to claim rewards per account
claiming on an account wil combine all UTXOs from all addresses in that account (received and change) into a single transaction and send to a new unused address from that account with interest
this will consolidate all UTXOs/addresses in the account to a single UTXO
the pros are:

  • It's only a single TX that has to be manually approved by the user on the Ledger
  • We can sweep all UTXOs, including one's that don't have nLockTime set (like change UTXOs in Ledger), meaning they will now start acruing interest in the new UTXO
    So the end result is you have your entire balance in a single new unused address all now acruing interest (even the UTXOs that weren't acruing interest before)
    the cons are:
  • This is bad for privacy, it clearly links all your addresses within that account together in a single TX
    However only for that account, other accounts would have their own TX
    It seems like maybe the privacy issue isn't a huge issue in the Komodo community as public addresses aren't that private anyway, and can already be linked with chain analysis. This would just make it easier. If Komodo users want privacy they use Z addresses.

It also seems like it's quite common in the Komodo community (encouraged by Agama, BarterDEX) to just have a single address that is re-used for incoming/change transactions and then use a Z address for privacy. Reusing a single address for everything has even less rpivacy than using seperate BIP44 addresses and occasionally consolidating them.
That's just my assumption, so correct me if I'm wrong. But it seems like if that is the case, then combining UTXOs from different addresses in the same BIP44 account shouldn't be a big deal.
I've already spoken to Komodo Ledger users who have said they use multiple BIP44 accounts in Ledger to seperate their funds properly. This is issue won't affect them. They will have a seperate reward claim transaction for each BIP44 account consolidating only the UTXOs inside those account.
If this is an issue, the alternative would be to create a seperate reward clam transaction per address. So every address in every account get's it's own claim TX.
the pros are:

  • preserves anonymity slighly, all account UTXOs aren't consolidated into a single transaction, it was one TX for 1 address
    the cons are:
  • requires a seperate TX per address. This is quite a huge pain for the user. Each TX need to be signed on the Ledger device, which is slow, and manually approved by clicking buttons on the Ledger. If they have been using the account for a long time it could have hundreds of UTXOs. This would involve manually verifying and physically clicking the button on the device hundreds of times.
  • it isn't actually that much more private than my previous proposal. All addresses in the accounts will probably be claimed very close together and would quite likely make it into the same block. So although they aren't linked in the same TX, it would be quite obvious if you see a block with a large amount of reward claims going from one address to another in the same block that they are all from the same person.
    I'm leaning towards the first implementation, one TX for all account UTXOs. It's not as private as the second option but clear addresses aren't private anyway. Someone can already follow your chain of TXs with chain analysis if they want to, this just makes it a bit more obvious. If users want real privacy, they should use a Z address.

@jl777c what do you think?

jl777c - 29/11/2018
I agree with you. a simpler implementation will be more reliable and anybody that believes they have privacy without zaddr is just kidding themselves
as long as the funds separation is retained for the different accounts, that seems to be a non-privacy related issue, whatever solution seems fine


Currently all UTXOs in a single account are consolidated and sent back to the next unused address in the reward claim transaction.

We don't see an issue with this but might be open to changing this if it's a problem for a lot of users.

You can click to vote on the poll below:



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

No branches or pull requests

1 participant