The top level circuits of Brevis zkFabric.
- ETH 2.0
sync-committee
, circuit to calculate the ssz commitment for the beacon sync committee and map the ssz representation to a poseidon hashbls-sig
, circuit to verify the aggregated bls12-381 signature over BN254 scalar field. The set of signers are represented in poseidon hash format, so that on-chain contract can verify that the signers are correct against the result ofsync-committee
circuit
- Cosmos Chain
ed25519
, a demo circuit to verify a batch of 8 ed25519 signatures over BN254 scalar field
circuit_test.go
, quickly test the correctness of a cuicuit.main.go
, completely go through the whole process of compile, setup, prove and verify steps. It can also be used to generate the benchmark of a circuit.
In addition to the standard gadgets provided by gnark
, a powerful zk-SNARK development framework, we implement more in our case. They are:
pairing-bls12381
over any finite fielded25519
over any finite fieldsha256
sha512
Run bls-sig circuit using Ingonyama's accelerated GPU library Icicle by running the script setup_icicle.sh
Please see the prerequisites required in the Icicle repo.
If you have questions or need help, you can find Ingonyama on discord