...by Daniel Szego
"Simplicity is the ultimate sophistication."
Leonardo da Vinci

Saturday, August 4, 2018

Blockchain advanced anonymity techniques


Original implementations and design of a Blockchain is unfortunately far from being perfect. The reason for that is that in the consensus mechanism every node has to be able to validate all of the transactions which can be easily realized only in a pseudonym fashion. There are however several initiatives to increase the privacy, among the others, the most important ones are the followings:

1. Zero-Knowledge Proofs: A prover proves knowledge of a secret without revealing it. There is an initiative for example to build zero knowledge proof into the Ethereum platform. 
2. Stealth Addresses:  Using one-time addresses for sending/receiving transactions for an account. It is used for example in Monero. 
3. Ring Signatures:Type of digital signatures that lets any member of the group sign, but no one can tell which one signed. It is used in Monero for example.
4. CoinJoin: Transactions from several senders to several recipients are mixed together to hide who is paying whom. There are services for that even at Bitcoin.
5. Confidential Transactions: Uses homomorphic encryption to allow transactions to be processed while encrypted. Proves transaction value is in a range of values to prove that overspending did not occur.

Some types of these techniques, like Sealth Address, Ring Signature or CoinJoin can rather be used only with cryptocurrencies, as other types like Zero Knowledge Proofs or Confidential Transactions, are to be used both in cryptocurrencies and in smart contract based systems.