Vincent Hanquez
7bd3a8f892
[ChaChaPoly1305] Document everything
2015-11-04 15:17:32 +00:00
John Galt
55c6988a6e
Added support for incrementing Nonces
2015-10-05 14:08:08 -04:00
Joachim Breitner
507a8f8cea
Use mkLE, not LE
...
to make sure the conversion to little endian is actually happening. This
fixes a test failure in ChaChaPoly1305. Fixes #31 .
2015-08-27 14:52:37 +02:00
Vincent Hanquez
ea8cb2d45a
[blowfish] remove unnecessary list of word32 for the schedule
...
Just use the binary's array directly
2015-08-27 10:57:28 +01:00
Luke Taylor
2566e46185
Implement the eksBlowfish function
...
This modifies the standard blowfish key schedule function to accept an
optional salt and cost as used in bcrypt and modifies the algorithm
accordingly to implement the "expensive" version.
The standard blowfish version is just the same but with a salt value of
zero and a single call to the expandKey function. See the original
bcrypt paper for more details.
2015-08-26 10:33:35 +01:00
Luke Taylor
08ebde2f09
Modify creation of Blowfish key schedule
...
Changes to create it from an array of Word32, instead of using
mutableArray32FromAddrBE, which seems to reverse the words.
2015-08-26 10:33:35 +01:00
Vincent Hanquez
8a0bacfc6d
[Poly1305] make initialize explicitely failable
2015-07-29 09:49:49 +01:00
Vincent Hanquez
e064af5cba
[chachapoly1305] properly handle the decryption, and change combine to encrypt.
2015-07-29 07:24:46 +01:00
Vincent Hanquez
ce849fb0d2
[ChaChaPoly1305] add implementation and simple KAT test
2015-07-19 17:53:56 +01:00
Vincent Hanquez
ce043f49a1
[AES] fix wrongly indented comment
2015-07-19 17:51:00 +01:00
Luke Taylor
875b80107c
Remove unused AES primitives functions and exports
...
The code for initializing different AEAD modes is now encapsulated in
the BlockCipher type and the individual mode encryption and decryption
functions have been replaced by generalized versions, so are no longer
used.
2015-06-09 11:45:39 +02:00
Luke Taylor
4e1437d4fd
Minor haddock fixes
...
Fix some incorrect parameter descriptions and spelling/typos.
2015-06-07 13:26:26 +02:00
Vincent Hanquez
be75de64e1
[aes] fast track length == 0 with ECB encryption/decryption
2015-06-02 14:22:26 +01:00
Vincent Hanquez
8eaaa06e1e
add optional support for deepseq
2015-05-22 18:35:46 +01:00
Vincent Hanquez
1dacb7fa94
[Salsa] opaquify the state just like for hash functions
...
add more tests
2015-05-22 14:04:54 +01:00
Vincent Hanquez
9a69c61e84
[ChaCha] opaquify the state to be handled directly in the C level just like the hash function
...
increase the number of tests
2015-05-22 14:04:27 +01:00
Vincent Hanquez
ff736b47ca
[cipher] use mconcat that force input to be the same as output
2015-05-21 11:06:41 +01:00
Vincent Hanquez
92343f856a
add comments and description
2015-05-20 06:07:31 +01:00
Vincent Hanquez
987f9e7bb6
[internal] update to latest memory, and remove builtin support as memory is now available
2015-05-18 18:33:14 +01:00
Vincent Hanquez
26ec954a48
[Cipher] fix salsa and chacha related to chunking
2015-05-12 14:36:50 +01:00
Vincent Hanquez
eaad39a1af
remove need for bytearray to marshall Word8s into a Word64
2015-05-11 10:04:56 +01:00
Vincent Hanquez
9ae9e38ce2
move to memory stuff
2015-05-09 14:23:32 +01:00
Vincent Hanquez
e89031c6d6
make AuthTag be a Bytes instead of ByteString
2015-05-06 11:39:07 +01:00
Vincent Hanquez
6ba517e945
[DES] remove DES.Serialization module
2015-05-06 07:52:49 +01:00
Vincent Hanquez
f09bbf55e3
[Chacha/Salsa] cleanup nonce handling and use bufXor
2015-05-03 14:58:59 +01:00
Vincent Hanquez
b4d1a278b3
[QA] remove unnecessary module, and allow on more module to use CPP
2015-05-03 08:43:32 +01:00
Vincent Hanquez
771007ad93
[cipher] Get rid of bytestring in Stream class.
2015-05-02 14:49:49 +01:00
Vincent Hanquez
b497737ef1
[Salsa] use more ByteArray operations instead of bytestring.
2015-04-30 06:07:25 +01:00
Vincent Hanquez
4e12aceee9
remove extra bytestring.
2015-04-24 17:22:25 +01:00
Vincent Hanquez
9dd17fc0c4
use byte array in more places
2015-04-24 17:22:13 +01:00
Vincent Hanquez
ec4e0c4ed9
remove all the byteArray prefix from byteArray function.
...
instead expect module import to be qualified for functions.
2015-04-24 06:54:33 +01:00
Vincent Hanquez
26006dfe25
[cleanup] remove useless import now that bytearray is exporting necessary bits
2015-04-22 06:25:01 +01:00
Vincent Hanquez
61ee498643
remove further deprecated modules and such
2015-04-20 10:56:39 +01:00
Vincent Hanquez
b487aef898
cleanup module imports
2015-04-20 07:36:51 +01:00
Vincent Hanquez
f86b493e32
remove warnings
2015-04-20 06:02:12 +01:00
Vincent Hanquez
b28b25abe7
[AES] add gcm / ocb support to base AES type
2015-04-18 07:58:52 +01:00
Vincent Hanquez
0e9d52de95
[Cipher] remove the need for bytestring in Block
2015-04-18 06:58:57 +01:00
Vincent Hanquez
d230fc662a
[AES] properly define AES128/192/256 variants.
2015-04-18 06:58:41 +01:00
Vincent Hanquez
7c138b9d9f
[AES] export AEAD modes (GCM/OCB)
2015-04-18 06:58:10 +01:00
Vincent Hanquez
8cc58e626b
[AEAD] remove AEADState wrapper
2015-04-18 06:57:40 +01:00
Vincent Hanquez
08732c0939
[AEAD] change interface to be less classy (!)
2015-04-18 06:57:18 +01:00
Vincent Hanquez
f686733fc6
[Blowfish] Stop using ecb{Encrypt,Decrypt}Legacy stop gap call.
2015-04-18 06:55:17 +01:00
Vincent Hanquez
dc1215dbd7
[AES] repair genCounter
2015-04-15 11:25:44 +01:00
Vincent Hanquez
3adfa4ab2a
rename module properly
2015-04-15 11:24:02 +01:00
Vincent Hanquez
c9a70b649f
[AES] properly split lowlevel from highlevel
2015-04-13 10:31:46 +01:00
Vincent Hanquez
d7186b9a59
wip AES merging
2015-04-13 10:15:55 +01:00
Vincent Hanquez
224b34eb2c
[cipher] re-enable XTS code
2015-04-12 08:05:52 +01:00
Vincent Hanquez
d6f2f7c1c0
[Cipher] make xtsGFMul work on arbitrary ByteArray
2015-04-12 06:50:54 +01:00
Vincent Hanquez
796bbef3c2
[DES] remove unnecessary imports
2015-04-11 16:03:42 +01:00
Vincent Hanquez
26fdfcf563
[Blowfish] use the key directly without stretching it all over the memory
2015-04-11 16:02:45 +01:00