cryptonite-0.10: Cryptography Primitives sink

License | BSD-style
Maintainer | Vincent Hanquez <vincent@snarc.org>
Stability | experimental
Portability | unknown
Safe Haskell | None
Language | Haskell2010

Crypto.MAC.Poly1305

Contents

- Incremental MAC Functions
- One-pass MAC function

Description

Poly1305 implementation

Synopsis

- type Ctx = State
- data State
- newtype Auth = Auth Bytes
- authTag :: ByteArrayAccess b => b -> CryptoFailable Auth
- initialize :: ByteArrayAccess key => key -> CryptoFailable State
- update :: ByteArrayAccess ba => State -> ba -> State
- updates :: ByteArrayAccess ba => State -> [ba] -> State
- finalize :: State -> Auth
- auth :: (ByteArrayAccess key, ByteArrayAccess ba) => key -> ba -> Auth

# Documentation

type Ctx = State Source

Deprecated: use Poly1305 State instead

Poly1305 State. use State instead of Ctx

data State Source

Poly1305 State

Instances

ByteArrayAccess State Source |

newtype Auth Source

Poly1305 Auth

Constructors

Auth Bytes |

Instances

Eq Auth Source |
NFData Auth Source |
ByteArrayAccess Auth Source |

authTag :: ByteArrayAccess b => b -> CryptoFailable Auth Source

# Incremental MAC Functions

initialize :: ByteArrayAccess key => key -> CryptoFailable State Source

initialize a Poly1305 context

update :: ByteArrayAccess ba => State -> ba -> State Source

update a context with a bytestring

updates :: ByteArrayAccess ba => State -> [ba] -> State Source

updates a context with multiples bytestring

finalize :: State -> Auth Source

finalize the context into a digest bytestring

# One-pass MAC function

auth :: (ByteArrayAccess key, ByteArrayAccess ba) => key -> ba -> Auth Source

One-pass authorization creation