# coding: utf-8
# PyGOST -- Pure Python GOST cryptographic functions library
-# Copyright (C) 2015-2020 Sergey Matveev <stargrave@stargrave.org>
+# Copyright (C) 2015-2023 Sergey Matveev <stargrave@stargrave.org>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
self.assertSequenceEqual(kek_34102012256(curve, prvB, pubA, ukm), vko)
def test_sequence(self):
- curve = CURVES["id-tc26-gost-3410-12-512-paramSetA"]
+ curve = CURVES["id-tc26-gost-3410-2012-256-paramSetA"]
for _ in range(10):
ukm = ukm_unmarshal(urandom(8))
prv1 = bytes2long(urandom(32))
kek2 = kek_34102012256(curve, prv2, pub2, ukm)
self.assertNotEqual(kek1, kek2)
+ def test_pub_is_not_on_curve(self):
+ with self.assertRaises(ValueError):
+ kek_34102012256(
+ CURVES["id-tc26-gost-3410-2012-256-paramSetA"],
+ bytes2long(urandom(32)),
+ pub_unmarshal(urandom(64)),
+ )
+
class TestVKO34102012512(TestCase):
"""RFC 7836