INTRODUCTIONRecently, privacy concerns have become a prominent issue for Bitcoin. Undoubtedly, by now you've surely heard about CoinValidation – a joint venture between three individuals who seek to line their by pockets by destroying the fungibility of bitcoin. The cryptocurrency community needs to be proactive in the fight against threats like these, lest we be destroyed by them.
A proper coin mixing service ruins the type of data that companies like CoinValidation are collecting. By properly mixing coins, their data is poisoned, and their agenda unenforceable. Typical coin mixing services have several points of failure. They require a web interface, and the very act of accessing such a site its a privacy risk at many levels. Such systems are antiquated and desperately in need of improvement.
It is through the development of a revolutionary new type of coin mixing service for StableCoin that we're putting our best foot forward in the fight against companies like CoinValidation.
HOW IT WORKSThe StableCoin client will have a built in mixing tab. Through this tab, you will be able to send a special type of transaction called a
mixed transaction. A mixed transaction is a new type of transaction type we will be implementing into StableCoin. To understand this, let's first look at the current transaction structure for Bitcoin:
A mixed transaction will contain additional fields. The first of these fields is a obfuscated and encrypted form of the address you want the encrypted funds to be sent to. This field will be encrypted using the public key related to the private key that the
mixing node holds.
Firstly, in order to obfuscate the data, the receiving address will be joined with 80 bytes of random data. For example, the bold part is the address, and the rest is random data:
r7ru5JaNMugN2GK4mrmVmLpSgTXXCWzeL4dGzznV6YWhxq4K2aM7Tcz6VgUNxaLJ7Jzu9fZYmHZmRE4
T
sajaWXsFiQNbH8bzQygYS1UeXqgTRJZQA7This is done for privacy purposes. If the data was not obfuscated, an attacker could encrypt addresses using the public key, and make associations based off of that. The resulting string is then taken and, as mentioned before, encrypted using the private key of the mixing node.
For verification purposes, the entire transaction is signed using the private key of the largest input. This prevents other nodes on the network from tampering with the receiving address.
INTRODUCING THE MIXING NODE AND BROADCAST NODEThis transaction is propagated across the network, as any other transaction would be. The mixing node gets introduced to the equation here. The mixing node is in possession of the private key corresponding to the public key that the receiving address was encrypted with. When the mixing node sees such a transaction in a block, it will decrypt it and pull the receiving address from it. It will then create a new transaction to send the (now mixed) coins back to the receiving address.
For privacy purposes, this transaction is not sent out immediately. It is placed in queue, and once a suitable amount of transactions have been created, they will be encrypted with the public key that belongs to the
broadcast node. The broadcast node is a node that is geographically separate from the mixing node. It's job, as the name suggests, is to broadcast the transactions created by the mixing node. When the broadcast node receives a group of transactions, it will decrypt them and broadcast them to the network. At this point, that coins have been successfully mixed and returned to their owners.
The mixing node and the broadcast node will both operate behind the TOR network, and be geographically separate from each other. This is done to obscure the location of the master node, so that no entity can determine where it is located. Since the master node is only passively observing block data on the network and sending out encrypted bits of data, it's exposure is minimized. This offers strong protection against the master node from being compromised.
The benefits of this type of system over a traditional mixing service are clear. All possible attack vectors other than the master node being dishonest have been eliminated. Under this system, one must only trust the master node to act honestly, which is required of
any system.
IN CLOSINGThe above explanation has been somewhat simplified, but that is the general structure of the system. Several other security considerations are factored in as well. For example, the master node will cycle through private keys on a weekly basis. Once these keys have expired, they are destroyed so that even in situation that the node is compromised, the attacker will not be able to make sense of any of the transactions that the node has processed in the past. Similar considerations are in place for the broadcast node as well.
Through innovations like this, StableCoin will position itself as a leader in the world of cryptocurrency.
StableCoin release threadStableCoin official website