mirror of
https://github.com/codex-storage/constantine.git
synced 2025-01-15 21:44:15 +00:00
a2f46f77b7
* Implement a Sage codegenerator for frobenius constants * Sage codegen for pairings * Autogen of endomorphism acceleration constants * The autogen fixed a copy-paste bug in lattice decomposition. We can use conditional negation now and save an add+dbl in scalar mul * small fixes * sage code for square root bls12-377 is not old * readme updates * Provide test suggestions for derive_frobenius * indentation + add equation form to sage * Sage test vector generator * Use the json vectors - includes type system workaround: generic sandwich https://github.com/nim-lang/Nim/issues/11225 - converting NimNode to typedesc: https://github.com/nim-lang/Nim/issues/6785 * Delete old sage code * Install nim-serialization and nim-json-serialization in CI * CI nimble install force yes
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
|
|
# Internals
|
|
../constantine/config/[type_fp, curves],
|
|
../constantine/towers,
|
|
../constantine/elliptic/ec_shortweierstrass_jacobian,
|
|
../constantine/elliptic/ec_shortweierstrass_projective,
|
|
# Test utilities
|
|
./t_ec_sage_template
|
|
|
|
run_scalar_mul_test_vs_sage(
|
|
ECP_ShortW_Proj[Fp[BLS12_377], NotOnTwist],
|
|
"t_ec_sage_bls12_377_g1_projective"
|
|
)
|
|
|
|
run_scalar_mul_test_vs_sage(
|
|
ECP_ShortW_Jac[Fp[BLS12_377], NotOnTwist],
|
|
"t_ec_sage_bls12_377_g1_jacobian"
|
|
)
|
|
|
|
run_scalar_mul_test_vs_sage(
|
|
ECP_ShortW_Proj[Fp2[BLS12_377], OnTwist],
|
|
"t_ec_sage_bls12_377_g2_projective"
|
|
)
|
|
|
|
run_scalar_mul_test_vs_sage(
|
|
ECP_ShortW_Jac[Fp2[BLS12_377], OnTwist],
|
|
"t_ec_sage_bls12_377_g2_jacobian"
|
|
)
|