Commit graph

736 commits

Author SHA1 Message Date
Paul Bakker cf4365f560 Updated error codes for ECP 2013-01-16 17:00:43 +01:00
Paul Bakker a95919b4c7 Added ECP files to Makefiles as well 2013-01-16 17:00:05 +01:00
Manuel Pégourié-Gonnard 5e402d88ea Added ecp_read_binary(). 2013-01-16 16:31:54 +01:00
Manuel Pégourié-Gonnard 37d218a8e3 Added support for writing points compressed 2013-01-16 16:31:54 +01:00
Manuel Pégourié-Gonnard e19feb5b46 Added ecp_write_binary(). 2013-01-16 16:31:53 +01:00
Manuel Pégourié-Gonnard 1c33057a63 Added ecp_check_pubkey(). 2013-01-16 16:31:53 +01:00
Manuel Pégourié-Gonnard c554e9acf1 Added test vectors from RFC 5903 2013-01-16 16:31:53 +01:00
Manuel Pégourié-Gonnard 3680c82c5a Made choice of w safer and more optimal 2013-01-16 16:31:53 +01:00
Manuel Pégourié-Gonnard cdd44324e9 Added ecp_normalize_many() for faster precompute() 2013-01-16 16:31:53 +01:00
Manuel Pégourié-Gonnard b63f9e98f5 Made ecp_mul() faster and truly SPA resistant 2013-01-16 16:31:53 +01:00
Manuel Pégourié-Gonnard 7652a593d6 Added a precompute() function for fast mult 2013-01-16 16:31:53 +01:00
Manuel Pégourié-Gonnard 855560758c Added function preparing for faster multiplication 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard b4a310b472 Added a selftest about SPA resistance 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard 9674fd0d5e Added ecp_sub() as a variant of ecp_add() 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard 1c2782cc7c Changed to jacobian coordinates everywhere 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard 773ed546a2 Added a nbits member to ecp_group 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard 4bdd47d2cb Multiplication by negative is now forbidden 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard 8433824d5f Added fast mod_p192 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard 4712325777 Clarifications in comments; code cosmetics & style 2013-01-16 16:31:52 +01:00
Manuel Pégourié-Gonnard dada4da33f Moved domain paramaters to ecp.c 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard 62aad14139 Added slot for fast modp, with mod_p521 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard 84d1aea1ac Now reducing mod p after every single operation 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard e0c16922f9 Point multiplication using Jacobian coordinates 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard 7e0adfbcc5 Replaced add_generic with add_mixed 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard 989c32bc3e Replaced double_generic with double_jac 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard 27b1ba8be0 Changed ecp_mul() to always add the same point 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard d070f51224 Started introducting Jacobian coordinates 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard 52a422f6a1 Added ecp-bench specialized benchmark 2013-01-16 16:31:51 +01:00
Manuel Pégourié-Gonnard e870c0a5d6 Added benchmark for DHM 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard e739f0133b Added test vectors from RFC 5114 to test suite 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard 4b8c3f2a1c Moved tests from selftest to tests/test_suite_ecp 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard a5402fee04 Added ecp_use_known_dp() 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard efaa31e9ae Implemented multiplication 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard b4ab8a8137 Fixed memory leak due to typo 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard de532ee73f Implemented generic doubling 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard ab38b70816 Fixed add_generic 2013-01-16 16:31:50 +01:00
Manuel Pégourié-Gonnard b505c2796c Got first tests working, fixed ecp_copy() 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard d0dc6317e1 Added a few test cases for addition 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard 847395a8a9 Added ecp_XXX_read_string() 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard 7cfcea349c Documented error codes properly 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard ae180d0f20 Got started on ecp_add(): generic case done 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard 883f313516 Added ecp_copy() (for points) 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard 5179e463d5 Allowed point at infinity, supressed ecp_double() 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard 1e8c8ecd95 Implemented ecp_{point,group}_free() 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard d7e4570ad1 Copied ECP parameters from RFC 5114 2013-01-16 16:31:49 +01:00
Manuel Pégourié-Gonnard 39d2adbbd0 Added (skeleton) ecp.[ch] 2013-01-16 16:31:48 +01:00
Paul Bakker 21dca69ef0 Handle future version properly in ssl_write_certificate_request() 2013-01-03 11:41:08 +01:00
Paul Bakker 58ef6ec613 Cleaner test-memory cleanups 2013-01-03 11:33:48 +01:00
Paul Bakker 02303e8be4 Moved md_init_ctx() calls around to minimize exit points 2013-01-03 11:08:31 +01:00
Paul Bakker 40628bad98 Memory leak when using RSA_PKCS_V21 operations fixed 2013-01-03 10:50:31 +01:00