def test_fp_point_add(self): curve = CurveDB().instantiate(name="secp112r1") Q = curve.point(0x123, 0x84bdce9a00a1895369a805a6c44e) self.assertTrue(Q.on_curve()) P = curve.point_addition(curve.G, Q) self.assertEqual(P.x, 0xbbabcf20193b825046cb2357bb87) self.assertEqual(P.y, 0x5625e546a0459574b5eff88d17b9)
def test_fp_point_add_neutral(self): curve = CurveDB().instantiate(name="secp112r1") Q = curve.point(0x9487239995a5ee76b55f9c2f098, 0x32df450fdbbe9dc44268aeb5ab8b) self.assertTrue(Q.on_curve()) P = curve.point_addition(curve.G, Q) self.assertEqual(P, curve.neutral_point)
def test_fp_point_dbl(self): curve = CurveDB().instantiate(name="secp112r1") P = curve.point_addition(curve.G, curve.G) self.assertEqual(P.x, 0x57cf52a0f9318000ee0bc032d756) self.assertEqual(P.y, 0x60aee03bbcff537a8d17401f006c)