commit 9e0c922a934c352813e80b6cc9e6234645ae1621
parent b22524d4fcc34d97a13f2fa04da078389db303dc
Author: Jared Tobin <jared@jtobin.io>
Date: Sat, 6 Dec 2025 12:01:42 +0400
lib: tighten montgomery exports
Diffstat:
2 files changed, 42 insertions(+), 2 deletions(-)
diff --git a/lib/Numeric/Montgomery/Secp256k1/Curve.hs b/lib/Numeric/Montgomery/Secp256k1/Curve.hs
@@ -15,7 +15,27 @@
-- Montgomery form 'Wider' words, as well as arithmetic operations, with
-- domain derived from the secp256k1 elliptic curve field prime.
-module Numeric.Montgomery.Secp256k1.Curve where
+module Numeric.Montgomery.Secp256k1.Curve (
+ -- * Montgomery form, secp256k1 field prime modulus
+ Montgomery(..)
+ , render
+ , to
+ , from
+ , zero
+ , one
+
+ -- * Reduction and retrieval
+ , redc
+ , retr
+
+ -- * Montgomery arithmetic
+ , add
+ , sub
+ , mul
+ , sqr
+ , neg
+ , inv
+ ) where
import Control.DeepSeq
import qualified Data.Choice as C
diff --git a/lib/Numeric/Montgomery/Secp256k1/Scalar.hs b/lib/Numeric/Montgomery/Secp256k1/Scalar.hs
@@ -15,7 +15,27 @@
-- Montgomery form 'Wider' words, as well as arithmetic operations, with
-- domain derived from the secp256k1 elliptic curve scalar group order.
-module Numeric.Montgomery.Secp256k1.Scalar where
+module Numeric.Montgomery.Secp256k1.Scalar (
+ -- * Montgomery form, secp256k1 scalar group order modulus
+ Montgomery(..)
+ , render
+ , to
+ , from
+ , zero
+ , one
+
+ -- * Reduction and retrieval
+ , redc
+ , retr
+
+ -- * Montgomery arithmetic
+ , add
+ , sub
+ , mul
+ , sqr
+ , neg
+ , inv
+ ) where
import Control.DeepSeq
import qualified Data.Choice as C