The Poseidon hashing algorithm is deemed a zero-knowledge friendly cryptographic hash function; hashing is one of the most critical operations within state of the art zero-knowledge applications. The choice of SNARK in this case was PLONK instantiated with the BLS12-381 curve and the KZG polynomial commitment scheme and using ZK-Garage as the target library.
Poseidon is an integral part of optimizing the proofing processes involved in zero-knowledge based protocols and networks. More specifically, accelerating the Poseidon Hash Function cuts down on the time it takes to generate proofs and reduces the time to full verification improving performance.
In the category of the Poseidon hashing algorithm, there was an impressive submission by Zhenfei Zhang. Zhang took a unique approach by using a customizable proof system to construct a high-degree hash within a low-degree circuit. This approach aimed to make Poseidon more efficient and secure. (view here)
Zhang's solution introduced two key methods for gate construction, which played a crucial role in optimizing the implementation of the Poseidon hash circuit. These methods focused on minimizing constraints and improving computational efficiency. One method involved a special degree-5 custom gate computation, while the other employed a partial affine transform. By carefully handling input variables and selectors, Zhang's solution aimed to maximize the circuit's efficiency without compromising on security.
The results of Zhang's solution were truly impressive. It achieved a remarkable improvement of 124% over the baseline, while using only 196 constraints. This highlights the significant gains made in reducing constraints and improving efficiency. Zhang's innovative approach paves the way for enhanced performance and stronger security in networks, applications, and systems that rely on zero-knowledge technology.
The challenge revolved around implementing the Poseidon hashing algorithm with the aim of minimizing constraints or reducing the cost involved. In the context of zero-knowledge proofs, constraints represent the conditions or rules imposed on the prover during the process of generating a proof. These constraints ensure that the prover adheres to the required computations and protocols.
By reducing constraints in the Poseidon algorithm, we can achieve significant improvements in efficiency and security. When we decrease the number of constraints, it enhances efficiency in various ways. It reduces computational complexity, saves memory, and minimizes communication overhead. This leads to faster and more efficient proof generation.
In summary, the pursuit of accelerating the Poseidon Hash Function has a meaningful impact on the entire cryptographic landscape. It strengthens the foundations of cryptographic systems, applications, and networks, paving the way for increased robustness, security, speed, and scalability. Collaborative initiatives like ZPrize fuel progress, fostering partnerships between academia and industry and propelling the boundaries of zero-knowledge cryptography forward.
ZPrize 2023 is currently in the works and we want you to get involved! Head to our Discord to find out more.