{"action":"created","issue":{"url":"https://api.github.com/repos/chris-belcher/joinmarket/issues/105","labels_url":"https://api.github.com/repos/chris-belcher/joinmarket/issues/105/labels{/name}","comments_url":"https://api.github.com/repos/chris-belcher/joinmarket/issues/105/comments","events_url":"https://api.github.com/repos/chris-belcher/joinmarket/issues/105/events","html_url":"https://github.com/chris-belcher/joinmarket/issues/105","id":89521757,"number":105,"title":"Use multiple change addresses and coinjoin them","user":{"login":"chris-belcher","id":8398185,"avatar_url":"https://avatars.githubusercontent.com/u/8398185?v=3","gravatar_id":"","url":"https://api.github.com/users/chris-belcher","html_url":"https://github.com/chris-belcher","followers_url":"https://api.github.com/users/chris-belcher/followers","following_url":"https://api.github.com/users/chris-belcher/following{/other_user}","gists_url":"https://api.github.com/users/chris-belcher/gists{/gist_id}","starred_url":"https://api.github.com/users/chris-belcher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chris-belcher/subscriptions","organizations_url":"https://api.github.com/users/chris-belcher/orgs","repos_url":"https://api.github.com/users/chris-belcher/repos","events_url":"https://api.github.com/users/chris-belcher/events{/privacy}","received_events_url":"https://api.github.com/users/chris-belcher/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/chris-belcher/joinmarket/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-06-19T09:55:48Z","updated_at":"2015-06-22T14:07:43Z","closed_at":null,"body":"One issue with JoinMarket CoinJoins is it's still usually possible to link together inputs from a single entity with the change address.\r\n\r\nIn the spirit of Mike Hearn's suggestion in the Merge Avoidance blog post of using multiple addresses, a partial solution to this might be that more than one change address is used, the taker tries to construct a coinjoin out of them too.\r\n\r\nSee this coinjoin example https://blockchain.info/tx/da1a2259be752dd6b5162221989181b7334bd0acbbc1bca31596e5bc32375770 The makers should send two or three change address to the taker, the change is distributed between them such that one set of change address has output value 1.88769 BTC, the smallest change output here.\r\n\r\nThen it will be much less trivial to link inputs to change addresses, and link inputs together.\r\n\r\nIn a future transaction, the UTXOs on the different change addresses might be combined in one transaction. This may not always happen, and it's also very difficult to distinguish this between different makers being used again to create another coinjoin."},"comment":{"url":"https://api.github.com/repos/chris-belcher/joinmarket/issues/comments/114116131","html_url":"https://github.com/chris-belcher/joinmarket/issues/105#issuecomment-114116131","issue_url":"https://api.github.com/repos/chris-belcher/joinmarket/issues/105","id":114116131,"user":{"login":"chris-belcher","id":8398185,"avatar_url":"https://avatars.githubusercontent.com/u/8398185?v=3","gravatar_id":"","url":"https://api.github.com/users/chris-belcher","html_url":"https://github.com/chris-belcher","followers_url":"https://api.github.com/users/chris-belcher/followers","following_url":"https://api.github.com/users/chris-belcher/following{/other_user}","gists_url":"https://api.github.com/users/chris-belcher/gists{/gist_id}","starred_url":"https://api.github.com/users/chris-belcher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chris-belcher/subscriptions","organizations_url":"https://api.github.com/users/chris-belcher/orgs","repos_url":"https://api.github.com/users/chris-belcher/repos","events_url":"https://api.github.com/users/chris-belcher/events{/privacy}","received_events_url":"https://api.github.com/users/chris-belcher/received_events","type":"User","site_admin":false},"created_at":"2015-06-22T14:07:43Z","updated_at":"2015-06-22T14:07:43Z","body":"Thinking carefully about this. It would still be possible to link together inputs, it would be harder to link together change outputs with inputs."}}