Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data RangeProof f = RangeProof {}
- data RangeProofError
- generateProof :: (AsInteger f, Eq f, Field f, Show f, MonadRandom m) => Integer -> (Integer, Integer) -> ExceptT RangeProofError m (RangeProof f)
- generateProofUnsafe :: (AsInteger f, Eq f, Field f, Show f, MonadRandom m) => Integer -> (Integer, Integer) -> m (RangeProof f)
- verifyProof :: (AsInteger f, Eq f, Field f, Show f) => Integer -> Point -> RangeProof f -> Bool
Documentation
data RangeProof f Source #
RangeProof | |
|
Instances
data RangeProofError Source #
UpperBoundTooLarge Integer | The upper bound of the range is too large |
ValueNotInRange Integer | Value is not within the range required |
ValuesNotInRange [Integer] | Values are not within the range required |
NNotPowerOf2 Integer | Dimension n is required to be a power of 2 |
Instances
:: (AsInteger f, Eq f, Field f, Show f, MonadRandom m) | |
=> Integer | Upper bound of the range we want to prove |
-> (Integer, Integer) | Values we want to prove in range and their blinding factors |
-> ExceptT RangeProofError m (RangeProof f) |
Prove that a value lies in a specific range
:: (AsInteger f, Eq f, Field f, Show f, MonadRandom m) | |
=> Integer | Upper bound of the range we want to prove |
-> (Integer, Integer) | Values we want to prove in range and their blinding factors |
-> m (RangeProof f) |
Generate range proof from valid inputs