Skip to content

Batch verification #81

@mmaker

Description

@mmaker

Given many proofs for linear statements, it should be possible to run batch verification.

Let ${(\vec K_i, c_i, \vec r_i)}_i$ be a sequence of sigma protocols transcripts for the statement $M_i \vec x_i = \vec X_i$. Then, for a $\mu$ be the hash of all the transcripts, we can check all of them at once via

$$ \sum_i \mu^i M_i \vec r_i = \sum_i \mu^i \vec K_i + \mu^i c_i \vec X_i $$

The batch function can implement this using multi-scalar multiplication. The implementation should be smart enough to recognize when simplifications can be applied because the matrix $M_i$, or the challenge $c_i$, or the instance $\vec X_i$ is repeated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions