4 ms·
A small thing to note is that Bitcoin does have fungibility built into the system. There is almost no (non-contrived) way to track the history of a specific amo
by derangedHorse 5y ago
A small thing to note is that Bitcoin does have fungibility built into the system. There is almost no (non-contrived) way to track the history of a specific amount of Bitcoin over time. When person A receives X Bitcoin, an entry is put into a ledger that says person A received X Bitcoin. If person B sends C amount of coinjoined Bitcoin to person A, then the ledger will now add that person A received C Bitcoin.
Now, if person A then wants to send Bitcoin to another address, person A has to reference the ledger transactions where they received the Bitcoin (so the transactions that say person A received C Bitcoin and any other transaction where person A received X Bitcoin) as proof to the Bitcoin system that person A has enough. The used transactions are basically crossed out on the ledger after that and if person A didn't want to use all their coins from the crossed out transaction, person A will make 2 outputs on their outbound transaction -- one amount marked to a recipient's address and another marked back to their own (with the "change" they want to give themselves). Now we can discuss the feature of fungibility within this context.
Imagine a scenario where person A only has C coins to their name. If person A were to send Bitcoin to someone else, then you can imagine that any Bitcoin received from Person A directly came from the C coinjoined coins. But what if person A also had another transaction on the ledger giving them X amount of coins? If person A wanted to send less than C amount of coins, let's say C-1, person A could technically reference 2 transactions (the one giving person A 'C' coins and the one giving Person A 'X' coins) and it would be impossible to tell from the ledger which pile the recipient is receiving coins from. Thus there's no surefire way to track an amount of Bitcoin from person to person. What an institution can do is blacklist any transactions received that reference a coinjoined transaction, but it's very easy to make sure one doesn't directly have Bitcoin from a coinjoined transaction.
One simply has to send Bitcoin to another address they own and reference 2 transactions, the coinjoined one and another "legitimate" transaction. Using the second address, it now becomes obscure how much of the money they received came from the coinjoined amount and impossible to distinguish any amount they send as being part of that source. Companies can still blacklist accounts that have received coinjoined funds and any direct accounts they've transacted with, but when does the fan-out stop?
Conducting business this way would be detrimental to any Bitcoin-based business. From the examples I see in the linked post, exchanges are only rejecting coinjoined transactions as deposits and withdrawal requests to accounts used to create coinjoined transactions. I'm still against this of course, but I wouldn't say this threatens the overall fungibility of Bitcoin).