Commit Graph

320 Commits

Author SHA1 Message Date
Luke Taylor
4e1437d4fd Minor haddock fixes
Fix some incorrect parameter descriptions and spelling/typos.
2015-06-07 13:26:26 +02:00
Vincent Hanquez
7301c719bf [P256] use ScrubbedBytes for Scalar 2015-06-02 14:22:48 +01:00
Vincent Hanquez
be75de64e1 [aes] fast track length == 0 with ECB encryption/decryption 2015-06-02 14:22:26 +01:00
Vincent Hanquez
daff858fe1 [number] cleanup in serialization 2015-06-01 13:03:21 +01:00
Vincent Hanquez
453e9a6f35 [number] internal serialize, unconditionally zero the buffer. 2015-06-01 13:02:53 +01:00
Vincent Hanquez
6028e95805 [number] cleanup 2015-06-01 11:50:24 +01:00
Vincent Hanquez
f63a3c6025 [p256] fix all the bugs found by the now useful P256 test suite 2015-06-01 07:48:31 +01:00
Vincent Hanquez
d873564c54 [number] split the serialization to support a more bit banging direct approach 2015-06-01 05:59:54 +01:00
Vincent Hanquez
e9c812e4fd [error] make CryptoFailable an instance of Show and Eq if possible 2015-06-01 05:59:25 +01:00
Vincent Hanquez
4edb580cda [P256] add warning for non constant time operation 2015-05-30 10:38:59 +01:00
Vincent Hanquez
78fa0c3650 [P256] implement missing function, and remove un-implementable one.
remove temporary removal, and properly fixes #1
2015-05-29 15:47:25 +01:00
Vincent Hanquez
ac67e0d8fb Merge branch 'master' of https://github.com/vincenthz/cryptonite 2015-05-26 22:09:49 +01:00
Vincent Hanquez
e413290d8f [p256] temporary remove missing functions. fix #1 2015-05-26 22:09:12 +01:00
Nicolas DI PRIMA
57c814f20b add Ord instance on Digest 2015-05-26 19:10:26 +01:00
Vincent Hanquez
73c5d2145e [random] fix entropy modules on windows 64 bits. 2015-05-25 07:44:15 +01:00
Vincent Hanquez
0e048b77c4 [number] correct tweak function to mask things properly 2015-05-23 17:09:07 +01:00
Vincent Hanquez
e14d9cafc9 [number] add debugging in case of error 2015-05-23 16:28:50 +01:00
Vincent Hanquez
bc4a55ff74 [number] further cleanup random generation 2015-05-23 13:44:26 +01:00
Vincent Hanquez
c0e50547ad [number] remove the need for a random generator for testing primality
a DRG is implicitely created when calling the non gmp primality test
2015-05-23 12:55:29 +01:00
Vincent Hanquez
ed48246740 [random] Just export the type of MonadPseudoRandom 2015-05-23 12:30:52 +01:00
Vincent Hanquez
23b5146f0f [number] remove unnecessary random number generator 2015-05-23 12:02:05 +01:00
Vincent Hanquez
2153e5690f [number] generate number with bounds more effectively 2015-05-23 11:59:10 +01:00
Vincent Hanquez
ca2ec5a03d [random] export MonadPseudoRandom 2015-05-23 11:58:36 +01:00
Vincent Hanquez
05e0e1a587 [number] add helpers to get bits size ond bytes size
the later is already available as 'lengthBytes' in Serialize module
2015-05-23 09:16:36 +01:00
Vincent Hanquez
cddac096cd [number] rename generate into generateParams 2015-05-23 09:15:42 +01:00
Vincent Hanquez
27dacbfb21 add gmpSizeInBits 2015-05-23 09:15:15 +01:00
Vincent Hanquez
efedb38570 [number] add a new routine to generate random number 2015-05-22 21:36:13 +01:00
Vincent Hanquez
a0009bf713 [hash] remove redundant module 2015-05-22 18:43:35 +01:00
Vincent Hanquez
8eaaa06e1e add optional support for deepseq 2015-05-22 18:35:46 +01:00
Vincent Hanquez
02956f9ef0 [KDF] move PBKDF2 and Scrypt to not be pinned to ByteString 2015-05-22 15:19:42 +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
5d85834264 remove unnecessary extension 2015-05-21 14:51:23 +01:00
Vincent Hanquez
16839d3a43 [number] remove the ByteString from generation of high bits 2015-05-21 14:48:26 +01:00
Vincent Hanquez
7f11a66d50 [DSA] re-align imports 2015-05-21 14:46:45 +01:00
Vincent Hanquez
28958a6d03 [RSA] remove ByteString from Primitive module 2015-05-21 14:32:53 +01:00
Vincent Hanquez
c111dfeb8e [pubkey] remove bytestring from MaskGenFunction 2015-05-21 11:09:48 +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
c7de32a6f6 [RSA] remove the need for bytestring in HashDescr and work towards more removal 2015-05-21 09:46:13 +01:00
Vincent Hanquez
8065c26c2d remove dangerous OverloadedStrings 2015-05-21 06:45:46 +01:00
Vincent Hanquez
dc34ce8289 [RSA] properly indent modules imports 2015-05-21 06:35:19 +01:00
Vincent Hanquez
4758df2c3a [entropy] missing CPP extension for windows entropy gather module 2015-05-21 05:28:50 +01:00
3noch
9c1d9695c5 support windows 64 bits 2015-05-20 09:11:33 +01:00
Vincent Hanquez
881d167cb5 more fixing up description and comments 2015-05-20 06:22:00 +01:00
Vincent Hanquez
92343f856a add comments and description 2015-05-20 06:07:31 +01:00
Vincent Hanquez
393b159d5f [hash] add haddock documentation 2015-05-19 11:51:18 +01:00
Vincent Hanquez
9794e2132b [hash] replace scrub by reset
reset make more sense as it leave the mutable context in a state where
it can be re-used by further update, whereas scrub doesn't.
2015-05-19 11:50:56 +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
c5f9ab2d35 [internal] update memory to latest 2015-05-14 10:04:16 +01:00
Vincent Hanquez
26ec954a48 [Cipher] fix salsa and chacha related to chunking 2015-05-12 14:36:50 +01:00
Vincent Hanquez
fdf735d4e2 [PubKey] move ElGamal to use HashAlgorithm and ByteArrayAccess. 2015-05-12 07:01:20 +01:00
Vincent Hanquez
5d2b417854 [pubkey] make DSA and ECDSA ByteString free 2015-05-11 14:18:49 +01:00
Vincent Hanquez
d035e3a3bc [number] properly handle gmp 2015-05-11 11:39:09 +01:00
Vincent Hanquez
b3ebf3f3b8 [number] fix import 2015-05-11 10:07:15 +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
30b7b6412a align module imports 2015-05-11 09:34:26 +01:00
Vincent Hanquez
761574a65f [internal] remove old cryptohash modules 2015-05-11 09:34:01 +01:00
Vincent Hanquez
9567fa2526 [number] almost rewrite all serialization to be faster and less depends on random versions 2015-05-11 09:28:48 +01:00
Vincent Hanquez
228f1ab938 [number] further push the compat cleanup 2015-05-11 07:32:13 +01:00
Vincent Hanquez
8c07305deb [number] fix compat with a missing do. 2015-05-11 07:31:52 +01:00
Vincent Hanquez
ee3e5e69bf [number] move some number primitive to use compat without CPP 2015-05-11 07:11:38 +01:00
Vincent Hanquez
03fe63b05a [number] further remove gcde_binary 2015-05-11 07:10:52 +01:00
Vincent Hanquez
4bcf193a12 [number] further remove gcde_binary 2015-05-11 07:10:38 +01:00
Vincent Hanquez
47afc1720d [number] remove gcde_binary 2015-05-11 07:10:15 +01:00
Vincent Hanquez
5c0daae88c [number] add simple combinator 2015-05-11 07:09:44 +01:00
Vincent Hanquez
427541064d [number] add further gmp optional compat 2015-05-11 07:09:30 +01:00
Vincent Hanquez
ed8fbe8f69 [Number] add module to cleanup CPP around 2015-05-10 15:27:52 +01:00
Vincent Hanquez
9ae9e38ce2 move to memory stuff 2015-05-09 14:23:32 +01:00
Vincent Hanquez
ac16029f07 [internal] update convert4To32 to prevent an issue on ghc 7.0 and 7.4 2015-05-07 13:54:05 +01:00
Vincent Hanquez
d18900c2e0 [internal] random little changes to keep faster toHex from cryptohash as compiled code for later use 2015-05-06 11:39:46 +01:00
Vincent Hanquez
e89031c6d6 make AuthTag be a Bytes instead of ByteString 2015-05-06 11:39:07 +01:00
Vincent Hanquez
81e335cfff [HASH] re-enable SHA512t 2015-05-06 07:53:51 +01:00
Vincent Hanquez
6ba517e945 [DES] remove DES.Serialization module 2015-05-06 07:52:49 +01:00
Vincent Hanquez
df3c3523a4 [P256] add a point_add function 2015-05-04 06:56:27 +01:00
Vincent Hanquez
aa790db088 [P256] add more bindings 2015-05-03 20:36:00 +01:00
Vincent Hanquez
ad34f0e1e8 use mod after add/sub 2015-05-03 20:15:26 +01:00
Vincent Hanquez
1f30911e1c [P256] define the n/p/b constants 2015-05-03 20:14:54 +01:00
Vincent Hanquez
c360e77148 [P256] properly define some bindings with X and Y types 2015-05-03 20:14:10 +01:00
Vincent Hanquez
ea875e5c88 [P256] define pointMul 2015-05-03 19:52:00 +01:00
Vincent Hanquez
25c303602d [P256] add comment to `toPoint' 2015-05-03 19:51:21 +01:00
Vincent Hanquez
f09bbf55e3 [Chacha/Salsa] cleanup nonce handling and use bufXor 2015-05-03 14:58:59 +01:00
Vincent Hanquez
cd42b2765b [HMAC] use SecureBytes instead of ByteString for between context 2015-05-03 14:51:13 +01:00
Vincent Hanquez
c751fd1a6b [QA] fix import 2015-05-03 14:48:40 +01:00
Vincent Hanquez
dfe3a9af93 [QA] fix module imports 2015-05-03 14:48:26 +01:00
Vincent Hanquez
87777784c1 [QA] fix issues from HSE so that it parse files 2015-05-03 14:47:16 +01:00
Vincent Hanquez
937b5d08dd [scrypt] cleanup module / extensiotn 2015-05-03 14:31:14 +01:00
Vincent Hanquez
28a4fa1503 remove unnecessary CPP 2015-05-03 14:31:07 +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
c23ddb2eaa [PBKDF2] make the code more friendly to a future mutable PRF.
Prevent doing B.take . B.concat by allocating only once the output buffer
2015-05-03 08:17:03 +01:00
Vincent Hanquez
c1ed30b20e [DSA] fix badly written constraint (found by QA) 2015-05-02 15:46:07 +01:00
Vincent Hanquez
4cde4f9311 [scrypt] remove the need for byteable by using the more generic bytearray 2015-05-02 15:44:33 +01:00
Vincent Hanquez
c5189a03c6 [hash] remove unnecessary import 2015-05-02 15:44:09 +01:00
Vincent Hanquez
da784070f7 [hash] remove some warnings 2015-05-02 15:44:01 +01:00
Vincent Hanquez
1267500318 [P256] improve bindings, still work in progress. 2015-05-02 14:50:11 +01:00
Vincent Hanquez
771007ad93 [cipher] Get rid of bytestring in Stream class. 2015-05-02 14:49:49 +01:00
Vincent Hanquez
119b111b82 fix old build by importing ByteString module to get OverloadedString instance 2015-05-02 14:49:14 +01:00
Vincent Hanquez
cd0b2bfe64 [internal] fix build by making primitive binding stricter as required by older ghc 2015-05-02 08:10:07 +01:00
Vincent Hanquez
d7a88da726 [Curve25519] fix build and get rid of bytestring by using direct addr# "string" 2015-05-02 07:59:42 +01:00
Vincent Hanquez
cc26ce8ce4 fix hexadecimal string generation to be hopefully (much) safer. 2015-05-02 05:40:14 +01:00
Vincent Hanquez
b4adeec6d8 remove digestToHex 2015-05-01 07:40:28 +01:00