License | BSD-style |
---|---|
Maintainer | Vincent Hanquez <vincent@snarc.org> |
Stability | stable |
Portability | good |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Synopsis
- initialize :: (ByteArrayAccess key, ByteArrayAccess nonce) => Int -> key -> nonce -> State
- combine :: ByteArray ba => State -> ba -> (ba, State)
- generate :: ByteArray ba => State -> Int -> (ba, State)
- newtype State = State ScrubbedBytes
Documentation
:: (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.
:: 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 a number of bytes from the Salsa output directly