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
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
Sean Parkinson
3455e726f9
SP int: make used and size fields unsigned
...
used and size have no reason to be negative - change type.
Change code to match unsigned change. Mostly change variables to be
unsigned where possible.
integer.c: Only have mp_rand_prime available when needed and
mp_prime_is_prime_ex is available.
Fixes from regression testing.
2023-02-03 17:09:56 +10:00
Sean Parkinson
f6da3a26ac
Ref counting: rework for static analysers
...
When always reference counting APIs always return 0 don't check return
value for error.
Reference decrement set isZero to false on error.
2023-02-03 10:13:32 +10:00
JacobBarthelmeh
9e9315f480
add sequence around algo parameters with authenvelop
2023-02-02 10:54:38 -08:00
David Garske
a4f55b01d6
Merge pull request #6041 from JacobBarthelmeh/seco
...
Fix to mask the argument for enc/dec flag used with GCM/CCM in CAAM+SECO build
2023-02-02 08:32:48 -08:00
Sean Parkinson
447991a9c2
Merge pull request #5949 from JacobBarthelmeh/Testing
...
add pragram around sanity check for vcpkg build warning
2023-02-02 10:34:14 +10:00
Sean Parkinson
55d43a46b8
SP int: sp_invmod_mont_ct check err before setting
...
Two places in sp_invmod_mont_ct were not checking err is set before
performing a new operation and setting err. Change to check error before
performing operation.
2023-02-02 08:45:45 +10:00
JacobBarthelmeh
d76195c52a
add fix GCM use with CAAM SECO
2023-02-01 14:42:39 -08:00
Daniel Pouzzner
a8a61fe6b7
evp.c: fix gating in wolfSSL_EVP_CIPHER_CTX_cleanup() to avoid switch-unreachable; also fix indentation.
2023-02-01 01:29:36 -06:00
Daniel Pouzzner
38c057a084
fix resource leak (missing calls to wc_AesFree()) in wolfSSL_EVP_CIPHER_CTX_cleanup();
...
fix file descriptor leaks in AF_ALG code, and fix return codes (WC_AFALG_SOCK_E, not -1) in afalg_aes.c;
fixes for sanitizer-detected forbidden null pointer args in AfalgHashUpdate() and AfalgHashCopy();
fixes for resource leaks in api.c test_wolfSSL_AES_cbc_encrypt() (missing wc_AesFree()s);
fixes for resource leaks in test.c openssl_test() (missing wolfSSL_EVP_CIPHER_CTX_cleanup());
also some local fixes for bugprone-signed-char-misuse, readability-redundant-preprocessor, and clang-diagnostic-strict-prototypes, in src/pk.c and src/ssl.c.
2023-02-01 00:49:34 -06:00
Anthony Hu
462f76c1ff
Merge pull request #6033 from dgarske/stm32_fixes
...
Fixes and cleanups for STM32
2023-01-31 12:13:13 -05:00
David Garske
9b6e787071
Merge pull request #6034 from gojimmypi/Espressif_fix_6024
...
ESP32 SHA384 fixes
2023-01-31 09:08:54 -08:00
David Garske
934d8e274f
Merge pull request #5926 from SparkiDev/openssl_ec_api_rework
...
EC OpenSSL compat: rework EC API
2023-01-31 09:08:26 -08:00
gojimmypi
53d6e79f89
ESP32 SHA384 fixes
2023-01-30 16:58:57 -08:00
David Garske
2d03a052e1
Fixes and cleanups for STM32:
...
* Fix for STM32 Hash peripherals (like on F437) with FIFO depth = 1.
* Cleanups for `XREALLOC` and new `WOLFSSL_NO_REALLOC` to force undef of `XREALLOC`.
* Change STM32 Cube to default to `NO_TLS_UART_TEST`.
2023-01-30 16:44:47 -08:00
Sean Parkinson
7691cd4b45
EC OpenSSL compat: rework EC API
...
Reworked the implementations of the EC APIs including:
wolfSSL_EC_curve, wolfSSL_EC_METHOD, wolfSSL_EC_GROUP,
wolfSSL_EC_POINT, wolfSSL_EC_KEY, wolfSSL_ECDSA_SIG, wolfSSL_ECDSA and
wolfSSL_ECDH.
Added support for EC parameters to PEM decoding.
EccEnumToNID() moved out of wolfCrypt - it maps NIDs defined in
wolfssl/openssl/ec.h to those in wolfssl/wolfcrypt/ecc.h.
Moved wc_OBJ_sn2nid() out of wolfCrypt - implementation uses
EccEnumToNID().
Changed reference counding to use wolfSSL_Ref.
Added tests to api.c that increase coverage of EC APIs.
2023-01-31 10:19:57 +10:00
David Garske
08538b69f3
Merge pull request #6016 from SparkiDev/sp_dh_agree_uinit
...
DH and SP: sp_DhExp_* called with uninitialized outLen
2023-01-30 15:56:46 -08:00
Sean Parkinson
7cdf5c7956
SP Aarch64 ECC P256: mont reduce fix
...
For Montgomery Reduction of P256: Don't set x10 and x11 to words of mu
<< 32. x11 is needed later and there are plenty of registers.
2023-01-30 11:14:12 -08:00
David Garske
420f2f45c1
Merge pull request #6019 from SparkiDev/sp_arm64_cc
...
SP Aarch64: conditional changed in asm needs "cc"
2023-01-30 11:06:53 -08:00
András Fekete
d72ea6101f
Merge pull request #6027 from SparkiDev/sp_int_div_small
...
SP int: div small static code analysis change
2023-01-30 10:34:05 -05:00
Sean Parkinson
0e16d2919f
Merge pull request #6022 from douzzer/20230127-fixes
...
20230127-fixes
2023-01-30 08:46:42 +10:00
Sean Parkinson
08afe6a404
SP int: div small static code analysis change
...
_sp_div_small: Make it explicit as possible that we only want the bottom
digit of the product subtracted from the bottom word of t. Top digit is
unnecessary and more cycles used if calculated.
2023-01-30 08:40:45 +10:00
David Garske
6e9d956a49
Merge pull request #6021 from kareem-wolfssl/zd15544
...
Fix for building with ASN template and `NO_ASN_TIME`
2023-01-27 18:19:19 -08:00
Kareem
c70ca25282
Fix building NO_ASN_TIME with cert gen and OpenSSL Extra enabled.
2023-01-27 16:09:04 -07:00
Daniel Pouzzner
d077c39f42
wolfcrypt/test/test.c: in aes_xts_128_test(), gate in-place test on !HAVE_FIPS || FIPS_VERSION_GE(5,3); in hpke_test(), gate tests on availability of relevant ECC curve, not just on relevant digest.
2023-01-27 16:49:46 -06:00
Daniel Pouzzner
687bbeb712
wolfcrypt/src/port/arm/armv8-aes.c: harmonize arg validation in aarch64-armasm wc_AesCcm{En,De}crypt() with aes.c -- tolerate null in/out iff inSz==0.
2023-01-27 16:32:13 -06:00
Chris Conlon
f14c27f644
Fix SE050 RSA public key loading and RSA/ECC SE050 usage from TLS with WOLF_PRIVATE_KEY_ID
2023-01-27 14:28:47 -07:00
Kareem
4542eb0df1
Fix NO_ASN_TIME support for ASN template, also fix expired certificate unit tests with NO_ASN_TIME defined.
2023-01-27 12:39:53 -07:00
Sean Parkinson
f61938a882
SP Aarch64: conditional changed in asm needs "cc"
...
Add "cc" to asm that changes the conditional flags.
2023-01-27 16:33:06 +10:00
Sean Parkinson
134d4cca67
DH and SP: sp_DhExp_* called with uninitialized outLen
...
Fix for GeneratePublicDh was not right in #6002 .
sp_DhExp_* are called from multiple functions.
Sometimes outLen contains a value and sometimes not.
Check public key output size in GeneratePublicDh before calling SP.
2023-01-27 10:13:56 +10:00
David Garske
06509021ff
Merge pull request #6013 from douzzer/20230125-various-fixes
...
20230125-various-fixes
2023-01-26 15:10:18 -08:00
David Garske
58c2fe1c40
Merge pull request #6011 from SparkiDev/xts_in_place_enc_fix
...
AES XTS: encrypt not handling in-place properly
2023-01-26 14:04:58 -08:00
Daniel Pouzzner
f776371874
wolfcrypt/src/hpke.c: add PRIVATE_KEY_{UNLOCK,LOCK}() wrappers in wc_HpkeSealBase() and wc_HpkeOpenBase();
...
wolfcrypt/test/test.c: remove PRIVATE_KEY_{UNLOCK,LOCK}() wrappers from hpke_test_single(), and do a smallstack refactor.
2023-01-26 15:00:56 -06:00
Daniel Pouzzner
78cc2c5c3e
wolfcrypt/src/port/af_alg/afalg_aes.c: in wc_AesCbc{En,De}crypt(), handle WOLFSSL_AES_CBC_LENGTH_CHECKS as in wolfcrypt/aes.c; in wc_AesGcm{En,De}crypt(), truncate ivSz to WC_SYSTEM_AESGCM_IV if necessary.
2023-01-25 23:36:01 -06:00
Daniel Pouzzner
8f2ae77513
wolfcrypt/test/test.c: add missing PRIVATE_KEY_UNLOCK()/PRIVATE_KEY_LOCK() in hpke_test_single().
2023-01-25 23:32:55 -06:00
David Garske
584411f21a
Merge pull request #6012 from kareem-wolfssl/zd15524
...
Fix building FIPSv2 with WOLFSSL_ECDSA_SET_K defined.
2023-01-25 18:59:38 -08:00
Kareem
c9125f9685
Fix building FIPSv2 with WOLFSSL_ECDSA_SET_K defined.
2023-01-25 14:49:05 -07:00
David Garske
7e1aecfe4c
Merge pull request #6001 from SparkiDev/dsa_sign_sig_size
...
DSA sign: use mp_to_unsigned_bin_len
2023-01-25 11:59:27 -08:00
David Garske
becedd41c9
Merge pull request #6000 from SparkiDev/dsa_force_zero
...
DSA: Don't force zero MPs on memory allocation failure
2023-01-25 11:59:13 -08:00
Sean Parkinson
e9af0136b9
AES XTS: encrypt not handling in-place properly
...
Fix AES XTS in-place encrypt to work when ciphertext stealing.
2023-01-25 09:32:37 +10:00