lol-0.7.0.0: A library for lattice cryptography.

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

Crypto.Lol.RLWE.RLWR

Description

Functions and types for working with ring-LWR samples.

Synopsis

Documentation

type Sample cm zq zp = (cm zq, cm zp) Source #

An RLWR sample \( (a,b) \in R_q \times R_p\).

type RLWRCtx cm zq zp = (Cyclotomic (cm zq), Random (cm zq), Ring (cm zq), RescaleCyc cm zq zp) Source #

Common constraints for working with RLWR.

sample :: (RLWRCtx cm zq zp, MonadRandom rnd) => cm zq -> rnd (Sample cm zq zp) Source #

An RLWR sample with the given secret.

roundedProd :: RLWRCtx cm zq zp => cm zq -> cm zq -> cm zp Source #

The \(b\) component of an RLWR sample for secret \(s\) and given \(a\), produced by rounding \(a\cdot s\) in the decoding basis.