Finance:CoinJoin

From HandWiki
Revision as of 18:50, 27 December 2020 by imported>WikiEditor (url)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

CoinJoin is an anonymization method for bitcoin transactions proposed by Gregory Maxwell. It is based on the following idea: “When you want to make a payment, find someone else who also wants to make a payment and make a joint payment together.” When making a joint payment, there is no way to relate input and outputs in one bitcoin transaction and thus the exact direction of money movement remains unknown to third parties.

CoinJoin basic idea example: two transactions are joined into one while inputs and outputs are unchanged.

There are several implementation of anonymous bitcoin transactions inspired by CoinJoin: SharedCoins,[1] Dark Wallet,[2] CoinShuffle,[3] PrivateSend feature of Dash and JoinMarket.

CoinJoin-based mixing methods increase privacy for all users – even those not using mixing – because it is no longer likely that all inputs to a transaction come from a single wallet, and hence can no longer be reliably associated with a single user.

CoinShuffle

CoinShuffle was proposed by researchers from Saarland University in 2014.[4] It further develops the CoinJoin concept and increases privacy by not requiring any trusted third-party to be involved in the creation of mixed transactions. In the original research paper presented at the 19th European Symposium on Research in Computer Security, CoinShuffe is described as a completely decentralized coin-mixing protocol “inspired by CoinJoin to ensure security against theft and by the accountable anonymous group communication protocol Dissent to ensure anonymity as well as robustness against [DoS] attacks”.[4]

Only a proof-of-concept implementation of CoinShuffle protocol was made available, written purely to evaluate the feasibility and performance.[5] It was followed by further research leading to the CoinShuffle++, ValueShuffle and PathShuffle proposals. ValueShuffle was presented at Scaling Bitcoin 2017 by Tim Ruffing (Saarland University).[6]

Security issues

CoinJoin requires that users negotiate transactions they wish to join. The first services to handle this (such as blockchain.info's SharedCoin) used centralized servers and required users to trust the operator of the service not to steal the bitcoins or allow others to do so. Centralized services may also compromise participants' privacy by keeping logs of the transactions they negotiate.[7] Decentralized implementations of CoinJoin such as JoinMarket attempt to circumvent various issues related to centralization.

The level of anonymity offered by CoinJoin can also be diminished if the protocol is implemented incorrectly. One such flaw was identified in blockchain.info's SharedCoin mixing service. Security consultant Kristov Atlas,[8] author of the book Anonymous Bitcoin,[9] detailed the flaw in an article entitled Weak Privacy Guarantees for SharedCoin Mixing Service.[10] In this article he states “the SharedCoin service should be used only as a light protective measure for financial privacy”. As part of his research, the author developed a tool called 'CoinJoin Sudoku'[11] that could identify SharedCoin transactions and detect relationships between specific payments and payees.[12]

See also


References

  1. "Shared Coin - Free Trustless Private Bitcoin Transactions". https://sharedcoin.com. 
  2. Andy Greenberg (2014-04-29). "‘Dark Wallet’ Is About to Make Bitcoin Money Laundering Easier Than Ever". https://www.wired.com/2014/04/dark-wallet/. 
  3. Kyle Torpey (2015-01-27). "CoinShuffle Aims to Improve Privacy in Bitcoin". http://insidebitcoins.com/news/coinshuffle-aims-to-improve-privacy-in-bitcoin/29269. 
  4. 4.0 4.1 Ruffing, Tim; Moreno-Sanchez, Pedro; Kate, Aniket (2014-08-14), CoinShuffle: Practical Decentralized Coin Mixing for Bitcoin, http://crypsys.mmci.uni-saarland.de/projects/CoinShuffle/coinshuffle.pdf, retrieved 12 Oct 2018 
  5. "CoinShuffle project page at Saarland University (CoinShuffle: Practical Decentralized Bitcoin Mixing)". http://crypsys.mmci.uni-saarland.de/projects/CoinShuffle/#prototype. Retrieved 12 Oct 2018. 
  6. Scaling Bitcoin (4 Nov 2017). "Scaling Bitcoin 2017 Stanford University - Day 1 Morning". https://www.youtube.com/watch?v=BPNs9EVxWrA&t=1h24m15s. Retrieved 13 October 2018. 
  7. Jon Matonis (2014-03-17). "A Taxonomy of Bitcoin Mixing Services for Policymakers". http://www.coindesk.com/taxonomy-bitcoin-mixing-services-policymakers/. Retrieved 12 Oct 2018. 
  8. "Kristov Atlas at GitHub". https://github.com/kristovatlas. Retrieved 12 Oct 2018. 
  9. "About the Author – Anonymous Bitcoin Book". http://anonymousbitcoinbook.com/pages/about-the-author. Retrieved 12 Oct 2018. 
  10. Kristov Atlas (2014-06-09). "Kristov Atlas Security Advisory <20140609-0>, Weak Privacy Guarantees for SharedCoin Mixing Service". http://www.coinjoinsudoku.com/advisory/. Retrieved 12 Oct 2018. 
  11. "CoinJoin Sudoku - Weaknesses in SharedCoin, and CoinJoin research.". http://www.coinjoinsudoku.com. Retrieved 12 Oct 2018. 
  12. Jon Southurst (2014-06-10). "Blockchain's SharedCoin Users Can Be Identified, Says Security Expert". http://www.coindesk.com/blockchains-sharedcoin-users-can-identified-says-security-expert/. Retrieved 12 Oct 2018.