Safe Haskell | None |
---|---|
Language | Haskell2010 |
Definitions of the groups the pairing is defined on
Synopsis
- class Monoid g => CyclicGroup g where
- type G1 = Point Fq
- type G2 = Point Fq2
- type GT = Fq12
- b1 :: Fq
- b2 :: Fq2
- g1 :: G1
- g2 :: G2
- groupFromX :: (Validate (Point a), FromX a) => (a -> a -> a) -> a -> Maybe (Point a)
- hashToG1 :: MonadRandom m => ByteString -> m (Maybe G1)
- isInGT :: GT -> Bool
- isOnCurveG1 :: G1 -> Bool
- isOnCurveG2 :: G2 -> Bool
- fromByteStringG1 :: FromSerialisedForm u => u -> LByteString -> Either Text G1
- fromByteStringG2 :: FromSerialisedForm u => u -> LByteString -> Either Text G2
- fromByteStringGT :: FromUncompressedForm u => u -> LByteString -> Either Text GT
Documentation
class Monoid g => CyclicGroup g where Source #
order :: Proxy g -> Integer Source #
expn :: AsInteger e => g -> e -> g Source #
random :: MonadRandom m => m g Source #
Instances
CyclicGroup GT Source # | |
CyclicGroup G2 Source # | |
CyclicGroup G1 Source # | |
hashToG1 :: MonadRandom m => ByteString -> m (Maybe G1) Source #
isOnCurveG1 :: G1 -> Bool Source #
Test whether a value in G1 satisfies the corresponding curve equation
isOnCurveG2 :: G2 -> Bool Source #
Test whether a value in G2 satisfies the corresponding curve equation
fromByteStringG1 :: FromSerialisedForm u => u -> LByteString -> Either Text G1 Source #
fromByteStringG2 :: FromSerialisedForm u => u -> LByteString -> Either Text G2 Source #
fromByteStringGT :: FromUncompressedForm u => u -> LByteString -> Either Text GT Source #
Orphan instances
Semigroup GT Source # | |
Semigroup G2 Source # | |
Semigroup G1 Source # | |
Monoid GT Source # | |
Monoid G2 Source # | |
Monoid G1 Source # | |
Arbitrary G2 Source # | |
Arbitrary G1 Source # | |
Validate GT Source # | |
isValidElement :: GT -> Bool Source # | |
Validate G2 Source # | |
isValidElement :: G2 -> Bool Source # | |
Validate G1 Source # | |
isValidElement :: G1 -> Bool Source # | |
CyclicGroup GT Source # | |
CyclicGroup G2 Source # | |
CyclicGroup G1 Source # | |