rlwe-challenges-0.1.0.1: Ring-LWE/LWR challenges using Lol.

Copyright(c) Eric Crockett 2011-2017
Chris Peikert 2011-2017
LicenseGPL-2
Maintainerecrockett0@email.com
Stabilityexperimental
PortabilityPOSIX
Safe HaskellNone
LanguageHaskell2010

Crypto.RLWE.Challenges.Generate

Description

Generates challenges in non-legacy proto format.

Synopsis

Documentation

generateMain :: FilePath -> BeaconAddr -> [ChallengeParams] -> IO () Source #

Generate and serialize challenges given the path to the root of the tree and an initial beacon address.

genChallengeU :: MonadRandom m => ChallengeParams -> BeaconAddr -> m ChallengeU Source #

Generate a challenge with the given parameters.

writeChallengeU :: FilePath -> String -> ChallengeU -> IO () Source #

Writes a ChallengeU to a file given a path to the root of the tree and the name of the challenge.

instanceCont :: (RLWECtx t m zq rrq, Random zq, Random (LiftOf rrq), OrdFloat (LiftOf rrq), MonadRandom rnd, ToRational v) => v -> Int -> rnd (Cyc t m zq, [Sample t m zq rrq]) Source #

Generate a continuous RLWE instance along with its (uniformly random) secret, using the given scaled variance and number of desired samples.

instanceDisc :: (RLWECtx t m zq, Random zq, MonadRandom rnd, ToRational v) => v -> Int -> rnd (Cyc t m zq, [Sample t m zq]) Source #

Generate a discrete RLWE instance along with its (uniformly random) secret, using the given scaled variance and number of desired samples.

instanceRLWR :: (RLWRCtx t m zq zp, Random zq, MonadRandom rnd) => Int -> rnd (Cyc t m zq, [Sample t m zq zp]) Source #

Generate a discrete RLWR instance along with its (uniformly random) secret, using the given scaled variance and number of desired samples.