Expand description
Labrador Verifier
This module implements the verifier side of the protocol in
Fig. 2 (and the verification algorithm in Fig. 3) of the paper. The prover
proof proof
is accepted iff every arithmetic check listed in Fig. 2
and lines 8–20 of Fig. 3 succeeds.
The verifier receives:
- a public statement
st
; - the CRS containing the Ajtai commitment matrices (\mathbf{A},\mathbf{B},\mathbf{C},\mathbf{D});
- a proof
proof
comprising [(\mathbf{u}_1,\mathbf{u}_2,,\vec p,,b’’^{(k)},\vec z,\tilde\mathbf t,\tilde\mathbf g,\tilde\mathbf h)]
exactly as dispatched by the prover.
§Outline of the nine verifier checks
The implementation follows Fig. 3 literally:
On failure the function returns VerifierError
precisely identifying the
violated condition.
Structs§
- Labrador
Verifier - Implements the algorithm executed by the verifier (\mathcal{V}) in the paper.