aboutsummaryrefslogtreecommitdiff
path: root/test/ec/test_curve.py
diff options
context:
space:
mode:
authorJ08nY2019-12-21 20:30:28 +0100
committerJ08nY2019-12-21 20:55:48 +0100
commit77c3141139be0c3f851dff92f8da6f463e29d57c (patch)
tree2835dc974bba3a6afccae437e745d1bf10843952 /test/ec/test_curve.py
parent4cde58b8b0826db51814fc930bfaa3ff3144bc4d (diff)
downloadpyecsca-77c3141139be0c3f851dff92f8da6f463e29d57c.tar.gz
pyecsca-77c3141139be0c3f851dff92f8da6f463e29d57c.tar.zst
pyecsca-77c3141139be0c3f851dff92f8da6f463e29d57c.zip
Diffstat (limited to 'test/ec/test_curve.py')
-rw-r--r--test/ec/test_curve.py28
1 files changed, 21 insertions, 7 deletions
diff --git a/test/ec/test_curve.py b/test/ec/test_curve.py
index 1adaf47..1f2ca1f 100644
--- a/test/ec/test_curve.py
+++ b/test/ec/test_curve.py
@@ -1,17 +1,19 @@
from unittest import TestCase
+from parameterized import parameterized
+
from pyecsca.ec.curve import EllipticCurve
+from pyecsca.ec.curves import get_curve
from pyecsca.ec.mod import Mod
from pyecsca.ec.model import MontgomeryModel
from pyecsca.ec.point import Point
-from .curves import get_secp128r1, get_curve25519
class CurveTests(TestCase):
def setUp(self):
- self.secp128r1 = get_secp128r1()
+ self.secp128r1 = get_curve("secp128r1", "projective")
self.base = self.secp128r1.generator
- self.curve25519 = get_curve25519()
+ self.curve25519 = get_curve("curve25519", "xz")
def test_init(self):
with self.assertRaises(ValueError):
@@ -39,10 +41,22 @@ class CurveTests(TestCase):
Z=Mod(1, self.secp128r1.curve.prime))
assert not self.secp128r1.curve.is_on_curve(other)
+ @parameterized.expand([
+ ("secp128r1","projective"),
+ ("secp256r1", "projective"),
+ ("secp521r1", "projective"),
+ ("curve25519", "xz"),
+ ("ed25519", "projective"),
+ ("ed448", "projective")
+ ])
+ def test_curve_utils(self, name, coords):
+ group = get_curve(name, coords)
+ try:
+ assert group.curve.is_on_curve(group.generator)
+ except NotImplementedError:
+ pass
+
def test_eq(self):
self.assertEqual(self.secp128r1.curve, self.secp128r1.curve)
self.assertNotEqual(self.secp128r1.curve, self.curve25519.curve)
-
- def test_repr(self):
- self.assertEqual(repr(self.secp128r1.curve),
- "EllipticCurve([a=340282366762482138434845932244680310780, b=308990863222245658030922601041482374867] on ShortWeierstrassModel() using EFDCoordinateModel(\"projective\" on short Weierstrass curves))")
+ self.assertNotEqual(self.secp128r1.curve, None)