cipher-des-0.0.6: DES and 3DES primitives
LicenseBSD-style
Stabilityexperimental
Portability???
Safe HaskellNone
LanguageHaskell98

Crypto.Cipher.TripleDES

Description

 
Synopsis

Documentation

data DES_EEE3 Source #

3DES with 3 different keys used all in the same direction

Instances

Instances details
Eq DES_EEE3 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

(==) :: DES_EEE3 -> DES_EEE3 -> Bool

(/=) :: DES_EEE3 -> DES_EEE3 -> Bool

BlockCipher DES_EEE3 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

blockSize :: DES_EEE3 -> Int Source #

ecbEncrypt :: DES_EEE3 -> ByteString -> ByteString Source #

ecbDecrypt :: DES_EEE3 -> ByteString -> ByteString Source #

cbcEncrypt :: DES_EEE3 -> IV DES_EEE3 -> ByteString -> ByteString Source #

cbcDecrypt :: DES_EEE3 -> IV DES_EEE3 -> ByteString -> ByteString Source #

cfbEncrypt :: DES_EEE3 -> IV DES_EEE3 -> ByteString -> ByteString Source #

cfbDecrypt :: DES_EEE3 -> IV DES_EEE3 -> ByteString -> ByteString Source #

ctrCombine :: DES_EEE3 -> IV DES_EEE3 -> ByteString -> ByteString Source #

xtsEncrypt :: (DES_EEE3, DES_EEE3) -> IV DES_EEE3 -> DataUnitOffset -> ByteString -> ByteString Source #

xtsDecrypt :: (DES_EEE3, DES_EEE3) -> IV DES_EEE3 -> DataUnitOffset -> ByteString -> ByteString Source #

aeadInit :: Byteable iv => AEADMode -> DES_EEE3 -> iv -> Maybe (AEAD DES_EEE3) Source #

Cipher DES_EEE3 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

data DES_EDE3 Source #

3DES with 3 different keys used in alternative direction

Instances

Instances details
Eq DES_EDE3 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

(==) :: DES_EDE3 -> DES_EDE3 -> Bool

(/=) :: DES_EDE3 -> DES_EDE3 -> Bool

BlockCipher DES_EDE3 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

blockSize :: DES_EDE3 -> Int Source #

ecbEncrypt :: DES_EDE3 -> ByteString -> ByteString Source #

ecbDecrypt :: DES_EDE3 -> ByteString -> ByteString Source #

cbcEncrypt :: DES_EDE3 -> IV DES_EDE3 -> ByteString -> ByteString Source #

cbcDecrypt :: DES_EDE3 -> IV DES_EDE3 -> ByteString -> ByteString Source #

cfbEncrypt :: DES_EDE3 -> IV DES_EDE3 -> ByteString -> ByteString Source #

cfbDecrypt :: DES_EDE3 -> IV DES_EDE3 -> ByteString -> ByteString Source #

ctrCombine :: DES_EDE3 -> IV DES_EDE3 -> ByteString -> ByteString Source #

xtsEncrypt :: (DES_EDE3, DES_EDE3) -> IV DES_EDE3 -> DataUnitOffset -> ByteString -> ByteString Source #

xtsDecrypt :: (DES_EDE3, DES_EDE3) -> IV DES_EDE3 -> DataUnitOffset -> ByteString -> ByteString Source #

aeadInit :: Byteable iv => AEADMode -> DES_EDE3 -> iv -> Maybe (AEAD DES_EDE3) Source #

Cipher DES_EDE3 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

data DES_EEE2 Source #

3DES where the first and third keys are equal, used in the same direction

Instances

Instances details
Eq DES_EEE2 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

(==) :: DES_EEE2 -> DES_EEE2 -> Bool

(/=) :: DES_EEE2 -> DES_EEE2 -> Bool

BlockCipher DES_EEE2 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

blockSize :: DES_EEE2 -> Int Source #

ecbEncrypt :: DES_EEE2 -> ByteString -> ByteString Source #

ecbDecrypt :: DES_EEE2 -> ByteString -> ByteString Source #

cbcEncrypt :: DES_EEE2 -> IV DES_EEE2 -> ByteString -> ByteString Source #

cbcDecrypt :: DES_EEE2 -> IV DES_EEE2 -> ByteString -> ByteString Source #

cfbEncrypt :: DES_EEE2 -> IV DES_EEE2 -> ByteString -> ByteString Source #

cfbDecrypt :: DES_EEE2 -> IV DES_EEE2 -> ByteString -> ByteString Source #

ctrCombine :: DES_EEE2 -> IV DES_EEE2 -> ByteString -> ByteString Source #

xtsEncrypt :: (DES_EEE2, DES_EEE2) -> IV DES_EEE2 -> DataUnitOffset -> ByteString -> ByteString Source #

xtsDecrypt :: (DES_EEE2, DES_EEE2) -> IV DES_EEE2 -> DataUnitOffset -> ByteString -> ByteString Source #

aeadInit :: Byteable iv => AEADMode -> DES_EEE2 -> iv -> Maybe (AEAD DES_EEE2) Source #

Cipher DES_EEE2 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

data DES_EDE2 Source #

3DES where the first and third keys are equal, used in alternative direction

Instances

Instances details
Eq DES_EDE2 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

(==) :: DES_EDE2 -> DES_EDE2 -> Bool

(/=) :: DES_EDE2 -> DES_EDE2 -> Bool

BlockCipher DES_EDE2 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES

Methods

blockSize :: DES_EDE2 -> Int Source #

ecbEncrypt :: DES_EDE2 -> ByteString -> ByteString Source #

ecbDecrypt :: DES_EDE2 -> ByteString -> ByteString Source #

cbcEncrypt :: DES_EDE2 -> IV DES_EDE2 -> ByteString -> ByteString Source #

cbcDecrypt :: DES_EDE2 -> IV DES_EDE2 -> ByteString -> ByteString Source #

cfbEncrypt :: DES_EDE2 -> IV DES_EDE2 -> ByteString -> ByteString Source #

cfbDecrypt :: DES_EDE2 -> IV DES_EDE2 -> ByteString -> ByteString Source #

ctrCombine :: DES_EDE2 -> IV DES_EDE2 -> ByteString -> ByteString Source #

xtsEncrypt :: (DES_EDE2, DES_EDE2) -> IV DES_EDE2 -> DataUnitOffset -> ByteString -> ByteString Source #

xtsDecrypt :: (DES_EDE2, DES_EDE2) -> IV DES_EDE2 -> DataUnitOffset -> ByteString -> ByteString Source #

aeadInit :: Byteable iv => AEADMode -> DES_EDE2 -> iv -> Maybe (AEAD DES_EDE2) Source #

Cipher DES_EDE2 Source # 
Instance details

Defined in Crypto.Cipher.TripleDES