Tim Weller
fd3d8c407d
Update wolfCrypt benchmark Windows / Visual Studio build files to include x64 Configuration/Platform combinations (e.g. Debug-x64) and fixed compilation errors in benchmark.c related to conditional-compilation.
2023-02-24 11:53:01 -06:00
jordan
22b1857bee
Fix malloc of zero size in fast_s_mp_sqr and fast_s_mp_mul_digs.
2023-02-24 10:18:36 -06:00
Anthony Hu
1fcff5b30d
Changes that make kyber work on STM32
...
(wolfcrypttest and benchmark)
2023-02-24 04:08:07 -05:00
JacobBarthelmeh
121ee7a6df
fix spelling, refactor openssl extra struct, remove magic number, use static mutex
2023-02-22 14:31:16 -08:00
JacobBarthelmeh
b801a96f8c
Port to RT1170 and expand CAAM driver
2023-02-22 08:26:25 -08:00
Rhys Hansen
fa41754b83
RX64/RX71 SHA hardware support updates
...
Made the following updates based on review feedback
Fixed mixed variable declaration and simplified cases by typedefing
wolfssl_RX64_HW_Hash to wc_Sha, wc_Sha224, & wc_Sha256
Added files to include.am so they are built when using make
Add WOLFSSL_RENESAS_RX64_HASH to settings.h and set WOLFSSL_NO_HASH_RAW
in settings.h based on value of WOLFSSL_RENESAS_RX64_HASH
Add and handle return value for rx64_hw_Open
Fix some minor formatting and comments
2023-02-21 15:46:25 -06:00
Rhys Hansen
e47633ad83
Add RX64/RX71 SHA hardware support
...
Adding support for SHA1, SHA224, and SHA256 hardware acceleration on
Renesas RX64 and RX71 microcontrollers.
This follows the a similar pattern as the Renesas TSIP support.
Speed comparison for hashing 64KB of data on a RX64M
| Hash Speed | SHA1 | SHA256 |
|:----------:|:----:|:------:|
| Hardware | 4ms | 4ms |
| Software | 11ms | 89ms |
Update define for RX64/RX71 SHA hardware support
This will allow for different hardware acceleration modules to be
enabled individually.
Init & Close for the RX64/RX71 SHA subsystem for WolfCrypt
This ensures that the SHA subsystem is ready for use when WolfCrypt
needs access to it.
Shorten the max line length, clean up comments
This wraps code and comments at 80 characters and adds some comments
2023-02-21 15:46:17 -06:00
David Garske
fc6d693dae
Update logging enter, exit, msg to match function names. Fix some typos and improper use of "enter". Fix internal uses of SSL_SUCCESS
and SSL_FAILURE
. Add WOLFSSL_DEBUG_NONBLOCK
option to allow printing iterations without debug enabled.
2023-02-21 12:02:15 -08:00
JacobBarthelmeh
da04e0fb4c
Merge pull request #6115 from SKlimaRA/SKlimaRA/fix-decompress-dynamic
...
fixed heap corruption
2023-02-21 11:58:11 -07:00
Anthony Hu
a6114afb84
Merge pull request #6114 from dgarske/stm32_hash
...
Fix for STM32 hashing hardware
2023-02-21 18:37:03 +00:00
gojimmypi
821120e31c
Add SHA512/224 and SHA512/256 benchmarks ( #6113 )
2023-02-21 09:27:03 -08:00
Stanislav Klima
208056b2da
fixed heaap corruptions
2023-02-21 11:01:50 +01:00
Daniel Pouzzner
e0abb0e306
Merge pull request #6097 from gojimmypi/New_SHA512_Tests
...
Add new SHA-512/224 and SHA-512/256 tests
2023-02-21 01:39:38 -06:00
gojimmypi
136267d29c
Add new SHA-512/224 and SHA-512/256 tests
2023-02-20 16:55:38 -08:00
David Garske
39e72630ce
Proper fix for STM32 hashing. FIFO is always 32 bytes. The original U5/H7 proper fix is to make sure the hash is "done" before saving state.
2023-02-20 15:14:44 -08:00
Sean Parkinson
9a7cd7367a
SP: fix point_add_qz1
...
Better detection of when add won't work and double needed.
Minor reorg of point operations.
2023-02-20 21:53:52 +10:00
Chris Conlon
588b694c7d
Merge pull request #5709 from TakayukiMatsuo/ccv
2023-02-17 17:02:04 -07:00
David Garske
c476dd6e28
Merge pull request #6103 from SparkiDev/sp_ecdsa_sig_r0
...
SP ECC sign: reject random k when r is 0
2023-02-17 13:58:53 -08:00
Sean Parkinson
26b7052b3f
SP ECC sign: reject random k when r is 0
...
SP ECC signing code was generating signatures with r of 0.
This is not allowed by the algorithm description.
Retry sig gen when r is 0 like when s is 0.
2023-02-17 08:55:59 +10:00
tim-weller-wolfssl
dea123f88e
Minimal changes to avoid Out-of-Bounds write in ASN.1 parsing logic. Add unit tests for ParseCert() API passing badly formed ASN data (should error out gracefully).
2023-02-16 07:49:08 -06:00
Sean Parkinson
195ca1a20a
AES GCM benchmark: separate aes-gcm streaming runs
...
Always to AES-GCM one-shot benchmark.
When WOLFSSL_AESGCM_STREAM, always perform AES-GCM streaming benchmark.
2023-02-16 09:37:00 +10:00
Daniel Pouzzner
a945017a88
wolfcrypt/test/test.c: around ecc_ctx_kdf_salt_test(): fix fips gating, fix length handling for "message", fix memory leaks;
...
in crypto_ecc_verify(), crypto_ecc_sign(), ecc_test_nonblock_dhe(), and ecc_test_nonblock_ecdsa(), add codepoint-specific retvals.
2023-02-13 14:21:50 -06:00
David Garske
405b98aaa4
Merge pull request #6078 from SparkiDev/rsapss_openssl_compat
...
X509 RSA PSS: fixes for OpenSSL compat layer
2023-02-13 08:43:10 -08:00
Sean Parkinson
0a8753d2b2
ASN template, DSA: Clear the mp_int before re-reading data
...
Make sure the mp_int is cleared so that any exisiting bigint is freed.
Tidy up api.c code.
2023-02-13 11:08:18 +10:00
tmael
55a7e24cfe
Support pthread_rwlock ( #5952 )
...
* Support rwlock
* Fix typo, ENABLE_SESSION_CACHE_ROW_LOCK with TITAN_SESSION_CACHE
* Implement read lock
- Use read lock for the SessionCache
- Don't copy the
* TLS 1.3: Don't push ticket to cache if we don't retrieve from it
* Detect rwlock support with PTHREAD_RWLOCK_INITIALIZER
* Implement explicit rwlocks
- Mutex's still necessary for signals. Implement explicit rwlocks and we can migrate critical mutexs to rwlocks when necessary.
* Remove WOLFSSL_USE_RWLOCK guard around mutex condLock
* condLock not necessary after all
* Use configure.ac to check for pthread_rwlock_destroy support
* Can't include config.h in wc_port.h as that breaks make distcheck
* Check for pthread_rwlock_t to determine if rwlock is available
* Code review
---------
Co-authored-by: Juliusz Sosinowicz <juliusz@wolfssl.com>
2023-02-10 10:42:38 -08:00
John Bland
338d8db274
Ecc ctx state fix ( #6077 )
...
* set the client state correctly when wc_ecc_ctx_set_kdf_salt is called
* add test that covers wc_ecc_ctx_set_kdf_salt
* use shared key and smallstack to reduce test stack usage
2023-02-10 10:05:52 -08:00
philljj
5b8fda1ac6
Fix overflow in fp_to_unsigned_bin_len length check. ( #6075 )
...
* Fix overflow in fp_to_unsigned_bin_len length check.
* Add a second check when i == a->used - 1.
2023-02-10 08:46:37 -08:00
TakayukiMatsuo
0c771a93dc
Improve TLS1.2 client authentication to use TSIP
2023-02-10 16:16:25 +09:00
Sean Parkinson
b359dd27e4
AES ECB/CTR/XTS: enable AES-NI usage
...
Perform multiple blocks of encryption/decryption in assembly call with
ECB.
This improves performance of ECB, CTR and XTS on Intel x64.
2023-02-10 11:14:06 +10:00
Sean Parkinson
9750fc4485
X509 RSA PSS: fixes for OpenSSL compat layer
...
Add NIDs for RSA-PSS to OpenSSL compat layer.
Have wc_RsaPublicKeyDecode call wc_RsaPublicKeyDecode_ex where logic for
RSA-PSS handling is already done.
2023-02-10 10:25:49 +10:00
Daniel Pouzzner
9dd23fca25
wolfcrypt/src/pwdbased.c: refactor copy in scryptSalsa() as a memcpy(), for efficiency and to work around a bug in clang-17; also fix scratch buffer x in scryptBlockMix() to have correct alignment.
2023-02-08 21:31:56 -06:00
Sean Parkinson
49a500c2af
Merge pull request #6070 from bandi13/coverityFixes
...
Coverity fixes
2023-02-09 10:21:12 +10:00
Sean Parkinson
008d2962d7
Merge pull request #6072 from bandi13/dsaNoInit
...
Fix for calling 'mp_clear(tmp)' without having called 'mp_init(tmp)'
2023-02-09 10:18:51 +10:00
John Bland
e9aeb1a857
Add nuttx integration ( #6043 )
2023-02-08 16:04:53 -08:00
Sean Parkinson
7a30617b26
Merge pull request #6073 from dgarske/shake_bench
...
Fix for benchmarking shake with custom block size
2023-02-09 08:06:24 +10:00
Andras Fekete
767c282c1d
Addressing PR comments
2023-02-08 16:35:03 -05:00
David Garske
cefd55eb74
Fix for benchmarking shake with custom block size. Using ./benchmark -shake 1024
caused seg fault.
2023-02-08 11:25:53 -08:00
Andras Fekete
08c63d55dc
Addressing PR comments
2023-02-08 13:18:13 -05:00
Andras Fekete
38f2f43705
Fix for calling 'mp_clear(tmp)' without having called 'mp_init(tmp)'
2023-02-08 13:08:12 -05:00
Sean Parkinson
3e82abd002
SP int: tidy up ifdef
2023-02-08 10:45:00 +10:00
David Garske
ee12a5f0c6
Merge pull request #6048 from SparkiDev/asn1_template_def
...
ASN: make template default for configure
2023-02-07 14:15:57 -08:00
David Garske
299bee96d2
Merge pull request #6060 from SparkiDev/sp_int_fixes_4
...
SP int: fix sp_div_2 to use signed integer
2023-02-07 14:13:02 -08:00
Sean Parkinson
20ae076b80
integer.c: fast mod reduce fix
...
When using small stack, not enough memory uas being allocated in
fast_mp_montgomery_reduce().
Allocate the required space and memset all used memory.
2023-02-07 11:29:53 +10:00
Sean Parkinson
ca0731616f
SP int: fix sp_div_2 to use signed integer
...
sp_div_2 no longer handled a->used of 0 and 1.
Rework to have have internal APIs that don't return errors and use them
where no error is expected.
2023-02-07 08:51:15 +10:00
Sean Parkinson
bd155389e2
ASN: make template default for configure
...
When loading DH private key, create the public key if not found.
Failures fixed.
2023-02-07 08:49:46 +10:00
David Garske
a8c2a9aeab
Merge pull request #6040 from SparkiDev/sp_invmod_mont_ct_err
...
SP int: sp_invmod_mont_ct check err before setting
2023-02-05 14:17:51 -08:00
David Garske
c6018b837d
Merge pull request #6050 from JacobBarthelmeh/time
...
fix warning if ltime is unsigned
2023-02-03 11:06:17 -08:00
David Garske
29c884eafd
Merge pull request #6045 from JacobBarthelmeh/PKCS7
...
add sequence around algo parameters with authenvelop
2023-02-03 10:29:19 -08:00
David Garske
1027c0667a
Merge pull request #6049 from SparkiDev/sp_int_used_size
...
SP int: make used and size fields unsigned
2023-02-03 09:38:40 -08:00
Jacob Barthelmeh
d184a17644
fix warning if ltime is unsigned
2023-02-03 07:43:08 -07:00