Think about a future the place a consumer Alice has bitcoins and needs to ship them with maximal privateness, so she creates a particular type of transaction. For anybody trying on the blockchain her transaction seems utterly regular along with her cash seemingly going from tackle A to handle B. However in actuality her cash find yourself in tackle Z which is totally unconnected to both A or B.
Now think about one other consumer, Carol, who is not too bothered by privateness and sends her bitcoin utilizing a daily pockets which exists at the moment. However as a result of Carol’s transaction appears to be like precisely the identical as Alice’s, anyone analyzing the blockchain should now take care of the likelihood that Carol’s transaction truly despatched her cash to a completely unconnected tackle. So Carol’s privateness is improved regardless that she did not change her behaviour, and maybe had by no means even heard of this software program.
This undetectable privateness could be developed at the moment by implementing CoinSwap. I have been engaged on implementing this for the previous couple of months.
At the moment is a giant day: the primary multi-transaction CoinSwaps created on the bitcoin testnet.
The consumer (let’s name her Alice) despatched 0.05 tBTC break up up over three transactions:
https://blockstream.information/testnet/tx/74a584b6ac8c1adb3cdbbe745fb50a75d9ba38072867452fa21a788629cc444e
https://blockstream.information/testnet/tx/adbd17a703d47783f681ea16e947d12d9b9a6855e3b393e4b384c527f0d91ede
https://blockstream.information/testnet/tx/493770838b8fae159e245eeb990d3dcb23b7a8357031d03d864b8272e8caea08
These transactions do not look notably particular (which is the purpose), however they’re CoinSwaps. Following the CoinSwap protocol, these cash are transferred off-chain to the market maker Bob. Though the coin are unspent on the time of writing, they’re unilaterally managed by Bob.
In return Bob despatched cash again to Alice additionally in three transactions:
https://blockstream.information/testnet/tx/a5f76805a088aedff2e4cc49c6933d99883dcac447d1032a7530cf40cf49432e
https://blockstream.information/testnet/tx/6944b32f9a8388c5a0e706cdfd1f91ec4a8897a35476b4ccf536513894ade0d9
https://blockstream.information/testnet/tx/5334036eda24d265fc2adee37e52c9216a7e108b3ddbe7a550bd9f71d693349c
Bob despatched 0.0499 tBTC to Alice, once more with the CoinSwap protocol and so these cash are literally possessed by Alice now. The distinction between 0.05 tBTC and 0.0499 tBTC is the payment which Bob earns to offer him an incentive (In the actual world the payment can be set by market forces, the 0.001 tBTC used right here is simply an instance).
This privateness protocol is non-custodial. Alice and Bob are usually not in a position to steal one another’s cash at any level on this course of. Due to the low danger of theft we are able to count on market forces to push the CoinSwap charges down very low, in the identical manner that charges for creating CoinJoins at the moment on JoinMarket are very low.
Utilizing a number of transactions (three on this instance) is required to keep away from quantity correlation. Alice made a CoinSwap for 0.05 tBTC however nowhere on the blockchain is the precise worth 0.05 tBTC discovered, as an alternative 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. These numbers could be generated randomly utilizing any algorithm, and the surveillance analyst spy would have a really exhausting time determining that the transactions are associated in any respect.
These instance CoinSwaps have a visual 2-of-2 multisig tackle. However the plan is to later use a protocol referred to as ECDSA-2P which permits us to create 2-of-2 multisig addresses that look the identical as common single-signature addresses. This enables CoinSwaps to mix in with the remainder of the bitcoin transactions on the market. Even the old-style p2pkh addresses beginning with 1 could be CoinSwap addresses.
CoinSwap is the subsequent era of bitcoin on-chain privateness tech. It improves on CoinJoin as a result of it offers a lot higher privateness, and even improves the privateness of people that do not use it. CoinSwap additionally makes use of much less block area and due to this fact is cheaper in miner charges.
The way forward for bitcoin privateness and fungibility is vibrant. I proceed to work on this undertaking day by day.
Hyperlinks: