Data.LargeWord

Crypto-4.2.5.1: Collects together existing Haskell cryptographic functions into a package

Copyright | (c) Dominic Steinitz 2004
License | BSD-style (see the file ReadMe.tex)
Maintainer | dominic.steinitz@blueyonder.co.uk
Stability | experimental
Portability | portable
Safe Haskell | Safe
Language | Haskell98

Data.LargeWord

Description

Provides Word128, Word192 and Word256 and a way of producing other large words if required.

# Documentation

data LargeKey a b

Instances

AESKey Word256 |
AESKey Word192 |
AESKey Word128 |
(Ord a, Bits a, Bounded a, Integral a, LargeWord a, Bits b, Bounded b, Integral b, LargeWord b) => Bounded (LargeKey a b) |
Enum (LargeKey a b) |
(Eq a, Eq b) => Eq (LargeKey a b) |
(Ord a, Bits a, LargeWord a, Ord b, Bits b, LargeWord b) => Integral (LargeKey a b) |
(Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => Num (LargeKey a b) |
(Ord a, Ord b) => Ord (LargeKey a b) |
(Ord a, Bits a, LargeWord a, Ord b, Bits b, LargeWord b) => Real (LargeKey a b) |
(Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => Show (LargeKey a b) |
(Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => Bits (LargeKey a b) |

type Word96 = LargeKey Word32 Word64

type Word128 = LargeKey Word64 Word64

type Word160 = LargeKey Word32 Word128

type Word192 = LargeKey Word64 Word128

type Word224 = LargeKey Word32 Word192

type Word256 = LargeKey Word64 Word192