cryptonite-0.25: Cryptography Primitives sink

License | BSD-style
Maintainer | Kei Hibino <ex8k.hibino@gmail.com>
Stability | experimental
Portability | unknown
Safe Haskell | None
Language | Haskell2010

Crypto.MAC.CMAC

Description

Provide the CMAC (Cipher based Message Authentification Code) base algorithm. http://en.wikipedia.org/wiki/CMAC http://csrc.nist.gov/publications/nistpubs/800-38B/SP_800-38B.pdf

Synopsis

- cmac :: (ByteArrayAccess bin, BlockCipher cipher) => cipher -> bin -> CMAC cipher
- data CMAC a
- subKeys :: (BlockCipher k, ByteArray ba) => k -> (ba, ba)

# Documentation

cmac Source #

Arguments

:: (ByteArrayAccess bin, BlockCipher cipher) |
=> cipher | key to compute CMAC with
-> bin | input message
-> CMAC cipher | output tag

compute a MAC using the supplied cipher

data CMAC a Source #

Authentication code

Instances

Eq (CMAC a) Source # |
Instance details Defined in Crypto.MAC.CMAC Methods (==) :: CMAC a -> CMAC a -> Bool Source # (/=) :: CMAC a -> CMAC a -> Bool Source #
ByteArrayAccess (CMAC a) Source # |
Instance details Defined in Crypto.MAC.CMAC Methods length :: CMAC a -> Int Source # withByteArray :: CMAC a -> (Ptr p -> IO a0) -> IO a0 Source # copyByteArrayToPtr :: CMAC a -> Ptr p -> IO () Source #

subKeys Source #

Arguments

:: (BlockCipher k, ByteArray ba) |
=> k | key to compute CMAC with
-> (ba, ba) | sub-keys to compute CMAC

make sub-keys used in CMAC