Struct bellperson::groth16::aggregate::GipaProof [−][src]
pub struct GipaProof<E: Engine> { pub nproofs: u32, pub comms_ab: Vec<(Output<E>, Output<E>)>, pub comms_c: Vec<(Output<E>, Output<E>)>, pub z_ab: Vec<(E::Fqk, E::Fqk)>, pub z_c: Vec<(E::G1, E::G1)>, pub final_a: E::G1Affine, pub final_b: E::G2Affine, pub final_c: E::G1Affine, pub final_vkey: (E::G2Affine, E::G2Affine), pub final_wkey: (E::G1Affine, E::G1Affine), }
Expand description
It contains all elements derived in the GIPA loop for both TIPP and MIPP at the same time.
Fields
nproofs: u32
comms_ab: Vec<(Output<E>, Output<E>)>
comms_c: Vec<(Output<E>, Output<E>)>
z_ab: Vec<(E::Fqk, E::Fqk)>
z_c: Vec<(E::G1, E::G1)>
final_a: E::G1Affine
final_b: E::G2Affine
final_c: E::G1Affine
final_vkey: (E::G2Affine, E::G2Affine)
final commitment keys $v$ and $w$ - there is only one element at the end for v1 and v2 hence it’s a tuple.
final_wkey: (E::G1Affine, E::G1Affine)
Implementations
Trait Implementations
impl<'de, E: Engine> Deserialize<'de> for GipaProof<E> where
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::G1: Deserialize<'de>,
E::G1: Deserialize<'de>,
E::G2Affine: Deserialize<'de>,
E::G2Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
E::G2Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
[src]
impl<'de, E: Engine> Deserialize<'de> for GipaProof<E> where
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::Fqk: Deserialize<'de>,
E::G1: Deserialize<'de>,
E::G1: Deserialize<'de>,
E::G2Affine: Deserialize<'de>,
E::G2Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
E::G2Affine: Deserialize<'de>,
E::G1Affine: Deserialize<'de>,
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl<E: Engine> Serialize for GipaProof<E> where
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::G1: Serialize,
E::G1: Serialize,
E::G2Affine: Serialize,
E::G2Affine: Serialize,
E::G1Affine: Serialize,
E::G1Affine: Serialize,
E::G1Affine: Serialize,
E::G2Affine: Serialize,
E::G1Affine: Serialize,
[src]
impl<E: Engine> Serialize for GipaProof<E> where
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::Fqk: Serialize,
E::G1: Serialize,
E::G1: Serialize,
E::G2Affine: Serialize,
E::G2Affine: Serialize,
E::G1Affine: Serialize,
E::G1Affine: Serialize,
E::G1Affine: Serialize,
E::G2Affine: Serialize,
E::G1Affine: Serialize,
[src]Auto Trait Implementations
impl<E> RefUnwindSafe for GipaProof<E> where
<E as Engine>::Fqk: RefUnwindSafe,
<E as Engine>::G1: RefUnwindSafe,
<E as Engine>::G1Affine: RefUnwindSafe,
<E as Engine>::G2Affine: RefUnwindSafe,
impl<E> Unpin for GipaProof<E> where
<E as Engine>::Fqk: Unpin,
<E as Engine>::G1: Unpin,
<E as Engine>::G1Affine: Unpin,
<E as Engine>::G2Affine: Unpin,
impl<E> UnwindSafe for GipaProof<E> where
<E as Engine>::Fqk: UnwindSafe,
<E as Engine>::G1: UnwindSafe,
<E as Engine>::G1Affine: UnwindSafe,
<E as Engine>::G2Affine: UnwindSafe,