Identities of the future run on iden3


Circom and SnarkJS update: PLONK support!

The iden3 team is proud to announce that Circom and snarkJS library now support PLONK.

PLONK is a zero-knowledge schema that doesn’t require a specific trusted setup ceremony, which is a great advantage for some use cases.

This means developers can create their zkApp and deploy it straightforwardly without the need of a trusted setup ceremony.

While there is no need for a phase 2 ceremony, the existing Hermez phase 1 ceremony files of Perpetual Powers of Tau phase 1 output can be used for snarkjs PLONK circuits. You can find this files here and the full powers of tau ceremony here.

Generating a PLONK verifier is a similar process to creating a solidity verifier in snarkJS. The GAS cost of a PLONK verifier is about 290k gas compared with the 230k gas of groth16.

The snarkJS library is fully compatible with Circom, which means that all Circom circuits developed for zk-SNARKs can be reused and run in PLONK.

Some items in our roadmap for future developments are:

  • Custom constraints
  • Plookup
  • Recursive plonk

We expect that the entire cryptographic ecosystem will benefit from this tool. Now, it’s possible to develop a zkApp like a mixer, a game like Dark Forest, or anonymous voting during the morning and deploy it in the afternoon.

We will continue to contribute to the iden3 project by putting resources into the development of this roadmap and will keep sharing updates as soon as the code is ready to be open source.

Join our thriving zero-knowledge community on the iden3 Telegram group. You can also follow iden3 on Twitter.