CoinSwap, a promising Bitcoin privacy technology, was finally put to the test on Tuesday.
Bitcoin is not very private, despite the perceptions to the contrary. The full history of every transaction on the Bitcoin blockchain is public for anyone to browse. CoinSwaps are a type of transaction that boosts a user’s privacy by making that history much less straightforward.
“A big day for bitcoin privacy and fungibility,” tweeted Bitcoin privacy developer Chris Belcher when announcing the transaction. Belcher claims it’s the first of its kind sent on Bitcoin’s testnet.
CoinSwap transactions look like transactions going from one address to another, but they’re actually being sent somewhere else. Further, CoinSwaps can be implemented in such a way that they look just like normal transactions, making them “invisible,” unlike the most popular privacy tools currently.
Belcher announced he was refocusing his Bitcoin privacy efforts on CoinSwaps in May with the mission to “massively improve” Bitcoin privacy. Over the summer, he was awarded two grants from Square Crypto and the non-profit Human Rights Foundation to support his work.
Right now, it’s easy to track where a bitcoin transaction came from. If the Bitcoin blockchain says that 0.1 BTC went from address A to address B, then that’s probably what happened.
Read more: How Do Bitcoin Transactions Work?
CoinSwaps use cryptography – math deployed for shielding digital information – to throw a wrench in these assumptions. They make it harder for blockchain viewers to know what’s going on.
“For anyone looking at the blockchain [Alice’s] transaction appears completely normal with her coins seemingly going from address A to address B. But in reality her coins end up in address Z which is entirely unconnected to either A or B,” Belcher explained on Reddit.
A crucial piece of Belcher’s test CoinSwap is that it uses multiple transactions.
This helps to preserve privacy. Since all blockchain data is public, one way blockchain spectators can tell that transactions might be related in a CoinSwap is if two transactions with the same value are being sent at the same time. Multiple transactions get around that.
“Alice made a CoinSwap for 0.05 tBTC [testnet bitcoin] but nowhere on the blockchain is the actual value 0.05 tBTC found, instead any surveillance analyst spy would see the values 0.02919015, 0.01233641 and 0.00847344 for Alice and 0.01286471, 0.02457554 and 0.01245975 for Bob. Those numbers can be generated randomly using any algorithm, and the surveillance analyst spy would have a very hard time figuring out that the transactions are related at all,” Belcher said.
This test is a big step – especially considering how complicated CoinSwap is under the hood. But there’s still a lot of work left before users will be able to use CoinSwaps.
For example, Belcher’s goal is to make the CoinSwap transactions indistinguishable from normal bitcoin transactions. The test Belcher provided Tuesday does not put this property into practice. Belcher test uses a 2-of-2 multisig address, which stands out from a normal transaction.
Eventually, this won’t be the case. Belcher’s goal is to make CoinSwaps and normal transactions look the same. His plan is to use the cryptographic protocol ECDSA-2P, to accomplish this.
“This allows CoinSwaps to blend in with the rest of the bitcoin transactions out there,” Belcher writes. This would give all Bitcoin users more privacy – beyond those executing CoinSwaps.
He offers the example of Carol, who doesn’t use privacy transactions: “Because Carol’s transaction looks exactly the same as Alice’s, anybody analyzing the blockchain must now deal with the possibility that Carol’s transaction actually sent her coins to a totally unconnected address. So Carol’s privacy is improved even though she didn’t change her behaviour, and perhaps had never even heard of this software.”
This difference sets Coinswaps apart from CoinJoins, the most popular privacy-preserving transaction used on Bitcoin today. Though CoinJoins provide users with privacy, they stand out on the blockchain. CoinSwaps don’t (at least if they’re implemented the way Belcher plans to).
But is CoinSwap the future of Bitcoin privacy? The jury is out.
“I think Chris’s work in this area is great. […] This multi-transaction CoinSwap doesn’t appear to be a panacea for privacy, but definitely moves us in the right direction, blending private Bitcoin transactions in with non-private ones,” Blockchain.com security and privacy engineer Kristov Atlas told CoinDesk.
But he seemed jaded by Bitcoin’s privacy levels.
“I have low expectations for overall financial privacy in a world where only a small percent of Bitcoin users take advantage of privacy-protecting software. That’s based partly on what we see in the web space, where a small number of users (e.g. those of Tor Browser) get to enjoy some protection against tracking, but mostly people are heavily tracked and their information sold,” Atlas said.
That said, Belcher is optimistic for the future, especially with CoinSwap on the table. “The future of bitcoin privacy and fungibility is bright. I continue to work on this project every day,” he wrote.