diff options
| author | J08nY | 2023-03-29 23:30:12 +0200 |
|---|---|---|
| committer | J08nY | 2023-03-29 23:30:12 +0200 |
| commit | 68a4698448f0d5c6b8d8af022c870b47dab8f1af (patch) | |
| tree | 7270a186adf9299d7906ad888a4b89d90c0c432d /test | |
| parent | 3790770c2bc6ca618df8a95f0f5efc15ce9eba21 (diff) | |
| download | pyecsca-codegen-68a4698448f0d5c6b8d8af022c870b47dab8f1af.tar.gz pyecsca-codegen-68a4698448f0d5c6b8d8af022c870b47dab8f1af.tar.zst pyecsca-codegen-68a4698448f0d5c6b8d8af022c870b47dab8f1af.zip | |
Fix montgomery multiplication.
Fixes pyecsca#33.
Diffstat (limited to 'test')
| -rw-r--r-- | test/test_impl.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/test/test_impl.py b/test/test_impl.py index a061a74..ea92f8a 100644 --- a/test/test_impl.py +++ b/test/test_impl.py @@ -1,4 +1,3 @@ -from binascii import hexlify from copy import copy from os.path import join from unittest import TestCase @@ -7,7 +6,6 @@ from click.testing import CliRunner from pyecsca.ec.params import get_params from pyecsca.ec.key_agreement import ECDH_SHA1 from pyecsca.ec.mult import LTRMultiplier, RTLMultiplier, CoronMultiplier, BinaryNAFMultiplier -from pyecsca.ec.point import Point from pyecsca.ec.signature import ECDSA_SHA1, SignatureResult from pyecsca.codegen.builder import build_impl @@ -30,7 +28,8 @@ class ImplTests(TestCase): other_args = [ ("--mul", "KARATSUBA", "--sqr", "KARATSUBA"), ("--mul", "TOOM_COOK", "--sqr", "TOOM_COOK"), - ("--red", "BARRETT") + ("--red", "BARRETT"), + ("--red", "MONTGOMERY") ] for additional in other_args: with runner.isolated_filesystem() as tmpdir: @@ -83,13 +82,16 @@ class SetupTests(ImplTests): def test_debug(self): runner = CliRunner() + def callback(target, mult, params): model, coords = target.debug() self.assertEqual(model, params.curve.model.shortname) self.assertEqual(coords, params.curve.coordinate_model.name) + self.do_basic_test(callback, runner, self.secp128r1, LTRMultiplier, ["add-1998-cmo", "dbl-1998-cmo"], "ltr", False, False, complete=False) + class KeyGenerationTests(ImplTests): def do_keygen_test(self, runner, params, mult_class, formulas, mult_name, **mult_kwargs): @@ -234,7 +236,6 @@ class ECDSATests(ImplTests): ecdsa = ECDSA_SHA1(copy(mult), params, mult.formulas["add"], pub.to_model(params.curve.coordinate_model, params.curve), priv) - signature_data = target.ecdsa_sign(data) result = SignatureResult.from_DER(signature_data) self.assertTrue(ecdsa.verify_data(result, data)) |
