Codec 1.0
Dominic Steinitz
dominic.steinitz at blueyonder.co.uk
Wed Jan 12 14:44:38 EST 2005
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
>
>
More information about the Libraries
mailing list