aboutsummaryrefslogtreecommitdiff
path: root/test/ec/test_curve.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/ec/test_curve.py')
-rw-r--r--test/ec/test_curve.py22
1 files changed, 19 insertions, 3 deletions
diff --git a/test/ec/test_curve.py b/test/ec/test_curve.py
index a68edcf..fa935fa 100644
--- a/test/ec/test_curve.py
+++ b/test/ec/test_curve.py
@@ -11,7 +11,9 @@ class CurveTests(TestCase):
def setUp(self):
self.secp128r1 = get_params("secg", "secp128r1", "projective")
self.base = self.secp128r1.generator
+ self.affine_base = self.base.to_affine()
self.curve25519 = get_params("other", "Curve25519", "xz")
+ self.ed25519 = get_params("other", "Ed25519", "projective")
def test_init(self):
with self.assertRaises(ValueError):
@@ -31,13 +33,27 @@ class CurveTests(TestCase):
X=Mod(0x161ff7528b899b2d0c28607ca52c5b86, self.secp128r1.curve.prime),
Y=Mod(0xcf5ac8395bafeb13c02da292dded7a83, self.secp128r1.curve.prime),
Z=Mod(1, self.secp128r1.curve.prime))
- assert self.secp128r1.curve.is_on_curve(pt)
- assert self.secp128r1.curve.is_on_curve(pt.to_affine())
+ self.assertTrue(self.secp128r1.curve.is_on_curve(pt))
+ self.assertTrue(self.secp128r1.curve.is_on_curve(pt.to_affine()))
other = Point(self.secp128r1.curve.coordinate_model,
X=Mod(0x161ff7528b899b2d0c28607ca52c5b86, self.secp128r1.curve.prime),
Y=Mod(0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, self.secp128r1.curve.prime),
Z=Mod(1, self.secp128r1.curve.prime))
- assert not self.secp128r1.curve.is_on_curve(other)
+ self.assertFalse(self.secp128r1.curve.is_on_curve(other))
+
+ def test_affine_add(self):
+ self.assertIsNotNone(self.secp128r1.curve.affine_add(self.affine_base, self.affine_base))
+
+ def test_affine_double(self):
+ self.assertIsNotNone(self.secp128r1.curve.affine_double(self.affine_base))
+
+ def test_affine_negate(self):
+ self.assertIsNotNone(self.secp128r1.curve.affine_negate(self.affine_base))
+
+ def test_neutral_is_affine(self):
+ self.assertFalse(self.secp128r1.curve.neutral_is_affine)
+ self.assertFalse(self.curve25519.curve.neutral_is_affine)
+ self.assertTrue(self.ed25519.curve.neutral_is_affine)
def test_eq(self):
self.assertEqual(self.secp128r1.curve, self.secp128r1.curve)