mirror of https://github.com/zcash/mpc.git
Reorganization of multicore/qap/spair.
This commit is contained in:
parent
5f50eea70d
commit
1571ff5f90
|
@ -13,10 +13,7 @@ extern crate env_logger;
|
|||
extern crate time;
|
||||
extern crate ansi_term;
|
||||
|
||||
mod multicore;
|
||||
mod qap;
|
||||
mod protocol;
|
||||
mod spair;
|
||||
|
||||
use snark::*;
|
||||
use self::protocol::*;
|
||||
|
|
|
@ -8,12 +8,7 @@ extern crate crossbeam;
|
|||
extern crate rustc_serialize;
|
||||
extern crate bincode;
|
||||
|
||||
mod multicore;
|
||||
mod protocol;
|
||||
mod spair;
|
||||
#[cfg(feature = "snark")]
|
||||
mod qap;
|
||||
|
||||
use self::protocol::*;
|
||||
|
||||
use rand::Rng;
|
||||
|
|
|
@ -35,16 +35,19 @@
|
|||
|
||||
use crossbeam;
|
||||
use bn::*;
|
||||
use spair::*;
|
||||
use multicore::*;
|
||||
|
||||
#[cfg(feature = "snark")]
|
||||
use qap::*;
|
||||
#[cfg(feature = "snark")]
|
||||
use snark::*;
|
||||
|
||||
mod secrets;
|
||||
mod spair;
|
||||
mod multicore;
|
||||
pub use self::secrets::*;
|
||||
use self::spair::*;
|
||||
use self::multicore::*;
|
||||
|
||||
#[cfg(feature = "snark")]
|
||||
mod qap;
|
||||
|
||||
/// The powers of tau.
|
||||
#[derive(Clone, RustcEncodable, RustcDecodable)]
|
||||
|
@ -123,7 +126,7 @@ impl Stage2Contents {
|
|||
#[cfg(feature = "snark")]
|
||||
pub fn new(cs: &CS, stage1: &Stage1Contents) -> Self {
|
||||
// evaluate QAP for the next round
|
||||
let (at, bt1, bt2, ct) = evaluate_qap(&stage1.v1, &stage1.v2, cs);
|
||||
let (at, bt1, bt2, ct) = qap::evaluate(&stage1.v1, &stage1.v2, cs);
|
||||
|
||||
Stage2Contents {
|
||||
vk_a: G2::one(),
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
use bn::*;
|
||||
use snark::*;
|
||||
use multicore::*;
|
||||
use super::multicore::*;
|
||||
|
||||
/// Evaluates the QAP A, B and C polynomials at tau given the powers of tau.
|
||||
/// Converts the powers of tau in G1 and G2 into the lagrange basis with an FFT
|
||||
/// Extends with Z(tau) as (effectively) done in libsnark.
|
||||
pub fn evaluate_qap(g1_powers: &[G1], g2_powers: &[G2], cs: &CS) -> (Vec<G1>, Vec<G1>, Vec<G2>, Vec<G1>)
|
||||
pub fn evaluate(g1_powers: &[G1], g2_powers: &[G2], cs: &CS) -> (Vec<G1>, Vec<G1>, Vec<G2>, Vec<G1>)
|
||||
{
|
||||
assert_eq!(g1_powers.len(), cs.d+1);
|
||||
assert_eq!(g2_powers.len(), cs.d+1);
|
|
@ -1,7 +1,7 @@
|
|||
use bn::*;
|
||||
use rand::Rng;
|
||||
use spair::*;
|
||||
#[cfg(feature = "snark")]
|
||||
use super::spair::{Spair, same_power};
|
||||
#[cfg(test)]
|
||||
use snark::*;
|
||||
use rustc_serialize::{Encodable, Encoder, Decodable, Decoder};
|
||||
|
||||
|
@ -231,7 +231,6 @@ impl PrivateKey {
|
|||
self.gamma = self.gamma * other.gamma;
|
||||
}
|
||||
|
||||
#[cfg(feature = "snark")]
|
||||
#[cfg(test)]
|
||||
pub fn libsnark_keypair(&self, cs: &CS) -> Keypair {
|
||||
Keypair::generate(
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
use rand::Rng;
|
||||
use bn::*;
|
||||
use crossbeam;
|
||||
use multicore::*;
|
||||
use rustc_serialize::{Encodable, Encoder, Decodable, Decoder};
|
||||
|
||||
#[derive(Clone, PartialEq, Eq)]
|
|
@ -5,10 +5,7 @@ extern crate crossbeam;
|
|||
extern crate rustc_serialize;
|
||||
extern crate bincode;
|
||||
|
||||
mod multicore;
|
||||
mod qap;
|
||||
mod protocol;
|
||||
mod spair;
|
||||
|
||||
use std::fs::File;
|
||||
use std::io::{Read, Write};
|
||||
|
|
Loading…
Reference in New Issue