package meerkat.mixer.proofs;

import meerkat.protobuf.Crypto;

import java.math.BigInteger;

/**
 * Created by talm on 14/01/17.
 */
public class DummySigmaTest extends SigmaProtocolTest<Crypto.BigInteger, BigInteger> {
    BigInteger seed;
    BigInteger x,y,z;

    @Override
    protected void generateRandomTrueStatement() {
        x = new BigInteger(100, rand); y = new BigInteger(100, rand); z = x.add(y);
    }

    @Override
    protected void generateRandomFalseStatement() {
        x = new BigInteger(100, rand);
        y = new BigInteger(100, rand);
        z = new BigInteger(100, rand);
    }

    @Override
    protected SigmaProtocol.Prover<Crypto.BigInteger, BigInteger> getNewProver() {
        return new DummySigmaProof.Prover(x, y, z, new BigInteger(100, rand));
    }

    @Override
    protected SigmaProtocol.Verifier<Crypto.BigInteger, BigInteger> getNewVerifier() {
        return new DummySigmaProof.Verifier(x, y, z);
    }

    @Override
    protected SigmaProtocol.Simulator<Crypto.BigInteger, BigInteger> getNewSimulator() {
        return new DummySigmaProof.Simulator(x, y, z);
    }

    @Override
    protected BigInteger getChallengeModulus() {
        return new BigInteger(100, rand);
    }
}
