We present a technique for aggregating Groth16 proofs in a manner that does not require additional setup ceremonies (here) that has applications to proof of custody.
The lead author is Anca Nitulescu.
Abstract: We present and implement SnarkPack, an argument for aggregating n Groth16 zkSNARKs with a O(log(n)) proof size and verifier time. Our techniques are inspired from the inner pairing product argument introduced by Bünz et al. with the difference that our final scheme does not require a different trusted setup, but it reuses the one from the pairing-based SNARK that it aggregates.
The key tool for our SnarkPack construction is a new commitment scheme that allows us to instantiate the inner product pairing argument of Bünz et al. by using existing powers of tau ceremony transcripts. We also describe a scheme that merge together a multi-exponentiation argument and an inner pairing product argument for some common randomness vector with minimal overhead. We further apply some optimisations to our protocol and illustrate its efficiency by implementing it.