cryptonite-0.29: Cryptography Primitives sink
LicenseBSD-style
MaintainerVincent Hanquez <vincent@snarc.org>
Stabilitystable
Portabilitygood
Safe HaskellNone
LanguageHaskell2010

Crypto.Cipher.Salsa

Description

 
Synopsis

Documentation

initialize #

Arguments

:: (ByteArrayAccess key, ByteArrayAccess nonce) 
=> Int

number of rounds (8,12,20)

-> key

the key (128 or 256 bits)

-> nonce

the nonce (64 or 96 bits)

-> State

the initial Salsa state

Initialize a new Salsa context with the number of rounds, the key and the nonce associated.

combine #

Arguments

:: ByteArray ba 
=> State

the current Salsa state

-> ba

the source to xor with the generator

-> (ba, State) 

Combine the salsa output and an arbitrary message with a xor, and return the combined output and the new state.

generate #

Arguments

:: ByteArray ba 
=> State

the current Salsa state

-> Int

the length of data to generate

-> (ba, State) 

Generate a number of bytes from the Salsa output directly

newtype State #

Salsa context

Constructors

State ScrubbedBytes 

Instances

Instances details
NFData State # 
Instance details

Defined in Crypto.Cipher.Salsa

Methods

rnf :: State -> () #