zKpk
ZK friendly pre-compiles for op-stack chains by applying a minimal diff to op-geth
Screenshots



Problem Statement
We added Poseidon hash as a pre-compile to op-geth. This allows smart contract developers to call into this hash function from their solidity. Since Poseidon is a ZK friendly hash , a user can prove that they know the pre-image of a hash without revealing the said pre-image and an on-chain solidity verifier can verify the same. The idea is to add Zk friendly functions as pre-compiles / pre-deploys to this op-stack rollup , thus making it a zk -friendly rollup for develops to build on. We are running op-geth with op-node on goerli as our L1. This is made possible using OP-stack.
Solution
We use op-stack for our rollup.We added pre-compiles to op-geth, this includes adding circom compatable Poseidon hashing to the execution client and testing it.Adding a gas profile to op-geth for this pre-compileUsed foundry to call pre-compilesGenerate solidity verifier for Poseidon hash using circom libraryDevelopers can now call this precompile for zk applications
Hackathon
Scaling Ethereum 2023
2023
Contributors
- obscuren
3951 contributions
- karalabe
2529 contributions
- fjl
1339 contributions
- holiman
632 contributions
- tgerring
569 contributions
- zelig
377 contributions
- rjl493456442
329 contributions
- CJentzsch
226 contributions
- debris
212 contributions
- MariusVanDerWijden
200 contributions
- zsfelfoldi
174 contributions
- gballet
167 contributions
- nonsense
95 contributions
- s1na
84 contributions
- janos
81 contributions
- ucwong
75 contributions
- gluk256
53 contributions
- acud
53 contributions
- renaynay
47 contributions
- gavofyork
44 contributions
- Arachnid
42 contributions
- jsvisa
41 contributions
- lightclient
38 contributions
- vbuterin
34 contributions
- holisticode
33 contributions
- cubedro
32 contributions
- aaronbuchwald
31 contributions
- ligi
31 contributions
- nolash
29 contributions
- matthalp
29 contributions