mirror of
https://github.com/logos-storage/constantine.git
synced 2026-01-05 22:53:12 +00:00
* Pairing - initial commit - line functions - sparse Fp12 functions * Small fixes: - Line parametrized by twist for generic algorithm - Add a conjugate operator for quadratic extensions - Have frobenius use it - Create an Affine coordinate type for elliptic curve * Implement (failing) pairing test * Stash pairing debug session, temp switch Fp12 over Fp4 * Proper naive pairing on BLS12-381 * Frobenius map * Implement naive pairing for BN curves * Add pairing tests to CI + reduce time spent on lower-level tests * Test without assembler in Github Actions + less base layers test iterations
37 lines
1.2 KiB
Nim
37 lines
1.2 KiB
Nim
# Constantine
|
|
# Copyright (c) 2018-2019 Status Research & Development GmbH
|
|
# Copyright (c) 2020-Present Mamy André-Ratsimbazafy
|
|
# Licensed and distributed under either of
|
|
# * MIT license (license terms in the root directory or at http://opensource.org/licenses/MIT).
|
|
# * Apache v2 license (license terms in the root directory or at http://www.apache.org/licenses/LICENSE-2.0).
|
|
# at your option. This file may not be copied, modified, or distributed except according to those terms.
|
|
|
|
import
|
|
# Standard library
|
|
std/[unittest, times],
|
|
# Internals
|
|
../constantine/config/[common, curves],
|
|
../constantine/arithmetic,
|
|
../constantine/io/io_bigints,
|
|
../constantine/elliptic/[ec_weierstrass_affine, ec_weierstrass_projective, ec_scalar_mul],
|
|
# Test utilities
|
|
../helpers/prng_unsafe,
|
|
./support/ec_reference_scalar_mult,
|
|
./t_ec_template
|
|
|
|
const
|
|
Iters = 12
|
|
ItersMul = Iters div 4
|
|
|
|
run_EC_mul_distributive_tests(
|
|
ec = ECP_SWei_Proj[Fp[BN254_Snarks]],
|
|
ItersMul = ItersMul,
|
|
moduleName = "test_ec_weierstrass_projective_g1_mul_distributive_" & $BN254_Snarks
|
|
)
|
|
|
|
run_EC_mul_distributive_tests(
|
|
ec = ECP_SWei_Proj[Fp[BLS12_381]],
|
|
ItersMul = ItersMul,
|
|
moduleName = "test_ec_weierstrass_projective_g1_mul_distributive_" & $BLS12_381
|
|
)
|