As I hang out with a large circle of liberty minded people the topic of Bitcoin comes up frequently. Generally there are two schools of thought when it comes to Bitcoin; the school that believes Bitcoin is our salvage from government controlled money and the school that thinks Bitcoin is a fad that will die out soon enough.
Although I find many things to like about Bitcoin anonymity isn’t one of them. People often tout Bitcoin as being anonymous and state that as a huge plus. The problem comes from the fact that every Bitcoin transaction ever made is forever stored in the Bitcoin network. This means if somebody is able to tie a Bitcoin wallet ID to a person they could begin the process of tying other walled IDs to people. This can be done pretty easily through data mining (or, if the first wallet ID was discovered through computer access, potentially looking through the user’s Bitcoin address book).
Well somebody finally did some experimentation and demonstrated what I’ve been saying:
Anonymity is not a prominent design goal of Bitcoin. However, Bitcoin is often referred to as being anonymous. We have performed a passive analysis of anonymity in the Bitcoin system using publicly available data and tools from network analysis. The results show that the actions of many users are far from anonymous. We note that several centralized services, e.g. exchanges, mixers and wallet services, have access to even more information should they wish to piece together users’ activity. We also point out that an active analysis, using say marked Bitcoins and collaborating users, could reveal even more details. The technical details are contained in a preprint on arXiv. We welcome any feedback or corrections regarding the paper.
Arguments about the merits of Bitcoin as a competing currency to currently government controlled monies are still relevant but please stop claiming the advantage of anonymity. If you want the most anonymity in your transactions use physical commodities. Any electronic currency system needs to ensure transactions are valid in order to prevent counterfeiting, and thus devaluation. The only way to do this is to know the entire history of each monetary unit which necessarily involves keeping records of every transaction. As transactions occur between individuals some method can always been used to tie a specific monetary unit to a particular person.
Physical commodities aren’t reproducible without physical effort which negates the need to have some kind of record of every transaction that commodity has been through.
That analysis failed to identify the thief. Furthermore, they have no way of tracing the coins if there were external transfers OUTSIDE of the Bitcoin block chain (through wallet services, for example). A few overlooked aspects of Bitcoin that significantly strengthen practical anonymity.
1)Programmatic manipulation. Never has it been so easy to control currency with code. Automated methods to move and transfer bitcoins already exist (mixes, tumblers..). It is simple to couple such systems with full-anonymity schemes (i.e. open transactions – server acts as wallet, but has no account data to give attackers if it is compromised. The transaction history outside of the block chain CANNOT then be followed. The server acts as a black-hole).
2)External transfers. Bitcoin value can be and often is transferred outside of the block chain (wallet services, blindbitcoin.com, bitbills). Transactions in the block chain are therefore not 100% accurate representations of value transfers. Traceablility is not clear from the block chain alone. Further, it is very difficult to know from which services an address belongs to if new addresses are generated for each new transaction. (Does XYZ belong to mybitcoin, mtgox, silkroad, another individual?)
3)Identity does not correlate to a single address. 100s of bitcoin addresses may be associated with an individual. Automated tools may be developed to ensure full segregation of addresses.
4)Verification of traceability. Because we have the block chain data (blockexplorer.com), we can verify with certainty when our ties to particular addresses have been circumvented. For example, assume I have tainted address ABC and I transfer to a blindbitcoin wallet. I then withdraw. I am likely to recieve coins from an entirely unrelated transaction chain (ORZ). I can verify these facts with 100% certainty by simply checking blockexplorer. The wallet service on blindbitcoin can be performed in such a way to guarantee 100% cryptographic anonymity between deposits and withdrawals so that even if an attacker knows the coins ended up at a blindbitcion wallet, he cannot ascertain who deposited the coins.
5)Use as a reserve currency. Full 100% guaranteed anonymity systems can be layered on top of bitcoin. Transactions within these systems proved cryptographically-proven anonymity. 100% reserves of such services can then be proven easily through the block-chain. Such a service could exist on the TOR network. Open transactions is a library that enables such services.