FlexProofs: A Vector Commitment with Flexible Linear Time for Computing All Proofs
Jing Liu, Liang Feng Zhang
TL;DR
FlexProofs tackles efficient, scalable proof openings for vector inputs in multi-user zkSNARK settings by introducing a novel Functional Commitment (FC) for batch openings and embedding it into a two-layer Vector Commitment (VC) with a Polynomial Commitment (PC). This design yields OpenAll in $O(N)$ time with a tunable batch parameter $b$, while remaining directly compatible with zkSNARKs that encode inputs as multi-linear polynomials. The approach supports practical applications such as verifiable secret sharing (VSS) and verifiable robust aggregation (VRA) and demonstrates substantial real-world speedups over HydraProofs (up to ${6\times}$ for $N=2^{16}$ when $b= ext{log}^2 N$). Overall, FlexProofs provides a scalable, zkSNARK-friendly mechanism for batch openings in VC/FC frameworks with clear efficiency and security guarantees.
Abstract
In this paper, we introduce FlexProofs, a new vector commitment (VC) scheme that achieves two key properties: (1) the prover can generate all individual opening proofs for a vector of size $N$ in optimal time ${\cal O}(N)$, and there is a flexible batch size parameter $b$ that can be increased to further reduce the time to generate all proofs; and (2) the scheme is directly compatible with a family of zkSNARKs that encode their input as a multi-linear polynomial. As a critical building block, we propose the first functional commitment (FC) scheme for multi-exponentiations with batch opening. Compared with HydraProofs, the only existing VC scheme that computes all proofs in optimal time ${\cal O}(N)$ and is directly compatible with zkSNARKs, FlexProofs may speed up the process of generating all proofs, if the parameter $b$ is properly chosen. Our experiments show that for $N=2^{16}$ and $b=\log^2 N$, FlexProofs can be $6\times$ faster than HydraProofs. Moreover, when combined with suitable zkSNARKs, FlexProofs enable practical applications such as verifiable secret sharing and verifiable robust aggregation.
