The San Jose Bitcoin Conference in 2013 was one of those formative events in cryptocurrency history, which brought together different groups of scientists who would go on to create the Zcash protocol.
There were two different discoveries back in that era. One was the Zerocoin design, which was the first scientific proposal for a cryptocurrency with strong privacy properties. At the same time some other scientists came up with improved mathematical techniques for zero knowledge proofs – nowadays called ZK-SNARKS – which can confirm that transactions are valid without any other details about them being released.
Having started out as a science project, the Zcash blockchain is currently running on a testnet, and will go live on 28 October, whence it will become a store of value, in other words a cryptocurrency.
There's lots of anticipation around this. Zooko Wilcox, founder and CEO, Zcash was one of the stars at this year's Ethereum DevCon2 and the Global Blockchain Summit that followed it.
Wilcox said the last two years have seen a lot of engineering work to reach the point of launching the open blockchain. He pointed out there is not going to be a sale. "There is no pre-mine; there's no pool of tokens that anyone could sell yet. But once we launch the genesis block then there will be a tiny trickle of tokens mined for the first like month or so.
"Then after the first month that will ramp up substantially and there will be lots and lots of tokens mined every two and a half minutes, for the next four years."
Tokens are needed to get the network to replicate and validate transactions, and can also be used as a kind of money. In addition, the Zcash blockchain could have other uses, such as a data store.
"With its append only properties and its cannonicity property and its encryption properties, it gives rise to selective transparency. It's not all opaque all the time; you can use it and then you can control to whom you reveal the data and when – even though the data is in a canonical, single database," said Wilcox.
At DevCon Wilcox talked about ways the Zcash blockchain could interoperate with Ethereum. This could be either a baby step that adds a ZK-SNARK pre-compiler into Ethereum, or a second approach to add programmability into Zcash which looks at ways to insert smart contracts into the Zcash engine. A third way, which he calls "Project Alchemy" is to connect the two blockchains. Making the blockchains interoperable would use BTC Relay. The latter makes a Bitcoin light client inside Ethereum; so change that to make a Zcash light client inside Ethereum.
It's interesting to see the evolution from the 2013 San Jose Zerocoin proposal, which was presented as an extension to Bitcoin. Bitcoin developers (Core members presenting at the conference) were not considering upgrading the Bitcoin protocol to include Zerocoin any time soon because it was too inefficient. Zerocoin the protocol was considered way too inefficient and experimental at that time; it did not yet have the later protocol's efficiency of ZK-SNARKS. The advice from Bitcoin core was to go forth and implement it in an altcoin first and then that can prove it out.
"I think that was a really good engineering decision on their part," said Wilcox. "So when it was my turn to make decisions, we decided to implement the Zcash protocol on its own blockchain because that was the simplest thing that could be finished the soonest. We could deploy and everyone could start learning from our experiment.
"But we're also contributing to other ways to deploy similar technology. Like contributing to help upgrade Ethereum to have zero-knowledge proof verifiers. And I would happily collaborate with any Bitcoin people who wanted to do some kind of integration of Zcash and Bitcoin, however they would want."
"I don't know what's going to happen if we get to the next stage, if there will be a serious consideration of upgrading Bitcoin protocol itself or if some other technology like sidechains could come online and be used to let this kind of privacy be leveraged by the Bitcoin blockchain."
"I really want Zcash to be more dynamic and ambitious than Bitcoin in terms of protocol upgrades, but perhaps more conservative than Ethereum."
Banks and financial institutions are looking for privacy solutions to make their blockchain dreams whole. So have these sorts of people been beating a path to Wilcox's door?
"There is a lot of demand and we are doing some work with partners from that world, from the private blockchain and financial industry side of things. We are a small team that is uniquely focused on privacy in a blockchain; that's our whole thing.
"But we can only do one thing at time. So after we successfully launch the open currency then maybe we will have more bandwidth for collaborating with people who want to have privacy into their various closed blockchains."