Zcash
Zcash was launched on 28th of October, 2016. This is the first currency that uses a specific type of zero knowledge proofs known as zero-knowledge Succinct Non-interactive Arguments of Knowledge (zk-SNARKs) to provide complete privacy to the user. These proofs are very short and easy to verify; however, setting up the initial public parameters is a complex process. The latter include two keys: the proving key and verifying key. The process requires sampling some random numbers in order to construct the public parameters. The issue is that these random numbers, also called toxic waste, must be destroyed after the parameter generation in order to prevent counterfeiting of Zcash. For this purpose, the Zcash team came up with a multi-party computation protocol to generate the required public parameters in a collaborative manner from independent locations to ensure that toxic waste is not created. Due to the fact that these public parameters are required to be created by the Zcash team...