| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Bulletproofs.MultiRangeProof
Synopsis
- data RangeProof f = RangeProof {}
- data RangeProofError
- generateProof :: (AsInteger f, Eq f, Field f, Show f, MonadRandom m, MonadFail m) => Integer -> [(Integer, Integer)] -> ExceptT RangeProofError m (RangeProof f)
- generateProofUnsafe :: forall f m. (AsInteger f, Eq f, Field f, Show f, MonadRandom m, MonadFail 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 #
Constructors
| RangeProof | |
Fields
| |
Instances
| Eq f => Eq (RangeProof f) Source # | |
Defined in Bulletproofs.RangeProof.Internal | |
| Show f => Show (RangeProof f) Source # | |
Defined in Bulletproofs.RangeProof.Internal Methods showsPrec :: Int -> RangeProof f -> ShowS # show :: RangeProof f -> String # showList :: [RangeProof f] -> ShowS # | |
data RangeProofError Source #
Constructors
| 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
| Eq RangeProofError Source # | |
Defined in Bulletproofs.RangeProof.Internal Methods (==) :: RangeProofError -> RangeProofError -> Bool # (/=) :: RangeProofError -> RangeProofError -> Bool # | |
| Show RangeProofError Source # | |
Defined in Bulletproofs.RangeProof.Internal Methods showsPrec :: Int -> RangeProofError -> ShowS # show :: RangeProofError -> String # showList :: [RangeProofError] -> ShowS # | |
Arguments
| :: (AsInteger f, Eq f, Field f, Show f, MonadRandom m, MonadFail 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 list of values lies in a specific range
Arguments
| :: (AsInteger f, Eq f, Field f, Show f, MonadRandom m, MonadFail 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