Skip to main content

build_kani_diamond

Function build_kani_diamond 

Source
pub fn build_kani_diamond(
    e0: &Curve2,
    phi_gen: &Point2,
    ell_phi: u64,
    a: u32,
    gamma_gen: &Point2,
    c: u64,
) -> Option<KaniDiamond>
Expand description

Build a Kani diamond over 𝔽_{p²}: the secret side φ is an ell_phi^a-isogeny with kernel ⟨phi_gen⟩; the auxiliary side γ is a c-isogeny (c an odd prime) with kernel ⟨gamma_gen⟩. Succeeds only when c + ell_phi^a is a power of two — the Kani degree condition.