Skip to content

Commit cad147d

Browse files
committed
test coverage for keys module
1 parent a79281d commit cad147d

File tree

1 file changed

+34
-1
lines changed

1 file changed

+34
-1
lines changed

src/ecdsa/test_keys.py

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@
2222
sigdecode_der,
2323
sigdecode_strings,
2424
)
25-
from .curves import NIST256p
25+
from .curves import NIST256p, Curve, BRAINPOOLP160r1
26+
from .ellipticcurve import Point
27+
from .ecdsa import generator_brainpoolp160r1
2628

2729

2830
class TestVerifyingKeyFromString(unittest.TestCase):
@@ -207,6 +209,17 @@ def test_VerifyingKey_inequality_on_same_curve(self):
207209
def test_SigningKey_inequality_on_same_curve(self):
208210
self.assertNotEqual(self.sk, self.sk2)
209211

212+
def test_inequality_on_wrong_types(self):
213+
self.assertNotEqual(self.vk, self.sk)
214+
215+
def test_from_public_point_old(self):
216+
pj = self.vk.pubkey.point
217+
point = Point(pj.curve(), pj.x(), pj.y())
218+
219+
vk = VerifyingKey.from_public_point(point, self.vk.curve)
220+
221+
self.assertEqual(vk, self.vk)
222+
210223

211224
class TestSigningKey(unittest.TestCase):
212225
"""
@@ -458,3 +471,23 @@ def test_SigningKey_with_unlikely_value():
458471
vk = sk.verifying_key
459472
sig = sk.sign(b"hello")
460473
assert vk.verify(sig, b"hello")
474+
475+
476+
def test_SigningKey_with_custom_curve_old_point():
477+
generator = generator_brainpoolp160r1
478+
generator = Point(
479+
generator.curve(), generator.x(), generator.y(), generator.order(),
480+
)
481+
482+
curve = Curve(
483+
"BRAINPOOLP160r1",
484+
generator.curve(),
485+
generator,
486+
(1, 3, 36, 3, 3, 2, 8, 1, 1, 1),
487+
)
488+
489+
sk = SigningKey.from_secret_exponent(12, curve)
490+
491+
sk2 = SigningKey.from_secret_exponent(12, BRAINPOOLP160r1)
492+
493+
assert sk.privkey == sk2.privkey

0 commit comments

Comments
 (0)