root
7ca1f2e4d6
bench for P256.pointAdd and P256.pointMul
2019-07-15 10:47:58 +08:00
Olivier Chéron
cdd0821eee
Merge pull request #281 from ocheron/cpu-options
...
Add module Crypto.System.CPU
2019-06-23 09:05:13 +02:00
Olivier Chéron
53a1bf7ebf
Report info about runtime environment in the test suite
2019-06-15 09:28:02 +02:00
Olivier Chéron
91c87deae1
Add Crypto.System.CPU
2019-06-15 09:28:02 +02:00
Olivier Chéron
f121d1b8d1
Merge pull request #280 from ocheron/gcm-small-table
...
More optimizations for AES GCM and CCM
2019-06-15 09:27:48 +02:00
Olivier Chéron
2cf3b75636
AES CCM: use AESNI in CBC-MAC computation when possible
2019-06-06 06:48:22 +02:00
Olivier Chéron
4df2a95276
AES GCM: use Shoup's method with 4-bit table
2019-06-06 06:48:16 +02:00
Olivier Chéron
5b39ae3e48
Add missing void and const
2019-05-26 11:50:07 +02:00
Olivier Chéron
c8a4e48e0c
Remove unused variables
2019-05-26 11:50:07 +02:00
Vincent Hanquez
7596e2959d
release 0.26
2019-05-21 08:49:16 +01:00
Vincent Hanquez
60ddb49298
Merge pull request #277 from ocheron/little-endian
...
Little-endian integer serialization
2019-05-19 21:56:41 +01:00
Vincent Hanquez
982ded8ad5
Merge pull request #278 from ocheron/gcm-pclmul
...
Faster AES GCM with PCLMULQDQ
2019-05-19 21:53:57 +01:00
Olivier Chéron
d25e44ea61
Add GHASH implementation with PCLMULQDQ
2019-05-19 11:18:40 +02:00
Olivier Chéron
cddbc2cef9
Remove unopt_gf_mul
2019-05-19 11:16:34 +02:00
Olivier Chéron
76ba39fc95
Add benchmark with AES GCM and CCM
2019-05-19 11:16:34 +02:00
Olivier Chéron
5b4845dd0e
Use GHC 8.6.5 for CI and bump versions
2019-05-16 06:55:01 +02:00
Olivier Chéron
af98a837d1
Add missing INLINABLE pragma
2019-05-16 06:33:35 +02:00
Olivier Chéron
7ecb259aae
Fix LE.i2osp 0
...
Little-endian bytes are stored at the beginning of the buffer.
2019-05-16 06:33:35 +02:00
Olivier Chéron
6893eae70a
Make os2ip loop argument strict
2019-05-16 06:33:35 +02:00
Olivier Chéron
393aeac8cd
Test LE serialization
2019-05-16 06:33:35 +02:00
Olivier Chéron
6e1b6fdb90
Little-endian integer serialization
2019-05-16 06:33:35 +02:00
Olivier Chéron
3161630390
Update CHANGELOG
2019-05-08 10:22:30 +02:00
Olivier Chéron
158d8dfd0c
Remove unnecessary imports
2019-05-08 10:22:30 +02:00
Olivier Chéron
687765cacd
Merge pull request #276 from ocheron/kmac
...
Keccak Message Authentication Code (KMAC)
2019-05-08 10:06:25 +02:00
Olivier Chéron
ae107a9285
Merge last cshakeUpdate with cshakeFinalize
2019-05-01 07:03:45 +02:00
Olivier Chéron
8b235612be
Merge cshakeInit with first cshakeUpdate
2019-04-28 09:14:25 +02:00
Olivier Chéron
14093ac298
Optimize KMAC allocations
...
Adds a minimalist Builder type to merge intermediate allocations into
a single ByteArray. Key is now copied to a ScrubbedBytes only.
2019-04-28 09:14:25 +02:00
Olivier Chéron
1551436111
Add KMAC
2019-04-28 09:14:25 +02:00
Olivier Chéron
c9f8dac6b0
Merge pull request #274 from ocheron/p256-add-sub
...
Improve P256.scalarAdd and P256.scalarSub
2019-04-28 09:12:47 +02:00
Olivier Chéron
7e5dbeb146
Use vector/vectorOf from QuickCheck and simplify
2019-03-26 06:25:45 +01:00
Olivier Chéron
6f67cefa3d
Remove code duplication
2019-03-26 06:24:00 +01:00
Olivier Chéron
15f117d9c3
Remove tests add-n-1 and sub-n-1
...
Operation with value close to the curve order is now tested in other
tests. This tests substraction with 0 instead.
2019-03-25 06:47:21 +01:00
Olivier Chéron
399fc891da
Test P256 primitives will full scalar range
2019-03-24 08:31:58 +01:00
Olivier Chéron
47123ed97a
Better P256 scalar primitives
...
Allows scalars in full range [ 0 .. 2^256-1 ]. Modular reduction is
added a few more operations with conditional selection.
2019-03-24 08:31:45 +01:00
Olivier Chéron
e3edc100c3
Remove unnecessary import
2019-03-24 07:59:57 +01:00
Olivier Chéron
3253501166
Time-constant P256.scalarAdd and P256.scalarSub
2019-03-21 07:04:01 +01:00
Olivier Chéron
f4be05eb2e
Merge pull request #240 from lpeterse/bcrypt_pbkdf
...
Add bcrypt_pbkdf key derivation function
2019-03-17 19:02:27 +01:00
Lars Petersen
2a26202a32
Add implementation of bcrypt_pbkdf
2019-03-14 21:30:29 +01:00
Olivier Chéron
0ce2e5f325
Remove -fno-warn-unused-imports
...
Changing the build so that we don't diverge again after cleanup done
in #267 .
2019-03-09 09:08:53 +01:00
Olivier Chéron
d67a21f95f
Remove unnecessary imports and calls
2019-03-09 09:08:53 +01:00
Olivier Chéron
107317c84d
Improve strictness in Blowfish rounds
2019-03-04 06:39:55 +01:00
Olivier Chéron
0f8dc3588d
Add BCrypt benchmark
2019-03-04 06:39:46 +01:00
Olivier Chéron
717de392cd
Merge pull request #238 from lpeterse/master
...
Extend the internal interface of the Blowfish module.
2019-03-04 06:37:15 +01:00
Olivier Chéron
8e28d7b2cd
Merge pull request #271 from ocheron/hash-nat-constraints
...
Hash algorithms with runtime output length
2019-03-04 06:33:59 +01:00
Olivier Chéron
26057fa0f6
Merge pull request #270 from ocheron/pr-241-rebased
...
add ECDSA sign/verify digest APIs
2019-03-04 06:32:43 +01:00
Olivier Chéron
299140f884
Remove unnecessary hash arguments
...
We don't need to give the hash algorithm as a separate argument since
it is already available from the digest value itself.
2019-03-01 06:28:55 +01:00
Olivier Chéron
997cea369b
Rename to signDigestWith
2019-03-01 06:28:55 +01:00
Baojun Wang
b55a93dfdc
add ECDSA sign/verify digest APIs
...
(rebased from commit 045793427e8d46594b0b2afedb314d027ec707ab)
2019-03-01 06:28:32 +01:00
Olivier Chéron
3c41966b9a
Add module Crypto.Number.Nat
...
This new module exposes type constraints required by some hash
algorithms and provides functions to check whether the constraints are
satisfied with runtime values.
Resolves #256 .
2019-02-28 07:07:48 +01:00
Olivier Chéron
eccbc11824
Remove Crypto.Internal.Proxy
...
Data.Proxy can be used instead now that GHC >= 8.0. In Data.Proxy the
Proxy type is poly-kinded.
2019-02-28 07:07:48 +01:00