Zcash relies on zk-SNARKs (zero-knowledge Succinct Non-interactive ARgument of Knowledge), a type of non-interactive zero-knowledge proof, to prove to viewers that a commitment for a transaction on the Zcash blockchain has been satisfied, without revealing the commitment’s details. This technology, combined with technical extensions to the original Bitcoin protocol, allows a Zcash user to obscure the sender, recipient, and value of a transaction. The only information visible is a proof that a valid transaction took place. A summary of zk-SNARKs’ uses can be found here. Notably, the privacy features are optional, in contrast to Monero’s default privacy features. Like many early altcoins, Zcash is a code fork of Bitcoin, but did not inherit prior Bitcoin balances at the time of fork. Zcash uses a 2.5 minute target block time, a max block size of 2mb, and a halving interval of four years.
Zcash is an implementation of zerocash, an extension to Bitcoin invented in 2014, and is designed to provide anonymous transactions by minting Bitcoin, or non-anonymous basecoins whose blockchain the Zerocash protocol is implemented besides, into anonymous Zerocash coins. Zerocash was an improvement over the prior zerocoin protocol meant to improve bitcoin by allowing “users to mix their own coin”, essentially by using cryptography to conceal which outputs are linked to which inputs. Zcash supports both ‘transparent’ transfers of value, which function similarly to Bitcoin transactions, and ‘shielded’ transfers of value, which utilize zk-Snarks to provide privacy features. Transparent addresses begin with ‘t’ and shielded addresses begin with ‘z’, though it is possible to send transactions between different address types.
Zcash privacy protections depend on the number of shielded transactions, as this determines the ‘anonymity set’ that obscures any individual transaction; throughout Zcash’s history, the overwhelming majority of transactions have not been shielded and have offered no protections beyond those on the Bitcoin network. Partially in response, the Sapling network upgrade improved shielded transactions’ efficiency by reducing the amount of data needed to be stored on-chain. Multi-signature transactions can be used with transparent transactions.
Zcash ues the Equihash Proof of Work algorithm, which allows for very efficient memory-oriented mining optimized for CPU/RAM. The Zcash monetary base is the same as Bitcoin, but, of the maximum 21 million ZEC currency units mined over time, 90% will be distributed to miners and 10% will be distributed as a Founder’s Reward over the first four years to a combination of investors, founders, and the ZCash Company, which oversees primary development of the protocol. Early investors in ZCash include Pantera Capital, Digital Currency Group, Fenbushi Capital, and Naval Ravikant among others, who purchased 131,250 ZEC for $2 million. After four years, the reward per block halves, and all of the block rewards accrue to miners. Zcash’s Founder’s Reward design is an early attempt with the cryptoasset space to align stakeholders and motivate, in particular, the core developers to continue work on the protocol through the Zcash Company. The network was launched in October 2016 with a trusted setup process, where the Zcash founder Zooko Wilcox and early cryptocurrency adopters such as Coin Center’s Peter Van Valkenburgh and Bitcoin developer Peter Todd participated in a transparent process to generate the cryptographic keys necessary for launching the network.