Constructs a new batch verifier.
The ciphersuite to use for verification
Performs batch verification, returning nothing if all signatures were valid and throwing an error otherwise, or if the batch is empty.
The batch verification equation is:
h_G * -[sum(z_i * s_i)]P_G + sum([z_i]R_i + [z_i * c_i]VK_i) = 0_G
which we split out into:
h_G * -[sum(z_i * s_i)]P_G + sum([z_i]R_i) + sum([z_i * c_i]VK_i) = 0_G
so that we can use multiscalar multiplication speedups.
where for each signature i,
As follows elliptic curve scalar multiplication convention, scalar variables are lowercase and group point variables are uppercase. This does not exactly match the RedDSA notation in the protocol specification section B.1.
A batch verification context.