Vincent Hanquez
55f385a136
change point decoding to be able to fail explicitely instead of async error call.
2016-12-01 12:51:26 +00:00
Vincent Hanquez
a9e3917334
fix Curve25519 generate secret key to work in the MonadRandom instead of IO
2016-12-01 12:50:31 +00:00
Vincent Hanquez
d80a87da48
add new EC errors
2016-12-01 12:50:10 +00:00
Vincent Hanquez
a5fb2ee23a
don't export function that replace existing functionality and by-pass errors handling
2016-12-01 12:50:01 +00:00
Kazu Yamamoto
e9ea55ab57
relaxing types of encodePoint and decodePoint.
2016-11-30 15:34:35 +09:00
Kazu Yamamoto
58151b9965
making PRK an instance of ByteArrayAccess and removing fromPRK/toPRK.
2016-11-30 15:10:48 +09:00
Kazu Yamamoto
f84aa5d7ce
documentation & relaxing types.
2016-11-30 14:48:49 +09:00
Kazu Yamamoto
be6bf11138
using ScrubbedBytes directly.
2016-11-30 14:41:01 +09:00
Kazu Yamamoto
3a2eb3c631
using ByteArray(Access) instead of ByteString.
2016-11-30 14:19:39 +09:00
Kazu Yamamoto
39ecb3597a
removing a trailing space / a warning.
2016-11-30 14:06:21 +09:00
Kazu Yamamoto
2b9dce2c8a
Dropping Show from PRK.
2016-11-28 19:23:20 +09:00
Kazu Yamamoto
c0b0846232
implmenting encodePoint and decodePoint for TLS.
2016-11-17 13:08:21 +09:00
Kazu Yamamoto
a6f177352a
Eq and Show for Point and Scalar.
2016-11-16 16:53:43 +09:00
Kazu Yamamoto
aa33c00855
adding Curve_X25519.
2016-11-16 13:10:57 +09:00
Kazu Yamamoto
dea0469c61
adding Curve_P384R1.
2016-11-16 10:02:00 +09:00
Kazu Yamamoto
9a0ec9166a
implementing ecdh fpr P256 and P521.
2016-11-15 15:41:00 +09:00
Vincent Hanquez
c29fa82417
add a note about scalarInverse
2016-11-15 15:05:58 +09:00
Vincent Hanquez
f3255c2fa0
fix imports on older versions
2016-11-15 15:05:58 +09:00
Vincent Hanquez
7c833eddfd
improve description
2016-11-15 15:05:58 +09:00
Vincent Hanquez
60bb2cacb4
[ECC] Improve the code base to allow multiples different implementations
...
* Use TypeFamilies; need to see what to do for older GHC versions
* Start implementing some API related to ECIES
2016-11-15 15:05:58 +09:00
Kazu Yamamoto
e00c89fb25
adding toByteString and fromByteString to PRK.
2016-11-15 15:04:06 +09:00
Brandon Hamilton
548cbb6f79
Implement the XSalsa20 stream cipher
2016-10-09 15:25:31 +02:00
Vincent Hanquez
01892ac494
Merge pull request #102 from ocheron/shamirs-trick
...
Implement Shamir's trick
2016-09-15 21:08:48 +01:00
Olivier Chéron
43233cb911
Double-scalar multiplication using Shamir's trick
2016-09-10 12:05:46 +02:00
Olivier Chéron
5854b092a8
Fix ECDH when scalar and coordinate bit sizes differ
2016-09-10 10:26:41 +02:00
Olivier Chéron
c84230c69a
Fixed hash truncation used in ECDSA signature & verification
...
The function tHash shifted the hash number to an incorrect number of bits
when the bit string had leading zeros. This is one of two issues reported
in vincenthz/hs-tls#152 .
2016-08-24 23:29:55 +02:00
Vincent Hanquez
39a3a6bbcb
Merge pull request #95 from glguy/master
...
Derive Show instance for CryptoFailable
2016-07-30 11:08:55 +01:00
Vincent Hanquez
d6608ffc6e
Merge pull request #85 from yogsototh/master
...
Example of symmetric encryption in documentation.
2016-07-30 07:10:56 +01:00
Eric Mertens
5b8ae08701
Derive Show instance for CryptoFailable
...
Fixes #50
The derived instances use precedences to decide when
parentheses are appropriate.
2016-07-28 14:02:36 -07:00
Vincent Hanquez
18a9634bb7
Merge pull request #92 from Bodigrim/number-f2m
...
Arithmetic over F2m
2016-07-28 20:23:38 +01:00
Luke Taylor
fb66c35f46
Add a check for salt length in bcrypt function
...
Raises an error (as the original doc claimed) if the salt is not the
required length of 16 bytes.
validatePasswordEither doesn't require separate checking since the hash
length as a whole is checked, implicitly ensuring the salt is the right
length. Therefore it shouldn't be possible to trigger the error by
calling this function.
Fixes #93 .
2016-07-27 17:45:33 +02:00
Bodigrim
2dec05f48b
Restore import of <$>
2016-07-24 14:54:22 +02:00
Bodigrim
7e53922f4f
Fix pointMul with negative factor on CurveF2m
2016-07-24 13:40:24 +02:00
Bodigrim
b25df69e26
Speed up squaring 3x (now 10% faster than mul)
2016-07-24 11:00:54 +02:00
Bodigrim
66ae77e805
Fix tests and provide documentation for Crypto.Number.F2m
2016-07-24 11:00:54 +02:00
Bodigrim
e80eaa56f3
Tests for Crypto.Number.F2m
2016-07-24 10:58:50 +02:00
Luke Taylor
de17b66e31
Fix buffer length in scrypt
...
The temporary XY buffer passed to the scrypt_smix C function should be
256r+64 bytes in length, but the Haskell code was only allocating 256r
bytes, causing the additional 64 to be written past the end of the
buffer.
See #91 .
2016-06-13 21:08:06 +01:00
Vincent Hanquez
dc8bb8934c
Merge pull request #77 from khibino/mp
...
Adding miyaguchi-preneel hash construction
2016-06-13 05:57:44 +01:00
Kei Hibino
7989dc71b0
fix unpad of zero-padding and add tests.
2016-06-08 22:57:35 +09:00
Kei Hibino
ec7e73401f
apply zero-padding to miyaguchi-preneel.
2016-06-08 22:26:14 +09:00
Kei Hibino
c2285db4e3
add zero padding and its test.
2016-06-08 22:23:41 +09:00
Kei Hibino
87867b49bc
rename definitions which compute miyaguchi-preneel hash.
2016-06-08 01:13:23 +09:00
Kei Hibino
f9c1aa713f
drop cipherInit'.
2016-06-02 17:05:17 +09:00
Denis Redozubov
512605d513
fix documentation typo
2016-05-05 19:51:22 +03:00
Yann Esposito (Yogsototh)
92531e8ca6
Just adding an example. Inspired by the Turtle doc
2016-04-28 10:10:10 +02:00
John Galt
e2b0e9ee6b
[Ed448] Fixed incorrect base point
2016-04-18 13:25:11 -07:00
Kei Hibino
fce698b821
[MP] Drop data constructor access.
2016-04-12 14:53:16 +09:00
Kei Hibino
0f241e31db
[MP] drop the accessor in favor of just using the ByteArrayAccess constraint
2016-04-12 11:00:01 +09:00
Vincent Hanquez
0c3f68929b
Fix serialization of ECDH and DH
2016-04-09 17:13:51 +01:00
Vincent Hanquez
fd24980530
[ECC] add Bounded instance to CurveName
2016-04-09 13:46:06 +01:00