PlatON, a privacy AI computing network which is committed to building a decentralized collaborative artificial intelligence network and global brain, is promoting the democratization of artificial intelligence and establishing a secure general artificial intelligence. The bottom layer of its decentralized privacy protection infrastructure is based on Zero-Knowledge Proof.
What is Zero-Knowledge Proof
Zero-Knowledge Proof is a cryptographic technology to realize privacy protection authentication. The prover needs to make the verifier believe that he knows or owns a message, without disclosing any information about message which is to be confirmed. For example, if the prover wants to prove that he knows the safe box password without revealing it, he can just show some items existing in the safe box that everyone knows.
This process is Zero-Knowledge Proof. The proof needs an initial credible setting (some items existing in the safe box that everyone knows), namely a series of public parameters to help the prover build Zero-Knowledge Proof.
Deficiency of Zero-Knowledge Proof
As a cryptographic technology with both privacy protection and authentication capability, zero-knowledge proof is widely used to realize transaction verification under hidden business details in blockchain. The zero-knowledge proof system applied in the blockchain field is mainly a cryptographic algorithm called “zk-SNARKs”. At present, the existing classic zk-SNARKs algorithms include GGPR13, PGHR13, Groth16, GM17, and new generation algorithms such as Sonic, Marlin, Plonk, which support updating public parameters. The current version of ZCash, a well-known private cryptographic currency, uses Groth16 algorithm.
From the above “safe box”, we can see that the premise for the correct operation of this kind of algorithm is existing a series of random trusted parameters. However, randomized parameters will not come out of thin air and there is no trusted third party in the blockchain. Parameters created by centralized third parties can be reconstructed in theory, and it is possible to forge proofs, which may destroy the underlying security in PlatON. Imagine that if a specific institution informed the verifier of the storage of the items in the safe box, the institution and the prover could collude and use this secret information to falsify the illusion that the prover knew the safe box password.
Therefore, it is an undoubtedly excellent idea to organize multiple participants to create these randomized parameters through Secure Multi-party Computation. In this process, single party can not reconstruct the parameters any more. Only when this activity is completed safely will the subsequent decentralized application be safe. In fact, ZCash has successfully created system parameters for Groth16 algorithm in November 2017 through its ceremony, Power of Tau.
Lumino, creating secure parameters
In order to prevent the parameters generated by the centralized mode from affecting the underlying security, PlatON started the Secure Multi-party Computation ceremony Lumino on June 21, 2021, last for 60 days. This ceremony is expected to create necessary secure parameters for the Zero-Knowledge Proof protocol.
During the Lumino ceremony, multiple participants carry out several rounds of calculation in the form of a relay, that is to say, the current participant need to use the calculation results of the previous participant as the input of this round, and the calculation output become the calculation input of the next participant as well. After a certain number of rounds, the output of the last participant is the final result of the whole ceremony, namely the system initialization parameters that Plonk thatalgorithm of PlatON will choose. Obviously, the more participants take part in the ceremony, the safer the parameters will be.
As a practical and efficient Zero-Knowledge Proof algorithm, Plonk is commonly used in PlatON projects and communities, which is characterized by a one-time initialization process, that is, running once can be used to deploy multiple applications. Providing necessary initialization parameters for Plonk algorithm through Lumino ceremony means that no one can master the secret information behind the parameters, which can be used to cheat players in the whole system. Lumino ceremony will lay a solid foundation for the security of PlatON.