toddouska
cd934a95a4
Merge pull request #2445 from JacobBarthelmeh/SanityChecks
...
sanity check on resulting ecc size
2019-10-11 10:53:20 -07:00
Sean Parkinson
901ee627fc
Fixes from using cppcheck tool
...
Various fixes for uninitialized variable use.
sniffer.c: close file when seek fails
tls.c: fix QSH_GET_SIZE macro
wolfio.c: uIPGenerateCookie: use the parameter, _ctx, instead of self
referencing.
wolfssl_adds.c: check for equivalent to XBADFILE to indicate error.
SP: change right shift of signed value to unsigned
sp_int.h: define 128-bit types
types.h: change a XMALLOC define to not use (,,) - cppcheck doesn't like
it and is unnecessary.
2019-10-01 09:22:00 +10:00
David Garske
872d222b59
* Adds the following openssl compatibility API's:
...
- SSL_CIPHER_get_id
- SSL_CIPHER_get_rfc_name
- SSL_get_cipher_by_value
- X509_print_ex
- X509_NAME_add_entry_by_NID
- X509_time_adj
- X509_time_adj_ex
- DTLSv1_get_timeout
- DTLSv1_handle_timeout
- DTLSv1_set_initial_timeout_duration
- SSL_CTX_set_current_time_cb
- PEM_write_bio_RSA_PUBKEY
- PEM_read_bio_RSA_PUBKEY
- PEM_write_bio_PUBKEY
- EVP_PKEY_missing_parameters
- EVP_PKEY_cmp
- BN_is_negative
- BIO_set_retry_write
* Improvements to the notBefore and notAfter date handling.
* Improvements to BIO and BIO_METHOD
- Moved structure to public area to allow for dereferencing
- Renamed members to provide compatibility.
- Added support for custom BIO methods for read/write.
* Added advanced openssl compatibility test cases for key and certificate generation.
* Fix for `ASN1_STRING_set` to allow NULL data.
* Fix to populate public key information on `EVP_PKEY_assign_RSA` and `EVP_PKEY_assign_EC_KEY`.
* Fix naming for `X509_get_notBefore` and `X509_get_notAfter` functions.
* Added `wc_EccPublicKeyDerSize`.
* Improvements to `wc_RsaPublicKeyDerSize`, so dummy memory doesn't have to be allocated.
* Made the `wc_*PublicKeyDerSize` functions public.
* Eliminate use of snprintf for UTC to generalized time conversion in `wolfSSL_ASN1_TIME_to_generalizedtime`.
2019-09-26 08:42:35 -07:00
David Garske
523b1801ed
Cleanup of the wc_ecc_sign_hash function to separate the async logic. This improves the ECC r/s local case to appease static analyzers. Fixes https://github.com/wolfSSL/wolfssl/issues/2342 .
2019-09-19 13:33:02 -07:00
David Garske
1493b94b27
Eliminate async NUMA allocation for wc_ecc_gen_k. Additional DECLARE_VAR checks. Improve mp_rand to avoid alloc in async case.
2019-09-19 11:34:59 -07:00
Jacob Barthelmeh
03967d62f4
sanity check on resulting ecc size
2019-09-03 10:54:11 -06:00
David Garske
ed7ac6fb26
Coverity fixes to make static analysis happy.
2019-08-14 15:42:47 -07:00
David Garske
b4673344c0
Adds new wc_ecc_get_curve_params API for getting the ecc_set_type params for a curve index. Fix for example client and server using wrong macro for detecting ECC 256-bit enabled.
2019-08-02 05:50:00 -07:00
toddouska
8b6e66f095
Merge pull request #2353 from SparkiDev/ecc_nonce
...
Improve nonce use in ECC mulmod
2019-07-17 11:23:12 -07:00
Sean Parkinson
483f6a5acd
Improve nonce use in ECC mulmod
2019-07-17 09:27:29 +10:00
toddouska
d620433d1d
Merge pull request #2209 from tmael/maintenanceDefects
...
Increased ciphers buffer size for testsuite and ECC API for getting curve from dp
2019-07-15 16:49:13 -07:00
Martin Kinčl
ad8f9c6134
Changed memsetting mp_ints to boolean flag.
2019-05-23 13:22:09 +02:00
Martin Kinčl
797dae9d74
Fixed use of uninitialized value in wc_ecc_sig_to_rs.
2019-05-17 18:04:39 +02:00
Tesfa Mael
ade8f780a9
simplify to not expect null terminated strings
2019-05-07 11:11:41 -07:00
David Garske
3c1569dff7
Fix for issue with new wc_ecc_get_curve_order_bit_count function not free'ing memory when used with normal math. Started in https://github.com/wolfSSL/wolfssl/pull/2201
2019-05-06 11:41:50 -07:00
Tesfa Mael
06eba2c1e2
Removed a redundant check
2019-05-02 13:58:55 -07:00
toddouska
5e343b8e7e
Merge pull request #2201 from dgarske/siglen
...
Improvements to the maximum ECC signature calculations
2019-05-01 15:42:12 -07:00
David Garske
443fef6a6a
Further optimization of the ECC signature size calculation.
2019-04-30 08:50:19 -07:00
Tesfa Mael
edef75c70f
Wrapped new unit test API with FIPS macros
2019-04-24 10:02:20 -07:00
Tesfa Mael
5d2f34aa6d
Addressed review comments
2019-04-23 10:04:41 -07:00
David Garske
34c1d5cba0
Cleanups and fixes for CryptoCell port:
...
* Protection for .c includes.
* Improved make pub memory issue reporting.
* README.md updates.
* Cleanup of user_settings.h.
2019-04-23 10:04:41 -07:00
David Garske
6c65550eab
Added CryptoCell-310 support
...
- SHA-256
- AES CBC
- CryptoCell 310 RNG
- RSA sign/verify and RSA key gen
- RSA encrypt/decrypt, decrypt inline
- ECC sign/verify/shared secret
- ECC key import/export and key gen pairs
- Hardware RNG and RTC of nRF52840 for benchmark timing source
- readme doc
2019-04-23 10:04:41 -07:00
Tesfa Mael
393ca1b30c
Increased test suite ciphers buffer size (ticket #5000 ))
...
Enhancement to support ECC domain param HEX string or unsigned bin comparison (ticket #5035 )
2019-04-22 10:30:05 -07:00
David Garske
4ee4cb2068
Improved readability for ECC signature max size calculations.
2019-04-15 11:08:08 -07:00
David Garske
bd618970c1
Fixed API unit test for wc_ecc_sig_size to allow smaller result.
2019-04-12 12:36:20 -07:00
David Garske
1fffe4a463
Improvements to the maximum ECC signature claculations. The wc_ecc_sig_size function provides actual max based on curve order. The wc_ecc_sig_size_calc has also been adjusted to provide a more accurate maximum size.
2019-04-10 21:05:46 -07:00
David Garske
9ce32e3808
Merge pull request #2184 from ejohnstown/ecc-fix
...
Fix Clang Static-Analysis Finding
2019-04-01 05:46:22 -07:00
John Safranek
6d1a11eefb
Clang static analysis found a potential issue when checking an ECC key
...
when the curve cache is enabled. There was a chance it could dereference
NULL. Added some error checks to fix it.
2019-03-29 13:35:27 -07:00
David Garske
f66aa60385
Fix for build warning with x/y always true when not building with ALT_ECC_SIZE. Fix for build error with undefined wc_ecc_sign_hash_ex when building ATECC and WOLFSSL_PUBLIC_MP.
2019-03-21 09:13:39 -07:00
John Safranek
246c444b93
Updates for v4.0.0
...
Update the copyright dates on all the source files to the current year.
2019-03-15 10:37:36 -07:00
toddouska
0d48a4a1a7
Merge pull request #2133 from dgarske/fixes_16bit
...
Fixes for data types, cast warnings and shift operations when using 16-bit platform
2019-03-12 16:53:27 -07:00
David Garske
3d9c660688
Refactor of the ECC crypto callback return code handling.
2019-03-11 08:28:45 -07:00
David Garske
99b5188ee9
Fix for missing curve specs when using ATECC due to PR ( https://github.com/wolfSSL/wolfssl/pull/2115 ).
2019-03-04 09:48:33 -08:00
toddouska
8f3f27065c
Merge pull request #2114 from dgarske/qat_bench
...
Fixes and improvements for async / QuickAssist
2019-02-27 14:49:32 -08:00
David Garske
2bb5dd710c
Fix for curve load failure leak.
2019-02-25 15:19:31 -08:00
David Garske
b45241f6f8
Fix to use QAT for ECC sign and verify when SP is enabled and key was initialized with devId. Fixes issues with wolfCrypt test and QAT not properly calling "again" for the ECC sign, verify and shared secret.
2019-02-25 14:51:15 -08:00
David Garske
712ecabf36
Fix for ECC sign with hardware to ensure the input is truncated to the key order.
2019-02-22 15:30:52 -08:00
toddouska
272181bc2e
Merge pull request #2086 from dgarske/atecc_makekey
...
Fix for ATECC make key case when `curve_id == 0`
2019-02-13 09:52:54 -08:00
David Garske
acb983a154
Fix for ATECC make key case when curve_id == 0 (default). ZD 4383
2019-02-12 08:34:34 -08:00
Sean Parkinson
e86aae00ed
Change to allow setting of devId for private key
2019-02-11 12:37:44 +10:00
David Garske
7c4fa33937
Improve the error handling for non ECC_SECP256R1 curve in wc_ecc_make_key_ex.
2019-01-22 14:04:18 -08:00
Daniele Lacamera
501a3a287b
Allow ECC Verify-only operations with NO_ASN and SP_MATH
2019-01-21 07:11:35 +01:00
David Garske
ee45cfdbcb
Refactor and rename of cryptodev to cryptocb. Refactor API names from wc_CryptoDev to use wc_CryptoCb. Backwards compatibility is retained for anyone using old WOLF_CRYPTO_DEV name. Added comment about fall-through case when CryptoCb return NOT_COMPILED_IN.
2019-01-17 11:01:14 -08:00
David Garske
61757c83eb
Fix double free with ./configure --enable-asynccrypt --enable-smallstack.
2018-12-21 15:45:33 -08:00
David Garske
a936c609f3
Fixes for ATECC508A/608A CryptoAuthLib demo.
2018-12-10 11:40:37 -08:00
David Garske
9f6167872f
Fixes for additional use of unititlized variable with async for AES and DH.
2018-11-08 15:56:51 -08:00
David Garske
e9a10e3614
Scan-build fix for possible case where r and s aren't initalized for wc_ecc_verify_hash.
2018-11-08 15:40:06 -08:00
toddouska
144ff68cfb
Merge pull request #1882 from SparkiDev/pkcs11_lib
...
Improvements for PKCS#11 library
2018-11-06 08:53:57 -08:00
Jacob Barthelmeh
a953a3141e
infer and g++ build fixes
2018-11-01 09:59:35 -06:00
Sean Parkinson
7551e49fed
Improvements for PKCS#11 library
2018-10-18 17:31:17 +10:00