scipr-lab / libsnark

C++ library for zkSNARKs
Other
1.8k stars 570 forks source link

I want to compile libsnark into a window version. In the window environment, kc_A != GT<ppT>::one(), can you tell why? #159

Open shangsony opened 4 years ago

shangsony commented 4 years ago

enter_block("Online pairing computations"); enter_block("Check knowledge commitment for A is valid"); G1_precomp proof_g_A_g_precomp = ppT::precompute_G1(proof.g_A.g); G1_precomp proof_g_A_h_precomp = ppT::precompute_G1(proof.g_A.h); Fqk kc_A_1 = ppT::miller_loop(proof_g_A_g_precomp, pvk.vk_alphaA_g2_precomp); Fqk kc_A_2 = ppT::miller_loop(proof_g_A_h_precomp, pvk.pp_G2_one_precomp); GT kc_A = ppT::final_exponentiation(kc_A_1 * kc_A_2.unitary_inverse()); if (kc_A != GT::one()) { if (!inhibit_profiling_info) { print_indent(); printf("Knowledge commitment for A query incorrect.\n"); } result = false; }