aboutsummaryrefslogtreecommitdiff
path: root/test/ec/test_key_generation.py
diff options
context:
space:
mode:
authorJ08nY2020-02-11 20:44:45 +0100
committerJ08nY2020-02-11 20:44:45 +0100
commit11bd56b296f1620932f098a6037f0807e7f6616f (patch)
tree2a791114a710ab49af523cf1ba2144646ef9ad90 /test/ec/test_key_generation.py
parent4e2bd346baf2db39391deb49e9bdb9d89f94101a (diff)
downloadpyecsca-11bd56b296f1620932f098a6037f0807e7f6616f.tar.gz
pyecsca-11bd56b296f1620932f098a6037f0807e7f6616f.tar.zst
pyecsca-11bd56b296f1620932f098a6037f0807e7f6616f.zip
Diffstat (limited to 'test/ec/test_key_generation.py')
-rw-r--r--test/ec/test_key_generation.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/ec/test_key_generation.py b/test/ec/test_key_generation.py
new file mode 100644
index 0000000..59f3b23
--- /dev/null
+++ b/test/ec/test_key_generation.py
@@ -0,0 +1,26 @@
+from unittest import TestCase
+
+from pyecsca.ec.curves import get_params
+from pyecsca.ec.key_generation import KeyGeneration
+from pyecsca.ec.mult import LTRMultiplier
+
+
+class KeyGenerationTests(TestCase):
+
+ def setUp(self):
+ self.secp128r1 = get_params("secg", "secp128r1", "projective")
+ self.add = self.secp128r1.curve.coordinate_model.formulas["add-2007-bl"]
+ self.dbl = self.secp128r1.curve.coordinate_model.formulas["dbl-2007-bl"]
+ self.mult = LTRMultiplier(self.add, self.dbl)
+
+ def test_basic(self):
+ generator = KeyGeneration(self.mult, self.secp128r1)
+ priv, pub = generator.generate()
+ self.assertIsNotNone(priv)
+ self.assertIsNotNone(pub)
+ self.assertTrue(self.secp128r1.curve.is_on_curve(pub))
+ generator = KeyGeneration(self.mult, self.secp128r1, True)
+ priv, pub = generator.generate()
+ self.assertIsNotNone(priv)
+ self.assertIsNotNone(pub)
+ self.assertTrue(self.secp128r1.curve.is_on_curve(pub))