Abstract
Precompile contracts are subrutines that are executed on the client side for high efficiency. EIP-5988 proposes the inclusion of the Poseidon hash function to the current set of precompile contracts of the EVM. Poseidon is part of a new family of cryptographic hash functions known as arithmetization-friendly hash functions. This type of hash function allows the generation of simpler arithmetizations of programs, and hence, shorter proofs in SNARKs, STARKs, etc. Therefore, zk-rollups can benefit greatly by having access to cheaper and faster executions of Poseidon.
In order to make an informed decision on whether to include Poseidon as a precompile contract, this project proposed to analize the computational costs of executing Poseidon using Rust, which is the programming language currently use in reth.
In this short article, we summarize the results obtained, the progress achieved with respect to the original project proposal, and future work. Finally, we present our conclusions of the project.
Current Status
The aproved project proposal can be accessed from this link. For this project I received valuable feedback from mentors Ignacio and Kev.