示例#1
0
void Verifier::init_state() {
  mpz_init(prime);
#if NONINTERACTIVE == 1
#if PAIRING_LIB == PAIRING_PBC
  snprintf(scratch_str, BUFLEN - 1, "prime_f_%d.txt", num_bits_in_prime);
#else
  snprintf(scratch_str, BUFLEN - 1, "prime_libzm_%d.txt", num_bits_in_prime);
#endif
#else
  snprintf(scratch_str, BUFLEN - 1, "prime_%d.txt", num_bits_in_prime);
#endif
  load_txt_scalar(prime, scratch_str, const_cast<char *>("static_state"));

  if (crypto_in_use == CRYPTO_ELGAMAL)
    expansion_factor = 2;
  else
    expansion_factor = 1;

  v = new Venezia(ROLE_VERIFIER, crypto_in_use, png_in_use, num_bits_in_prime);
  curl = new CurlUtil();

#if NONINTERACTIVE == 0
  alloc_init_vec(&f_con_coins, num_repetitions * num_lin_pcp_queries);
#endif
}
示例#2
0
void load_pairing_prime(string type, int size, mpz_t prime) {
    char scratch_str[BUFLEN];
    snprintf(scratch_str, BUFLEN - 1, "prime_%s_%d.txt", type.c_str(), size);
    load_txt_scalar(prime, scratch_str, const_cast<char *>("static_state"));
}