cryptonite-0.15: Cryptography Primitives sink

LicenseBSD-style
MaintainerVincent Hanquez <vincent@snarc.org>
Stabilityexperimental
PortabilityGood
Safe HaskellNone
LanguageHaskell2010

Crypto.Random.Types

Description

 

Synopsis

Documentation

class (Functor m, Monad m) => MonadRandom m where

A monad constraint that allows to generate random bytes

Methods

getRandomBytes :: ByteArray byteArray => Int -> m byteArray

data MonadPseudoRandom gen a

A simple Monad class very similar to a State Monad with the state being a DRG.

Instances

class DRG gen where

A Deterministic Random Generator (DRG) class

Methods

randomBytesGenerate :: ByteArray byteArray => Int -> gen -> (byteArray, gen)

Generate N bytes of randomness from a DRG

withDRG :: DRG gen => gen -> MonadPseudoRandom gen a -> (a, gen)

Run a pure computation with a Deterministic Random Generator in the MonadPseudoRandom