Commit Graph

171 Commits

Author SHA1 Message Date
Vincent Hanquez
b4adeec6d8 remove digestToHex 2015-05-01 07:40:28 +01:00
Vincent Hanquez
5d3e825f2e remove / comment stuff 2015-05-01 07:36:28 +01:00
Vincent Hanquez
db7c3bbb4f [hash] massive overhaul of the hash interface
use the typeclass for the lowest IO impure C bindings definitions,
and define the pure interface as generic on top of this.

At the same time define an Hash.IO interface to allow mutable manipulations
of hash contextes when necessary.

Use HashAlgorithm instead of HashFunction in the [PubKey] sections

Tweak the HMAC, PBKDF2 functions to be more efficient and use the new interface
2015-04-30 06:18:07 +01:00
Vincent Hanquez
12ddffe4df [Internal] add a function to convert bytearray and apply a hexadecimal transformation 2015-04-30 06:15:06 +01:00
Vincent Hanquez
a3b444e36f [Internal] Add buffer function to xor with a specific value 2015-04-30 06:13:14 +01:00
Vincent Hanquez
84c05617a3 [internal] add a way to convert bytearray to hexadecimal bytearray 2015-04-30 06:08:21 +01:00
Vincent Hanquez
b497737ef1 [Salsa] use more ByteArray operations instead of bytestring. 2015-04-30 06:07:25 +01:00
Vincent Hanquez
87e2862eaa remove stale file 2015-04-28 11:39:23 +01:00
Vincent Hanquez
1c8d966d71 [Hash] remove unnecessary modules and not used template 2015-04-28 11:37:42 +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
6722a02a74 move lowlevel implementation of hashes to byteArrays 2015-04-24 13:30:58 +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
e52a75af75 add P256 work in progress binding 2015-04-22 10:15:23 +01:00
Vincent Hanquez
0424d67616 [Curve25519] convert to Bytearray 2015-04-22 06:26:06 +01:00
Vincent Hanquez
c06edc9591 add a byteArrayConvert which copy and returns potentially a different output type 2015-04-22 06:25: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
7cd2d2b701 [cleanup] replace imports 2015-04-22 06:24:12 +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
d7c8835068 Merge branch 'ed25519' 2015-04-19 09:25:00 +01:00
Vincent Hanquez
0aaa6a9e9a [Ed25519] Add haskell bindings and tests 2015-04-19 09:24:37 +01:00
Vincent Hanquez
655d8b9c33 [Error] Add new public key error values 2015-04-19 09:24:21 +01:00
Vincent Hanquez
6e79d33e9f [Internal] Improve Bytes
define Show and Eq instances, and add bytesIndex
2015-04-19 09:23:34 +01:00
Vincent Hanquez
3713c585fe [Internal] add a utility to dump byte array in hexadecimal 2015-04-19 09:22:41 +01:00
Vincent Hanquez
be42fec6e5 [Internal] properly define ByteArrayCopy functions to only requires ByteArrayAccess from the source 2015-04-19 09:21:48 +01:00
Vincent Hanquez
da52607d41 [internal] make some binding stricter 2015-04-19 06:16:31 +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
d4213ca731 [Internal] Expose first and second over the whole codebase 2015-04-18 06:53:23 +01:00
Vincent Hanquez
38b7f6ad73 [Internal] Add a function to create a initialized to 0 bytearray 2015-04-18 06:52:57 +01:00
Vincent Hanquez
09365a745f [Internal] add a function to set buffer's bytes (i.e. memset) 2015-04-18 06:52:27 +01:00
Vincent Hanquez
dc1215dbd7 [AES] repair genCounter 2015-04-15 11:25:44 +01:00
Vincent Hanquez
cd216f5ee9 [internal] add some new function to copy and alloc + ret 2015-04-15 11:24:23 +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
af0b1ece4d [internal] add documentation and finish implementing various combinator for CryptoFailable 2015-04-12 08:18:00 +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
Vincent Hanquez
4247520e91 [Internal] add a way to index bytestring 2015-04-11 16:02:31 +01:00
Vincent Hanquez
b76a2c135a [DES] fix compat that don't have an instance of Bits for Bool 2015-04-11 08:45:04 +01:00