Manuel Pégourié-Gonnard
|
d333f67f8c
|
Add aesni_gcm_mult()
|
2013-12-26 15:51:13 +01:00 |
|
Manuel Pégourié-Gonnard
|
9d57482280
|
Add comments on GCM multiplication
|
2013-12-26 15:51:13 +01:00 |
|
Manuel Pégourié-Gonnard
|
8eaf20b18d
|
Allow detection of CLMUL
|
2013-12-26 15:51:13 +01:00 |
|
Manuel Pégourié-Gonnard
|
5b685653ef
|
Add aesni_crypt_ecb() and use it
|
2013-12-25 13:03:26 +01:00 |
|
Manuel Pégourié-Gonnard
|
92ac76f9db
|
Add files for (upcoming) AES-NI support
|
2013-12-25 13:03:26 +01:00 |
|
Paul Bakker
|
1e5369c7fa
|
Variables in proper block or within proper defines in ssl_decrypt_buf()
|
2013-12-19 16:40:57 +01:00 |
|
Paul Bakker
|
0c0476f92d
|
Disable ecp_use_curve25519() if not POLARSSL_ECP_DP_M255_ENABLED
|
2013-12-19 16:20:53 +01:00 |
|
Paul Bakker
|
1a56fc96a3
|
Fixed x509_crt_parse_path() bug on Windows platforms
|
2013-12-19 13:52:33 +01:00 |
|
Manuel Pégourié-Gonnard
|
1321135758
|
Fix MingW version issue
|
2013-12-17 17:38:55 +01:00 |
|
Manuel Pégourié-Gonnard
|
ee5db1d6b9
|
Fix typo in previous commit
|
2013-12-17 16:46:19 +01:00 |
|
Manuel Pégourié-Gonnard
|
6a398d4234
|
Add missing header for windows
|
2013-12-17 16:10:58 +01:00 |
|
Manuel Pégourié-Gonnard
|
173402bb61
|
net_prepare() returns int
|
2013-12-17 15:57:05 +01:00 |
|
Paul Bakker
|
5a607d26b7
|
Merged IPv6 support in the NET module
|
2013-12-17 14:34:19 +01:00 |
|
Manuel Pégourié-Gonnard
|
fd6b4cc1db
|
Add forgotten SO_REUSEADDR option
|
2013-12-17 13:59:01 +01:00 |
|
Paul Bakker
|
5ab68ba679
|
Merged storing curves fully in ROM
|
2013-12-17 13:11:18 +01:00 |
|
Paul Bakker
|
fdf946928d
|
Merged support for ECDH-RSA / ECDH-ECDSA key exchanges and ciphersuites
|
2013-12-17 13:10:27 +01:00 |
|
Paul Bakker
|
77e257e958
|
Fixed bad check for maximum size of fragment length index
|
2013-12-17 13:09:12 +01:00 |
|
Paul Bakker
|
6c21276342
|
Place olen initalization after reference check in cipher_update()
|
2013-12-17 13:09:12 +01:00 |
|
Paul Bakker
|
6f0636a09f
|
Potential memory leak in ssl_ticket_keys_init()
|
2013-12-17 13:09:12 +01:00 |
|
Manuel Pégourié-Gonnard
|
6e315a9009
|
Adapt net_accept() to IPv6
|
2013-12-17 12:00:57 +01:00 |
|
Manuel Pégourié-Gonnard
|
389ce63735
|
Add IPv6 support to net_bind()
|
2013-12-17 12:00:57 +01:00 |
|
Manuel Pégourié-Gonnard
|
10934de1ca
|
Adapt net_connect() for IPv6
|
2013-12-17 12:00:57 +01:00 |
|
Manuel Pégourié-Gonnard
|
2e5c3163db
|
Factor our some code in net.c
|
2013-12-17 12:00:57 +01:00 |
|
Manuel Pégourié-Gonnard
|
5538970d32
|
Add server support for ECDH key exchanges
|
2013-12-17 11:32:31 +01:00 |
|
Manuel Pégourié-Gonnard
|
d18cc57962
|
Add client-side support for ECDH key exchanges
|
2013-12-17 11:32:31 +01:00 |
|
Manuel Pégourié-Gonnard
|
cdff3cfda3
|
Add ecdh_get_params() to import from an EC key
|
2013-12-17 11:32:31 +01:00 |
|
Manuel Pégourié-Gonnard
|
25781b22e3
|
Add ECDH_RSA and ECDH_ECDSA ciphersuites
(not implemented yet)
|
2013-12-17 11:32:31 +01:00 |
|
Manuel Pégourié-Gonnard
|
69ab354239
|
Fix bug from stupid typo
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
14a96c5d8b
|
Avoid wasting memory with some curves
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
95b45b7bb2
|
Rename macros
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
baee5d4157
|
Add previously forgotten #ifdef's
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
81e1b102dc
|
Rm a few unneeded variables
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
1f82b041e7
|
Adapt ecp_group_free() to static constants
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
73cc01d7fa
|
Remove last non-static parts of known EC groups
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
731d08b406
|
Start using constants from ROM for EC groups
|
2013-12-17 11:27:20 +01:00 |
|
Manuel Pégourié-Gonnard
|
c72ac7c3ef
|
Fix SSLv3 handling of SHA-384 suites
Fixes memory corruption, introduced in
a5bdfcd (Relax some SHA2 ciphersuite's version requirements)
|
2013-12-17 10:18:25 +01:00 |
|
Paul Bakker
|
fef3c5a652
|
Fixed typo in POLARSSL_PKCS1_V15 in rsa.c
|
2013-12-11 13:36:30 +01:00 |
|
Manuel Pégourié-Gonnard
|
93f41dbdfd
|
Fix possible issue in corner-case for ecp_mul_mx()
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
7a949d3f5b
|
Update comments
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
d962273594
|
Add #ifdef's for curve types
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
7c94d8bcab
|
WIP #ifdef's
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
b6f45a616c
|
Avoid potential leak in ecp_mul_mxz()
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
a60fe8943d
|
Add mpi_safe_cond_swap()
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
97871ef236
|
Some operations are not supported with Curve25519
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
3d7053a2bb
|
Add ecp_mod_p255(): Curve25519 about 4x faster now
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
357ff65a51
|
Details in ecp_mul_mxz()
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
fe0af405f9
|
Adapt ecp_gen_keypair() to Curve25519
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
9a4a5ac4de
|
Fix bug in mpi_set_bit
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
a0179b8c4a
|
Change ecp_mul to handle Curve25519 too
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
312d2e8ea2
|
Adapt key checking functions for Curve25519
|
2013-12-05 15:58:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
661536677b
|
Add Curve25519 to known groups
|
2013-12-05 15:58:37 +01:00 |
|
Manuel Pégourié-Gonnard
|
3afa07f05b
|
Add coordinate randomization for Curve25519
|
2013-12-05 15:58:37 +01:00 |
|
Manuel Pégourié-Gonnard
|
d9ea82e7d9
|
Add basic arithmetic for Curve25519
|
2013-12-05 15:58:37 +01:00 |
|
Manuel Pégourié-Gonnard
|
3c0b4ea97e
|
Rename a few functions
|
2013-12-05 15:58:37 +01:00 |
|
Paul Bakker
|
498fd354c6
|
Added missing inline definition for other platforms to ecp_curves.c
|
2013-12-02 22:17:24 +01:00 |
|
Manuel Pégourié-Gonnard
|
d5e0fbe1a3
|
Remove now useless function
|
2013-12-02 17:20:39 +01:00 |
|
Manuel Pégourié-Gonnard
|
3ee90003c9
|
Make internal functions static again + cosmetics
|
2013-12-02 17:14:48 +01:00 |
|
Manuel Pégourié-Gonnard
|
9854fe986b
|
Convert curve constants to binary
Makes source longer but resulting binary smaller
|
2013-12-02 17:07:30 +01:00 |
|
Manuel Pégourié-Gonnard
|
32b04c1237
|
Split ecp.c
|
2013-12-02 16:36:11 +01:00 |
|
Manuel Pégourié-Gonnard
|
43863eeffc
|
Declare internal variables static in ecp.c
|
2013-12-02 16:34:24 +01:00 |
|
Manuel Pégourié-Gonnard
|
d35e191434
|
Drop useless include in ecp.c
|
2013-12-02 16:34:24 +01:00 |
|
Paul Bakker
|
9dc53a9967
|
Merged client ciphersuite order preference option
|
2013-12-02 14:56:27 +01:00 |
|
Paul Bakker
|
014f143c2a
|
Merged EC key generation support
|
2013-12-02 14:55:09 +01:00 |
|
Paul Bakker
|
4040d7e95c
|
Merged more constant-time checking in RSA
|
2013-12-02 14:53:23 +01:00 |
|
Manuel Pégourié-Gonnard
|
1a9f2c7245
|
Add option to respect client ciphersuite order
|
2013-11-30 18:30:06 +01:00 |
|
Manuel Pégourié-Gonnard
|
011a8db2e7
|
Complete refactoring of ciphersuite choosing
|
2013-11-30 18:11:07 +01:00 |
|
Manuel Pégourié-Gonnard
|
3252560e68
|
Move some functions up
|
2013-11-30 17:50:32 +01:00 |
|
Manuel Pégourié-Gonnard
|
59b81d73b4
|
Refactor ciphersuite selection for version > 2
|
2013-11-30 17:46:04 +01:00 |
|
Manuel Pégourié-Gonnard
|
0267e3dc9b
|
Add ecp_curve_info_from_name()
|
2013-11-30 15:10:14 +01:00 |
|
Manuel Pégourié-Gonnard
|
104ee1d1f6
|
Add ecp_genkey(), prettier wrapper
|
2013-11-30 14:35:07 +01:00 |
|
Manuel Pégourié-Gonnard
|
27290daf3b
|
Check PKCS 1.5 padding in a more constant-time way
(Avoid branches that depend on secret data.)
|
2013-11-30 13:36:53 +01:00 |
|
Manuel Pégourié-Gonnard
|
ab44d7ecc3
|
Check OAEP padding in a more constant-time way
|
2013-11-30 13:13:05 +01:00 |
|
Manuel Pégourié-Gonnard
|
a5cfc35db2
|
RSA-OAEP decrypt: reorganise code
|
2013-11-29 11:58:13 +01:00 |
|
Manuel Pégourié-Gonnard
|
5ad68e42e5
|
Mutex x509_crt_parse_path() when pthreads is used
|
2013-11-28 18:07:39 +01:00 |
|
Manuel Pégourié-Gonnard
|
964bf9b92f
|
Quit using readdir_r()
Prone to buffer overflows on some platforms.
|
2013-11-28 18:07:39 +01:00 |
|
Paul Bakker
|
76f03118c4
|
Only compile with -Wmissing-declarations and -Wmissing-prototypes in
library, not tests and programs
|
2013-11-28 17:20:04 +01:00 |
|
Paul Bakker
|
88cd22646c
|
Merged ciphersuite version improvements
|
2013-11-26 15:22:19 +01:00 |
|
Manuel Pégourié-Gonnard
|
da1ff38715
|
Don't accept CertificateRequest with PSK suites
|
2013-11-26 15:19:57 +01:00 |
|
Manuel Pégourié-Gonnard
|
dc953e8c41
|
Add missing defines/cases for RSA_PSK key exchange
|
2013-11-26 15:19:57 +01:00 |
|
Manuel Pégourié-Gonnard
|
c57b654a3e
|
Use t_uint rather than uintXX_t when appropriate
|
2013-11-26 15:19:56 +01:00 |
|
Paul Bakker
|
3209ce3692
|
Merged ECP improvements
|
2013-11-26 15:19:17 +01:00 |
|
Manuel Pégourié-Gonnard
|
20b9af7998
|
Fix min_version (TLS 1.0) for ECDHE-PSK suites
|
2013-11-26 14:31:44 +01:00 |
|
Manuel Pégourié-Gonnard
|
a5bdfcde53
|
Relax some SHA2 ciphersuite's version requirements
Changed:
- PSK ciphersuites (RFC 5487, section 3)
- ECDHE-PSK ciphersuites (RFC 5489, section 3)
- Additional Camellia ciphersuites (RFC 6367, sec 3.3)
Unchanged:
- all GCM ciphersuites
- Camellia ciphersuites from RFC 5932 (sec. 3.3.2)
- ECC-SHA2 ciphersuites from RFC 5289 (unclear)
- SHA2 from RFC 5246 (TLS 1.2, no precision)
|
2013-11-26 13:59:43 +01:00 |
|
Manuel Pégourié-Gonnard
|
96c7a92b08
|
Change mpi_safe_cond_assign() for more const-ness
|
2013-11-25 18:28:53 +01:00 |
|
Paul Bakker
|
e4c71f0e11
|
Merged Prime generation improvements
|
2013-11-25 14:27:28 +01:00 |
|
Paul Bakker
|
45f457d872
|
Reverted API change for mpi_is_prime()
|
2013-11-25 14:26:52 +01:00 |
|
Paul Bakker
|
8fc30b178c
|
Various const fixes
|
2013-11-25 13:29:43 +01:00 |
|
Manuel Pégourié-Gonnard
|
ddf7615d49
|
gen_prime: check small primes early (3x speed-up)
|
2013-11-22 19:58:22 +01:00 |
|
Manuel Pégourié-Gonnard
|
378fb4b70a
|
Split mpi_is_prime() and make its first arg const
|
2013-11-22 19:40:32 +01:00 |
|
Manuel Pégourié-Gonnard
|
0160eacc82
|
gen_prime: ensure X = 2 mod 3 -> 2.5x speedup
|
2013-11-22 17:54:59 +01:00 |
|
Manuel Pégourié-Gonnard
|
711507a726
|
gen_prime: ensure X = 3 mod 4 always (2x speed-up)
|
2013-11-22 17:35:28 +01:00 |
|
Manuel Pégourié-Gonnard
|
3e3d2b818c
|
Fix bug in mpi_safe_cond_assign()
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
918148193d
|
Enhance ecp_selftest
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
d728350cee
|
Make memory access pattern constant
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
aade42fd88
|
Change method for making M odd in ecp_mul()
- faster
- avoids M >= N (if m = N-1 or N-2)
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
36daa13d76
|
Misc details
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
469a209334
|
Rm subtraction from ecp_add_mixed()
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
01fca5e882
|
Do point inversion without leaking information
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
71c2c21601
|
Add mpi_safe_cond_assign()
|
2013-11-21 21:56:38 +01:00 |
|
Manuel Pégourié-Gonnard
|
44aab79022
|
Update bibliographic references
|
2013-11-21 21:56:38 +01:00 |
|