Crypto.Hash.BLAKE2.BLAKE2sp

blake2-0.3.0.1: A library providing BLAKE2

Maintainer | John Galt <jgalt@centromere.net>
Stability | experimental
Portability | POSIX
Safe Haskell | None
Language | Haskell2010

Crypto.Hash.BLAKE2.BLAKE2sp

Contents

- Types
- Functions

Description

Synopsis

- type BLAKE2spState = ForeignPtr BLAKE2spStruct
- initialize :: Int -> BLAKE2spState
- initialize' :: Int -> ByteString -> BLAKE2spState
- update :: ByteString -> BLAKE2spState -> BLAKE2spState
- finalize :: Int -> BLAKE2spState -> ByteString
- hash :: Int -> ByteString -> ByteString -> ByteString

# Types

type BLAKE2spState = ForeignPtr BLAKE2spStruct #

The hash state.

# Functions

initialize #

Arguments

:: Int | Output length in bytes
-> BLAKE2spState |

Create a new hashing state.

initialize' #

Arguments

:: Int | Output length in bytes
-> ByteString | Key
-> BLAKE2spState |

Create a new keyed hashing state.

update #

Arguments

:: ByteString | Data to hash
-> BLAKE2spState | Hashing state
-> BLAKE2spState |

Add data to the hashing state.

finalize #

Arguments

:: Int | Output length in bytes
-> BLAKE2spState | Hashing state
-> ByteString |

Finalize the hashing state.

hash #

Arguments

:: Int | Output length in bytes
-> ByteString | Key
-> ByteString | Data to hash
-> ByteString |

Perform hashing all in one step. A common way of calling this function is `hash 32 mempty dataToHash` for applications which do not require keying.