]> Cypherpunks.ru repositories - pygost.git/blobdiff - pygost/gost3410_vko.py
gost3410_vko checks if pub is on the curve
[pygost.git] / pygost / gost3410_vko.py
index 0d49838b49c602e8492715f8d4e84461714ebe58..6c52f6d11b451eb9bc4e9186589bc0ebbe812cc3 100644 (file)
@@ -33,6 +33,8 @@ def ukm_unmarshal(ukm):
 
 
 def kek(curve, prv, pub, ukm):
+    if not curve.contains(pub):
+        raise ValueError("pub is not on the curve")
     key = curve.exp(prv, pub[0], pub[1])
     key = curve.exp(curve.cofactor * ukm, key[0], key[1])
     return pub_marshal(key)