
Simon Marlow wrote:
On 11 January 2005 20:59, Dominic Steinitz wrote:
As an interim proposal, how about I put
Data.LargeWord
What's a LargeWord?
For example, the keys for for encryption algorithms are words of 128, 192, 256 bits. They are composed from smaller words. type Word128 = LargeKey Word64 Word64 type Word192 = LargeKey Word64 Word128 type Word256 = LargeKey Word64 Word192 k16= 0xF0E1D2C3B4A5968778695A4B3C2D1E0F :: Word128 e16 = Blowfish.encrypt k16 d ad = 0xF0E1D2C3B4A5968778695A4B3C2D1E0F :: Word128 ak24 = 0xF0E1D2C3B4A5968778695A4B3C2D1E0FF0E1D2C3B4A59687 :: Word192 ae24' = AES.encrypt ak24 ad Taken from http://csrc.nist.gov/publications/nistpubs/800-38a/sp800-38a.pdf. aes4key32 = 0x603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4 :: Word256 aes4iv16 = 0x000102030405060708090a0b0c0d0e0f :: Word128 aes4plaintext = [0x6bc1bee22e409f96e93d7e117393172a, 0xae2d8a571e03ac9c9eb76fac45af8e51, 0x30c81c46a35ce411e5fbc1191a0a52ef, 0xf69f2445df4f9b17ad2b417be66c3710] :: [Word128] aes4ciphertext' = cbc AES.encrypt aes4iv16 aes4key32 $ pkcs5 $ concat $ map toOctets aes4plaintext
Data.Digest.MD5 Data.Digest.SHA-1
That will have to be SHA1 or SHA_1.
A slip of the pen. It was and will be SHA1.
Codec.Encryption.RSA Codec.Encryption.RSA.EMEOAEP Codec.Encryption.RSA.MGF Codec.Encryption.RSA.NumberTheory Codec.Encryption.DES Codec.Encryption.AES Codec.Encryption.Blowfish Codec.Encryption.Modes Codec.Encryption.Padding Codec.Encryption.PKCS8 Codec.Encryption.X509 Codec.ASN1 Codec.ASN1.BER Codec.ASN1.TLV Codec.Utils
into a package called Crypto?
Looks fine!
Cheers, Simon