aboutsummaryrefslogtreecommitdiff
path: root/pyecsca/ec/mod.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyecsca/ec/mod.py')
-rw-r--r--pyecsca/ec/mod.py21
1 files changed, 6 insertions, 15 deletions
diff --git a/pyecsca/ec/mod.py b/pyecsca/ec/mod.py
index a28949c..3f97637 100644
--- a/pyecsca/ec/mod.py
+++ b/pyecsca/ec/mod.py
@@ -2,7 +2,11 @@ import random
import secrets
from functools import wraps, lru_cache
from abc import ABC, abstractmethod
-from typing import Type
+from public import public
+
+from .error import NonInvertibleError, NonResidueError
+from .context import ResultAction
+
has_gmp = False
try:
@@ -12,10 +16,6 @@ try:
except ImportError:
pass
-from public import public
-
-from .context import ResultAction
-
@public
def gcd(a, b):
@@ -92,16 +92,6 @@ def check(func):
@public
-class NonInvertibleError(ArithmeticError):
- pass
-
-
-@public
-class NonResidueError(ArithmeticError):
- pass
-
-
-@public
class RandomModAction(ResultAction):
"""A random sampling from Z_n."""
order: int
@@ -471,6 +461,7 @@ if has_gmp:
return GMPMod(self.x, self.n)
return GMPMod(gmpy2.powmod(self.x, gmpy2.mpz(n), self.n), self.n)
+
Mod = GMPMod
else:
Mod = RawMod