diff options
| author | J08nY | 2023-10-05 13:59:04 +0200 |
|---|---|---|
| committer | J08nY | 2023-10-05 13:59:04 +0200 |
| commit | 01f049138e1cfa8df1600f271299db8322957615 (patch) | |
| tree | d7eb2295323f0dee584b3bf62d72e7512afe642c /test | |
| parent | 17c03a2bc34598a91cd897012270ad0cc875f23a (diff) | |
| download | pyecsca-codegen-01f049138e1cfa8df1600f271299db8322957615.tar.gz pyecsca-codegen-01f049138e1cfa8df1600f271299db8322957615.tar.zst pyecsca-codegen-01f049138e1cfa8df1600f271299db8322957615.zip | |
Enable faster implementation in simulator tests.
Diffstat (limited to 'test')
| -rw-r--r-- | test/test_simulator.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/test/test_simulator.py b/test/test_simulator.py index e5a1c9d..104d57c 100644 --- a/test/test_simulator.py +++ b/test/test_simulator.py @@ -5,6 +5,7 @@ import pytest from pyecsca.ec.key_agreement import ECDH_SHA1 from pyecsca.ec.mult import LTRMultiplier, RTLMultiplier from pyecsca.ec.signature import ECDSA_SHA1, SignatureResult +from rainbow import TraceConfig, HammingWeight from pyecsca.codegen.builder import build_impl from pyecsca.codegen.client import SimulatorTarget @@ -46,6 +47,10 @@ def do_basic_test( "STM32F3", "--ecdsa" if ecdsa else "--no-ecdsa", "--ecdh" if ecdh else "--no-ecdh", + "--red", + "MONTGOMERY", + "-D", + "BN_NON_CONST", params.curve.model.shortname, params.curve.coordinate_model.name, *formulas, @@ -53,7 +58,7 @@ def do_basic_test( ".", ], ) - target = SimulatorTarget(params.curve.model, params.curve.coordinate_model) + target = SimulatorTarget(params.curve.model, params.curve.coordinate_model, trace_config=TraceConfig(register=HammingWeight())) target.connect(binary=join(tmpdir, "pyecsca-codegen-CW308_STM32F3.elf")) target.set_params(params) formula_instances = [ @@ -126,6 +131,7 @@ def test_debug(cli_runner, curve32): def test_keygen(mult_name, mult_class, cli_runner, curve32): def callback(target, mult, params): priv, pub = target.generate() + print(len(target.trace)) assert params.curve.is_on_curve(pub) expected = mult.multiply(priv).to_affine() assert pub == expected |
