aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/test_impl.py
diff options
context:
space:
mode:
authorJ08nY2020-02-20 15:06:18 +0100
committerJ08nY2020-02-20 15:06:18 +0100
commit92cb16e8103da998aa1bf226d24ef6771a92c5d5 (patch)
tree760e5f4921e8813b29748e7353a32168d99140cc /test/test_impl.py
parent5da1d167c203395103d220c450e29fece08f4198 (diff)
downloadpyecsca-codegen-92cb16e8103da998aa1bf226d24ef6771a92c5d5.tar.gz
pyecsca-codegen-92cb16e8103da998aa1bf226d24ef6771a92c5d5.tar.zst
pyecsca-codegen-92cb16e8103da998aa1bf226d24ef6771a92c5d5.zip
Allocate and initialize formula variables only once.
Diffstat (limited to 'test/test_impl.py')
-rw-r--r--test/test_impl.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/test/test_impl.py b/test/test_impl.py
index d93501d..8a2bfde 100644
--- a/test/test_impl.py
+++ b/test/test_impl.py
@@ -3,13 +3,13 @@ from unittest import TestCase
from click.testing import CliRunner
from pyecsca.ec.curves import get_params
-from pyecsca.ec.mult import LTRMultiplier, RTLMultiplier, CoronMultiplier
+from pyecsca.ec.mult import LTRMultiplier, RTLMultiplier, CoronMultiplier, BinaryNAFMultiplier
from pyecsca.codegen.builder import build_impl
from pyecsca.codegen.client import BinaryTarget
-class ImplementationTest(TestCase):
+class KeyGenerationTests(TestCase):
def setUp(self):
self.secp128r1 = get_params("secg", "secp128r1", "projective")
@@ -72,6 +72,12 @@ class ImplementationTest(TestCase):
self.do_basic_test(runner, self.secp128r1, CoronMultiplier,
["add-1998-cmo", "dbl-1998-cmo"], "coron")
+ def test_bnaf(self):
+ runner = CliRunner()
+ self.do_basic_test(runner, self.secp128r1, BinaryNAFMultiplier,
+ ["add-1998-cmo", "dbl-1998-cmo", "neg"], "bnaf")
+
# def test_ladder(self):
# runner = CliRunner()
# self.do_basic_test(runner, self.curve25519, LadderMultiplier, ["ladd-1987-m", "dbl-1987-m"], "ldr")
+ # # TODO: what about coords where generator is not affine?