The soon-to-launch Zcash blockchain is a hot topic within the crypto-community because it promises to deliver the sort of privacy required by industrial and financial use cases. The chief developer of Zcash Zooko Wilcox was giving a presentation at Devcon2 in Shanghai which explored ways the privacy protocol will connect with Ethereum.
Zcash, which started out as a science project and is currently a blockchain running on a testnet, will go live on 28 October and become a store of value, in other words a cryptocurrency.
Zcash uses zero knowledge proofs which is an area of cryptography that allows selected users on a network to confirm they are both privy to the same secret without revealing any further details of that to one another or anybody else, a property known as "selective disclosure".
Wilcox said: "In order to have an idea of what can be built with this you have to understand selective disclosure. People think that Bitcoin and Ethereum is all about transparency and so Zcash must be all about being opaque and dark. This is not the case at all. It allows you control over who sees data.
"Businesses need this type of privacy for industrial blockchains in banking, trade finance, IoT. There is a whole conference after this conference on this stuff, which I am talking at."
Wilcox said the Zcash approach is about encryption rather than obfuscation (mixing together of lots of transactions to hide their sources). Blockchains could have been built to have everything encrypted but this creates a problem whereby validators would have no way of knowing which transactions were legitimate and which were bogus.
About three years ago this problem was solved by ZK-SNARKS, the zero-knowledge proofs protocol, which can confirm that transactions are valid without any other details about them being released.
He said there are three ways Zcash could be integrated with Ethereum. Firstly, an approach he described as "Baby Zoe" which is a baby step that adds a ZK-SNARK pre-compiler into Ethereum. A second approach is to add programmability into Zcash which looks at ways to insert smart contracts into the Zcash engine.
The third way, which he calls "Project Alchemy" is to connect the two blockchains. "To make the blockchains interoperable we are using BTC Relay. It makes a Bitcoin light client inside Ethereum. So change that to make a Zcash light client inside Ethereum.
"The third way is the most exciting because people can start building on it and you create a decentralised exchange right there. It means you can create unshutdownable things. It also means when you add this new power – to send and receive Zcash – all the other Ethereum contracts gain this new power. I think that's awesome."