Commit Graph

678 Commits

Author SHA1 Message Date
Mahavir Jain
fec7fc30f1
fix(api-docs): include in the ECDSA APIs for doxygen build 2023-11-15 09:42:27 +05:30
Mahavir Jain
7bb29086df
docs: add ECDSA peripheral chapter for H2/P4
- Add ECDSA peripheral chapter and instructions to program efuse key block
- Update security guide for ECDSA peripheral mention for device identity
- Link with ESP-TLS guide about using ECDSA peripheral in TLS connection
2023-11-15 09:42:26 +05:30
Mahavir Jain
f9501f6ea9
fix(ecdsa): remove unused k_mode from the ECDSA HAL/LL API
For ESP32-H2 case, the hardware k mode is always enforced through
efuse settings (done in startup code).

For ESP32-P4 case, the software k mode is not supported in the peripheral
itself and code was redundant.
2023-11-15 09:42:26 +05:30
harshal.patil
d3be7bda05
fix(mbedtls): move interrupt allocation during initialization phase 2023-11-06 11:20:53 +05:30
Marius Vikhammer
95703297a6 Merge branch 'ci/psram_config_fix' into 'master'
ci: fix warnings for invalid kconfig option

See merge request espressif/esp-idf!23250
2023-11-02 13:44:04 +08:00
Marius Vikhammer
77bb19c49e ci(build): fixed/ignored warnings from unknown symbols in sdkconfig.defaults 2023-11-01 01:14:00 +00:00
Mahavir Jain
5b047057ca
feat(mbedtls): add new deprecated cert list and relevant config
Cert bundle is periodically updated with the upstream Mozilla's NSS
root cert store. Retracted certs are moved to deprecated list now and
an additional config allows to include them in the default bundle. New
config is kept default disabled but can be enabled if one would like
to ensure 100% compatibility w.r.t. cert bundle across IDF minor or
patch releases. In IDF major release the deprecated list shall be reset.
2023-10-29 12:21:22 +05:30
Espressif BOT
24446bfab1
change(esp_crt_bundle): Update esp_crt_bundle certificates 2023-10-29 12:21:21 +05:30
Mahavir Jain
804ed172dd
fix(mbedtls): allow to use built in entropy implementation for linux target 2023-10-26 15:12:42 +05:30
Jiang Guang Ming
e882782f0d feat(mbedtls): add new option CONFIG_MBEDTLS_USE_CRYPTO_ROM_IMPL for mbedtls pytest 2023-10-23 13:10:44 +08:00
Jiang Guang Ming
37ec1cc592 feat(mbedtls): support C2 mbedtls can use crypto algorithm in ROM 2023-10-23 13:10:44 +08:00
Mahavir Jain
dbc33ca7aa Merge branch 'feature/add_intr_priority_config_option' into 'master'
feat(mbedtls): Add config for interrupt priority in AES and RSA

Closes IDF-7963 and IDF-7964

See merge request espressif/esp-idf!26190
2023-10-16 11:33:03 +08:00
Mahavir Jain
6b62065b92 Merge branch 'fix/crypto_periphs_use_rcc_atomic_blocks' into 'master'
Use rcc atomic blocks to enable/reset crypto peripherals

See merge request espressif/esp-idf!25811
2023-10-13 22:37:58 +08:00
nilesh.kale
cf4a7bb09d feat(mbedtls): Add config for interrupt priority in AES and RSA(MPI) 2023-10-12 11:06:13 +05:30
Mahavir Jain
0c3ed4f540 fix(mbedtls): remove deprecated MBEDTLS_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION
This config has been removed in the upstream mbedTLS starting 3.0
release. Please see mbedTLS changelog for more details.
2023-10-11 09:32:32 +00:00
Mahavir Jain
e9094cef66 fix(mbedtls): dynamic buffer feature issue with mbedtls 3.5.0
Set max TLS version in the SSL context during setup phase. Dynamic
buffer feature overrides the `mbedtls_ssl_setup` API and hence
this change is required per upstream 3.5.0 codebase change.
2023-10-11 09:32:32 +00:00
Mahavir Jain
9ca8f3d45b feat(mbedtls): update to 3.5.0 release
Changelog:
https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-3.5.0
2023-10-11 09:32:32 +00:00
harshal.patil
57d10477da
feat(ecdsa): use RCC atomic block to enable/reset the ECDSA peripheral 2023-10-11 14:59:04 +05:30
harshal.patil
1c6ff8ce9f
feat(ecc): use RCC atomic block to enable/reset the ECC peripheral 2023-10-11 14:59:04 +05:30
harshal.patil
c5cc4f488a
feat(mpi): use RCC atomic block to enable/reset the MPI peripheral 2023-10-11 14:59:03 +05:30
Alexey Lapshin
71713bcdb5 fix(mbedtls): fix gcc 13.1.0 warnings 2023-10-09 12:13:02 +04:00
Mahavir Jain
ab74fb4d92 Merge branch 'feature/locking_layer_for_ecdsa' into 'master'
feat(esp_hw_support): Added locking mechanism for the ECDSA and ECC peripherals

Closes IDF-7990

See merge request espressif/esp-idf!26029
2023-09-25 18:04:21 +08:00
Jakob Hasse
ac2515e199 refactor(lwip): Added on/off switch for LwIP stack
* This switch allows applications to replace lwip with a different
  IP stack or just make it build if it is a dependency but not
  actually needed.
2023-09-22 10:03:13 +08:00
harshal.patil
6a7caa7b8e
feat(esp_hw_support): Added locking mechanism for the ECDSA and ECC peripheral 2023-09-20 16:05:50 +05:30
Jiang Jiang Jian
62720ffa8c Merge branch 'feature/pbkdf2_fast_implementation' into 'master'
esp_wifi: Port fast_pbkdf2 implementation to calculate PMK

See merge request espressif/esp-idf!24287
2023-09-12 14:06:02 +08:00
Kapil Gupta
c82a792bc3 change(esp_wifi): Port fast_pbkdf2 implementation for mbedlts
Add changes to use fast_pbkdf2 as default for PMK calculations.
fast_pbkdf2 is significantly faster than current implementations
for esp chips.

Also removes unnecessary code for pbkdf-sha256 and pbkdf-sha512.
2023-09-11 19:33:17 +05:30
Mahavir Jain
2b3418b4a0 Merge branch 'feature/use_ecdsa_perph_while_mutual_auth' into 'master'
feat: ECDSA peripheral while performing http connection with mutual auth

Closes IDF-7390

See merge request espressif/esp-idf!25052
2023-09-11 19:41:21 +08:00
Aditya Patwardhan
a57c8dc938 Merge branch 'contrib/github_pr_12177' into 'master'
mbedtls: define MBEDTLS_SSL_CID_TLS1_3_PAD_GRANULARITY for CID padding (GitHub PR)

See merge request espressif/esp-idf!25826
2023-09-09 12:27:56 +08:00
Harshit Malpani
692e1a9e61
feat: ECDSA peripheral while performing http connection with mutual auth 2023-09-08 12:22:41 +05:30
Daniel Mangum
35c428b0ec
mbedtls: define MBEDTLS_SSL_CID_TLS1_3_PAD_GRANULARITY for CID padding
Updates config to define the new MBEDTLS_SSL_CID_TLS1_3_PAD_GRANULARITY
option, which replaced the previously used
MBEDTLS_SSL_CID_PADDING_GRANULARITY. The old option is continuing to be
used as the new one exceeds the maximum length for an option name in
esp-idf.

See https://github.com/Mbed-TLS/mbedtls/pull/4490 for more information.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2023-09-08 11:45:55 +05:30
harshal.patil
4c0dd8388b
feat(mbedtls): Integrate the ecdsa export public key feature in mbedtls 2023-09-06 11:07:40 +05:30
harshal.patil
d86b320892
feat(ecdsa): add ECDSA peripheral support for esp32p4 2023-09-06 11:07:37 +05:30
Mahavir Jain
5b001f9e53 Merge branch 'bugfix/aes_dma_descriptor_setup_issue' into 'master'
fix(aes): correct the linking of the DMA descriptors

See merge request espressif/esp-idf!25723
2023-09-05 17:19:28 +08:00
Mahavir Jain
9dc4b8beeb fix(aes): correct the linking of the DMA descriptors
For certain data lengths, the last input descriptor was not getting appended
correctly and hence the EOF flag in the DMA descriptor link list was
set at incorrect location. This was resulting in the peripheral being
stalled expecting more data and eventually the code used to timeout
waiting for the AES completion interrupt.

Required configs for this issue:

CONFIG_MBEDTLS_HARDWARE_AES
CONFIG_SOC_AES_SUPPORT_DMA

This observation is similar to the issue reported in:
https://github.com/espressif/esp-idf/issues/10647

To recreate this issue, start the AES-GCM DMA operation with data length
12280 bytes and this should stall the operation forever.

In this fix, we are tracing the entire descriptor list and then appending the
extra bytes descriptor at correct position (as the last node).
2023-09-04 05:35:15 +00:00
Mahavir Jain
89584cd1d0 fix(aes-gcm): correct the DMA completion wait condition for hardware GCM case
DMA operation completion must wait until the last DMA descriptor
ownership has been changed to hardware, that is hardware is completed
the write operation for entire data. Earlier for the hardware GCM case,
the first DMA descriptor was checked and it could have resulted in some
race condition for non interrupt (MBEDTLS_AES_USE_INTERRUPT disabled) case.
2023-09-04 05:35:15 +00:00
harshal.patil
b8c208cdb3
feat(ds): add Digital Signature peripheral support for esp32p4 2023-09-01 15:44:21 +05:30
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
Harshit Malpani
4c5a7de6a6
feat(mbedtls): Update to release/v3.4.1 2023-08-16 11:40:31 +05:30
nilesh.kale
b4f9dd1fa5 fix(mbedtls): IRAM optimization analyzed on mbedtls/test_apps 2023-08-10 14:05:22 +05:30
Jiang Guang Ming
3f2746688c feat(mbedtls): support ecp fixed-point multiplication configurable 2023-08-08 14:03:57 +08:00
Mahavir Jain
6f5f7fd9d8 Merge branch 'bugfix/sha_dma_mode_incorrect_result' into 'master'
fix(sha): DMA mode iteration calculation issue for certain data lengths

Closes IDFGH-10690

See merge request espressif/esp-idf!25010
2023-08-01 16:44:47 +08:00
Mahavir Jain
224a308fd5
ci(test): add SHA DMA mode test for large data in PSRAM
Covers a test scenario described in following issue:
https://github.com/espressif/esp-idf/issues/11915
2023-07-28 14:23:02 +05:30
Laukik Hase
521dd35f2f
fix(mbedtls): Updated redundant assert for H/W MPI operations 2023-07-27 11:40:23 +05:30
Mahavir Jain
735c0c325b
fix(sha): DMA mode iteration calculation issue for certain data lengths
SHA hardware DMA mode calculation had off-by-one error for specific
input lengths. This was causing last chunk of the input data not being
fed to the hardware accelerator and hence resulting in an incorrect
final result.

Closes: https://github.com/espressif/esp-idf/issues/11915
2023-07-26 15:31:12 +05:30
harshal.patil
eb3dab8af4 ci(mbedtls): added a test for the mbedtls_internal_shaX_process API 2023-07-14 04:08:30 +00:00
harshal.patil
79d07f9909 fix(mbedtls): Fix the port for the mbedtls_internal_shaX_process API
- Also added the fix to update intermediate SHA state in the mbedtls_shaX_update API
2023-07-14 04:08:30 +00:00
Aditya Patwardhan
56f15ab017 Merge branch 'fix/mpi_incorrect_assert' into 'master'
fix(mbedtls): Fix incorrect assert for H/W MPI operations

Closes WIFI-5591 and IDFGH-10615

See merge request espressif/esp-idf!24737
2023-07-14 08:59:10 +08:00
Mahavir Jain
36908cc5fd Merge branch 'bugfix/mbedtls_sha_test_fail_when_run_twice' into 'master'
fix(mbedtls): sha test will fail when run twice

See merge request espressif/esp-idf!24767
2023-07-13 20:47:30 +08:00
Laukik Hase
20a3fcae48
fix(mbedtls): Fix incorrect assert for H/W MPI operations
- Closes https://github.com/espressif/esp-idf/issues/11850
2023-07-13 14:52:00 +05:30
Jiang Guang Ming
01b71b0978 fix(mbedtls): sha test will fail when run twice 2023-07-13 00:00:16 -07:00
harshal.patil
990e1e9307 refactor(mbedtls): refactored the return values check in some esp-aes APIs 2023-07-12 14:41:41 +05:30
harshal.patil
38255c048a fix(mbedtls): Fixed the transmission of return values of the esp-aes APIs
- Earlier, some intermediate return values were not stored and returned,
thus incorrect return values used to get transmitted to the upper layer of APIs.

- Also, zeroised the output buffer in case of error condition.
2023-07-12 14:41:41 +05:30
morris
56a376c696 feat(esp_gdma): add hal interface for common operations
GDMA driver will be adapted to more DMA peripherals in the future.
This commit is to extract a minimal interface in the hal layer
2023-07-10 13:45:57 +08:00
Mahavir Jain
90290507fb
fix(mbedtls): Build issue in dynamic buffer feature
Fix build issue in mbedTLS dynamic buffer feature with
`CONFIG_MBEDTLS_DHM_C` enabled case. Also added a build
configuration for the test coverage.

Closes https://github.com/espressif/esp-idf/issues/11770
2023-06-29 13:30:30 +05:30
harshal.patil
f0ae5bd25a mbedtls: update submodule to include:
fix: mbedtls_ecdsa_can_do was not being defined when ECDSA_SIGN_ALT is defined but ECDSA_VERIFY_ALT is not defined causing mbedtls_ecdsa_verify_restartable to always fail.
feature: initial version of the sbom.yml file
2023-06-23 14:07:45 +05:30
Song Ruo Jing
921713fff4 uart: Support LP_UART port with UART driver on esp32c6 2023-06-16 07:31:40 +00:00
Konstantin Kondrashov
c350c3c504 Merge branch 'feature/cleanup_wrong_log_use' into 'master'
all: Removes unnecessary newline character in logs

Closes IDFGH-10197

See merge request espressif/esp-idf!24131
2023-06-15 21:49:49 +08:00
Marius Vikhammer
6d11c37ff1 core-system: trim build components for core-system test apps 2023-06-13 09:14:42 +08:00
KonstantinKondrashov
e72061695e all: Removes unnecessary newline character in logs
Closes https://github.com/espressif/esp-idf/issues/11465
2023-06-09 03:31:21 +08:00
Mahavir Jain
f7a01d8f90
aes: fix DMA descriptor calculation for the alignment case
The number of the DMA descriptors allocated for certain length (e.g.,
8176) were not sufficient (off by 1 error). This used to result in the
dynamic memory corruption as the region was modified beyond the
allocated range.

This change fixes the DMA descriptor calculation part and allocates
sufficient DMA descriptors based on the data length alignment considerations.

Test has also been added to cover the specific scenario in the CI.

Closes https://github.com/espressif/esp-idf/issues/11310
2023-05-31 14:19:58 +05:30
Mahavir Jain
1747f2e0d1 Merge branch 'contrib/github_pr_11402' into 'master'
esp_ds: ignore releasing mutex if not called from same task (GitHub PR)

Closes IDFGH-10131

See merge request espressif/esp-idf!23763
2023-05-19 10:59:33 +08:00
Zhang Xiao Yan
81558fb77d Merge branch 'docs/update_algorithm_and_key_from_aes-xts_to_xts-aes' into 'master'
docs: update the algorithm and key name from AES-XTS to XTS-AES

See merge request espressif/esp-idf!23742
2023-05-16 17:39:58 +08:00
Christoph Baechler
704dfc9185 esp_ds: ignore releasing mutex if not called from same task 2023-05-15 15:02:38 +02:00
Linda
65ee4992ce docs: update the algorithm and key name from AES-XTS to XTS-AES 2023-05-15 17:54:50 +08:00
Cao Sen Miao
0f83970368 ci: Delete ccomp_timer in IDF(witch has been moved to component manager) 2023-05-15 14:58:51 +08:00
Zim Kalinowski
3947688d54 Merge branch 'bugfix/make_clean_files' into 'master'
build-system: replace ADDITIONAL_MAKE_CLEAN_FILES with ADDITIONAL_CLEAN_FILES

Closes IDF-2444

See merge request espressif/esp-idf!23628
2023-05-09 16:53:18 +08:00
Marius Vikhammer
d17248ecdf build-system: replace ADDITIONAL_MAKE_CLEAN_FILES with ADDITIONAL_CLEAN_FILES
ADDITIONAL_MAKE_CLEAN_FILES is deprecated and only worked with make.
Replaced with the new ADDITIONAL_CLEAN_FILES (CMake 3.15) which also works with ninja.
2023-05-08 15:51:48 +08:00
harshal.patil
9a87b26294 mbedtls: fix sha-512 block mode build error 2023-05-08 10:27:34 +05:30
Mahavir Jain
cba923788e Merge branch 'feature/tls1_3_support' into 'master'
esp-tls: add initial support for TLS1.3 connections (client mode)

Closes IDF-7251 and IDF-7252

See merge request espressif/esp-idf!23442
2023-04-27 18:13:43 +08:00
Mahavir Jain
3fd171f092
mbedtls: fix small typo in the config file 2023-04-25 17:44:28 +05:30
Mahavir Jain
a8b6a70620 Merge branch 'feature/add_bignum_ll_layer' into 'master'
bignum: added bignum hal and ll layer

Closes IDF-7071

See merge request espressif/esp-idf!22823
2023-04-25 19:50:25 +08:00
harshal.patil
56327452ce esp_hw_support: add crypto lock layer for esp32 2023-04-24 16:15:11 +05:30
harshal.patil
4ae1ea7b9f bignum: refactored the hardware abstraction of the mpi peripheral
- `<target>/bignum.c` is replaced by mpi_ll.h ll layer.
- added the mpi hal layer.
2023-04-24 16:15:11 +05:30
laokaiyao
bf2a7b2df6 esp32h4: removed esp32h4 related codes 2023-04-23 12:03:07 +00:00
laokaiyao
b16ed57b2e esp32h4: removed esp32h4 related files 2023-04-23 12:03:07 +00:00
harshal.patil
c403affd98 mbedtls: fix ci failures for update v3.4.0
- While updating to mbedtls release/v3.4.0, building mbedtls/library/psa_crypto.c,
clang produced an unreachable-code warning, so added `-Wno-unreachable-code` compile option for clang.
- In `mbedtls/v3.4.0`, the ECDSA restartable sign and verify functions (`ecdsa.c`) were made public.
- But the `mbedtls_ecdsa_sign_det_restartable` function prototype was declared in the file `ecdsa.h`,
only when `MBEDTLS_ECDSA_SIGN_ALT` was not defined.
- added a patch in mbedtls library to fix it.
2023-04-17 12:55:04 +05:30
harshal.patil
9c3a6c4f53 mbedtls: replace low-level sha apis with md apis in esp_ssl_tls 2023-04-17 12:50:15 +05:30
harshal.patil
f30b58f665 mbedtls: Update config options as per release/v3.4.0
- Added a Kconfig option for the newly added mbedtls option MBEDTLS_PKCS7_C
2023-04-17 12:50:15 +05:30
harshal.patil
002a451bf8 mbedtls: Update to release/v3.4.0
- Release Notes: https://github.com/Mbed-TLS/mbedtls/releases/tag/v3.4.0
2023-04-17 12:50:15 +05:30
Sachin Parekh
39a5604c29 mbedtls/ecdsa: Add ECDSA signature generation test 2023-04-07 14:55:21 +05:30
Sachin Parekh
d634970ed1 ecdsa: Support multiple ECDSA keys
Add provision to choose which efuse block should be used as ECDSA
private key
2023-04-07 14:55:21 +05:30
Sachin Parekh
d2940c5ff3 mbedtls: Add port layer for ECDSA peripheral 2023-03-24 10:43:40 +05:30
Aditya Patwardhan
85b1efc729 Merge branch 'update/update_cmn_crt_authorities_csv' into 'master'
Update common cert authorities csv

See merge request espressif/esp-idf!22713
2023-03-16 12:59:48 +08:00
harshal.patil
6b8bc64f31 test: enable mbedtls esp_crt_bundle test for esp32h2 2023-03-13 12:00:01 +05:30
Espressif BOT
e174fc967e Update common cert authorities csv 2023-03-12 11:00:24 +08:00
Mahavir Jain
e364e1c102 Merge branch 'feature/esp32h2_enable_rsa_support' into 'master'
mbedtls: enable RSA support for esp32h2

Closes IDF-6284 and IDF-6415

See merge request espressif/esp-idf!22498
2023-03-02 15:06:24 +08:00
David Čermák
956e62c461 Merge branch 'feature/lwip_ipv6_only' into 'master'
lwip: Support IPv6 only mode

Closes IDF-6023

See merge request espressif/esp-idf!20468
2023-03-01 21:38:10 +08:00
harshal.patil
04cc562180 mbedtls: enable RSA support for esp32h2 2023-03-01 14:18:57 +05:30
Mahavir Jain
4db6cae2d6 Merge branch 'fix/mbedtls_test_app_perf_logs_esp32c2' into 'master'
mbedtls/test_apps: Fix performance logs

See merge request espressif/esp-idf!22340
2023-02-28 19:50:56 +08:00
Jiang Jiang Jian
b9d40b4943 Merge branch 'feature/add_esp_http_client_host_test' into 'master'
fix esp_http_client_example to build for Linux target.

See merge request espressif/esp-idf!22339
2023-02-28 19:48:24 +08:00
Armando
4c0d6b6835 mbedtls: updated to use default gdma psram alignment
When accessing the PSRAM, the GDMA buffer alignment should be larger or
equal to the data cache line size
2023-02-28 10:42:22 +08:00
Harshit Malpani
214627f14b
mbedtls: Keep CONFIG_MBEDTLS_DYNAMIC_BUFFER disabled for Linux target 2023-02-27 15:12:14 +05:30
David Cermak
5f6cb31105 lwip: Support IPv6 only mode 2023-02-27 08:53:34 +01:00
Laukik Hase
47c153ad9e
mbedtls/test_apps: Fix performance logs
- For esp32-c2, the `CONFIG_NEWLIB_NANO_FORMAT` is enabled by
  default which does not allow printing `int64_t` values
- Copied these values to a `uint32_t` variable for printing
  them properly
2023-02-24 12:26:21 +05:30
Laukik Hase
9f0435faa4
mbedtls: Add test config with CONFIG_COMPILER_OPTIMIZATION_PERF 2023-02-21 18:45:25 +05:30
Laukik Hase
45df5b56d5
esp32/mpi: Added alternate workaround for MPI data corruption issue
- Use DPORT_WRITE_REG (volatile writes) wrappers to write to the
  MPI peripheral
- Updated the previous workaround added for the same issue as it
  was failing in some long runs and with `COMPILER_OPTIMIZATION_PERF`
  enabled.
- The test performance numbers had to be updated due to the
  performance penalty introduced by this fix.

Closes https://github.com/espressif/esp-idf/issues/10403
2023-02-21 18:43:54 +05:30
Mahavir Jain
a9e7ccb166 Merge branch 'contrib/github_pr_10648' into 'master'
[AES] Timeout: return error dont abort (GitHub PR)

Closes IDFGH-9265

See merge request espressif/esp-idf!22266
2023-02-21 01:14:05 +08:00
Omar Chebib
5e5343d429 TWDT: Use the new TWDT Kconfig options in the examples and tests 2023-02-17 11:22:25 +08:00
Marius Vikhammer
ca0f982420 aes: fix minor formatting issues 2023-02-15 12:45:29 +08:00
Cao Sen Miao
fd3e0b0b18 esp32h2(ci): enable target test 2023-02-15 10:20:43 +08:00
Mahavir Jain
e4e4ffa3f4
esp32h2: enable DS peripheral support in driver and test application 2023-02-13 10:27:15 +05:30
Laukik Hase
d4abf3ff45
mbedtls: Remove -Wno-format compile option for test app 2023-02-08 12:31:09 +05:30
harshal.patil
6206c1e213 mbedtls: enable RSA support for esp32c6 2023-02-03 11:46:42 +05:30
Chip Weinberger
91ab4b5513 [AES] Timeout: return error dont abort 2023-01-30 01:37:00 -08:00
harshal.patil
75899755b7 mbedtls: fix null pointer dereference of variable iv_off
iv_off gets dereferenced before being check for NULL
2023-01-24 12:20:00 +05:30
Mahavir Jain
e7ca2f2622 Merge branch 'feature/esp32c6_enable_hmac_and_ds_support' into 'master'
Feature/esp32c6 enable hmac and ds support

Closes IDF-5355 and IDF-5360

See merge request espressif/esp-idf!21761
2023-01-20 20:30:54 +08:00
Aditya Patwardhan
4831edc624
esp32c6/hal: Added support for HMAC and DS on esp32c6
* Update DS test_apps for esp32c6 SoC
2023-01-19 09:53:34 +05:30
Sachin Parekh
b060179400 mbedtls/ecp: Fix incorrect ECP parameter value
- Add sanity checks in mbedtls port
- Add ECP test cases covering shorter scalar values
2023-01-18 14:24:57 +05:30
Aditya Patwardhan
634e408ca4 Merge branch 'fix/mbedtls_port_sanity_checks_and_return_values' into 'master'
mbedtls/port: refactor sanity checks and their return values

Closes IDF-3810

See merge request espressif/esp-idf!21987
2023-01-17 19:21:52 +08:00
Cao Sen Miao
94120b82c2 esp32h2: add build test 2023-01-17 10:29:04 +08:00
harshal.patil
5ee1e97e6f mbedtls: added a test of different auth-tag lengths in AES-GCM 2023-01-16 15:04:08 +05:30
harshal.patil
270ff95022 mbedtls/port: refactor sanity checks and their return values
Refactored and returned correct error codes for sanity checks
present in port layer esp_aes.c and esp_aes_gcm.c
2023-01-16 15:04:08 +05:30
harshal.patil
9a47f8a066 mbedtls/port: added stream_block parameter sanity check 2023-01-16 15:04:08 +05:30
Laukik Hase
4f67662cab Merge branch 'feature/mbedtls-3.3.0' into 'master'
mbedtls: Update to v3.3.0

Closes IDF-6536

See merge request espressif/esp-idf!21897
2023-01-12 19:38:51 +08:00
Espressif BOT
35cd5ee57b Update esp_crt_bundle certificates 2023-01-11 10:00:31 +08:00
Laukik Hase
1e4493e592
mbedtls: Fix build with dynamic buffers feature 2023-01-09 15:41:36 +05:30
Laukik Hase
59de3948dc
mbedtls: Update config options as per v3.3.0 release 2023-01-09 15:41:36 +05:30
Laukik Hase
d2dddf13ae
mbedtls: Update to v3.3.0 2023-01-09 15:41:35 +05:30
Harshit Malpani
49ce5ada76
ci: Fix ci failures for target esp32c6 2023-01-04 11:20:52 +05:30
Harshit Malpani
e215ede439
mbedtls: Add support to build for linux target 2023-01-04 11:17:29 +05:30
LiPeng
5c93fe47cb mbedtls: GCM implementation is replaced with CTR-based calculation
- GCM operation in mbedtls used ECB, which calculated only 16 bytes of data each time.
	- Therefore, when processing a large amount of data, it is necessary to frequently set hardware acceleration calculations,
	- which could not make good use of the AES DMA function to improve efficiency.
	- Hence, GCM implementation is replaced with CTR-based calculation which utilizes AES DMA to improve efficiency.
2022-12-28 12:14:29 +05:30
harshal.patil
f9f10c2590 mbedtls: fix esp_aes_gcm_update_ad() API implementation 2022-12-28 11:33:09 +05:30
harshal.patil
48840d04f0 mbedtls: fix esp_aes_crypt_ctr writing to null stream block 2022-12-28 11:33:09 +05:30
harshal.patil
06bb0ee077 mbedtls: added SOC_AES_SUPPORT_AES_192 check in esp_aes_gcm_setkey() 2022-12-28 11:33:09 +05:30
harshal.patil
e0f31edab5 test_aes_gcm: fix output_size paramter in mbedtls_get_update()
mbedtls_get_update() returned MBEDTLS_ERR_GCM_BUFFER_TOO_SMALL,
as 0 used to get passed in the output_size paramter.
2022-12-28 11:33:09 +05:30
harshal.patil
c15b36b9c4 mbedtls: populate mbedtls_gcm_update() output_length paramater 2022-12-28 11:33:09 +05:30
David Cermak
678d7aadd9 esp-netif/lwip: Introduce TCP/IP stack has BSD API
* This variable is automatically selected when lwip stack is chosen
* This commit also fixes lwip loopback configuration
2022-12-14 14:12:50 +00:00
Nathan Phillips
260fd5c5a5 Explicitly log an invalid digest in DS data 2022-12-08 10:33:59 +00:00
Song Ruo Jing
1575b9e43a ci: Disable all currently failed target tests for esp32c6 2022-11-28 12:09:08 +08:00
Alexey Gerenkov
47c2c13de5 build: Adds support for universal Clang toolchain 2022-11-23 13:25:16 +03:00
laokaiyao
8677216576 esp32h2: renaming esp32h2 to esp32h4 2022-11-08 17:05:33 +08:00
Jiang Jiang Jian
9d7facf284 Merge branch 'remove_deprecated_rc4' into 'master'
Removed some occurences of the RC4 cipher suite

Closes IDF-4983

See merge request espressif/esp-idf!19856
2022-11-07 13:57:51 +08:00
Martin Vychodil
c9c7573f71 Storage: Partition APIs moved to the new component 'esp_partition'
All the partition handling API functions and data-types were moved from the 'spi_flash' component to the new one named 'esp_partition'. See Storage 5.x migration guide for more details
2022-11-02 21:54:45 +01:00
Song Ruo Jing
be0fdfa176 soc: Add a soc cap, SOC_CLK_RC_FAST_D256_SUPPORTED, for whether the target has the RC_FAST_D256 clock 2022-11-01 11:23:26 +08:00
jgujarathi
915fb4dfe2 Removed some occurences of the RC4 cipher suite(deprecated now) 2022-10-26 03:02:16 +00:00
Mahavir Jain
dc34d4986a
esp32: mpi: add workaround for data corruption issue observed with IDF 5.x toolchain
This fix adds a workaround to disable compiler optimization flag "-ftree-loop-distribute-patterns"
for `mpi_to_mem_block` routine. It was observed that compiler with release configuration was falling
back to `memset` call from ROM library causing an issue in correctly zero initializing MPI peripheral
block.

Please see following linked issue for more discussion and context on this issue.

Closes https://github.com/espressif/esp-idf/issues/8710
Closes https://github.com/espressif/esp-idf/issues/9371
Closes https://github.com/espressif/esp-idf/issues/9256
Closes IDFGH-7102
Closes IDFGH-7842
Closes IDFGH-7714
Closes IDFCI-1452
Closes IDF-6029
2022-10-21 14:29:02 +05:30
Mahavir Jain
6c8f6597f9
mbedtls: test_app: keep release config enabled for ESP32
Before `test_apps` migration, we had an independent release config,
but we can safely enable it in the default configuration for ESP32
target itself. This helps to catch any potential issues that may
occur in relevant tests because of compiler optimization flags.
2022-10-21 14:29:02 +05:30
Mahavir Jain
10dfabe650 Merge branch 'ecc/improve_mbedtls_ecdsa' into 'master'
mbedtls: Added performance test for ECP and ECDSA operation

See merge request espressif/esp-idf!19337
2022-10-14 15:49:22 +08:00
Mahavir Jain
835bb4acb1 Merge branch 'ci/fix_esp32s2_mbedtls_psram_ta' into 'master'
ci: Fix `esp32s2.psram.test_mbedtls_psram` UT

Closes IDFCI-1487 and IDFCI-1488

See merge request espressif/esp-idf!20577
2022-10-14 10:10:07 +08:00
Laukik Hase
80204ecab2
ci: Fix esp32s2.psram.test_mbedtls_psram UT
- When PSRAM is enabled, the interrupt watchdog timeout value
  needs to be increased to 800 ms from the default 500 ms.
2022-10-13 10:27:05 +05:30
Sachin Parekh
130ada60ec mbedtls: Added performance tests for ECP and ECDSA operations 2022-10-13 10:01:06 +05:30
Espressif BOT
91bd4a1f80 Update esp_crt_bundle certificates 2022-10-13 10:00:11 +08:00
Laukik Hase
aeb42ce3a7
https_server: Fix example when MBEDTLS_DYNAMIC_BUFFER is enabled
- While checking if ciphersuite uses RSA key exchange methods,
  the APIs `mbedtls_ssl_get_ciphersuite_id_from_ssl` and
  `mbedtls_ssl_ciphersuite_from_id` were used to get the ciphersuite
  info.
- However, this is incorrect as we need the ciphersuite info from the
  handshake instance and not the ssl_session instance.
2022-09-30 23:25:27 +05:30
Laukik Hase
d7eb2c7b4e
mbedtls: MBEDTLS_PRIVATE & MBEDTLS_ALLOW_PRIVATE_ACCESS-related cleanup 2022-09-29 10:13:14 +05:30
harshal.patil
317eeddce4
fix: memory leaks check added 2022-09-17 14:31:36 +05:30
harshal.patil
146f101289
ci: Migrate mbedtls unit tests from unit-test-app to component-test-app 2022-09-17 14:31:36 +05:30
Omar Chebib
4f1a9e436e Merge branch 'feature/add_int_task_wdt_esp32c2' into 'master'
WDT: implement interrupt wdt and task wdt for ESP32-C2

Closes IDF-4035, IDF-4205, and IDF-5055

See merge request espressif/esp-idf!18918
2022-09-16 10:43:34 +08:00
Omar Chebib
6798bfc4b0 TWDT: the Kconfig option ESP_TASK_WDT_EN is now used to enable Task Watchdog 2022-09-15 14:37:59 +08:00
Omar Chebib
53c7dd4efc WDT: implement interrupt wdt and task wdt for ESP32-C2
ESP32-C2 has a single group timer, thus it will use it for the interrupt watchdog,
which is more critical than the task watchdog. The latter is implement in
software thanks to the `esp_timer`component.
2022-09-15 14:37:59 +08:00
Harshit Malpani
d78fddd81a
mbedtls: fix custom certificate bundle test case 2022-09-14 14:20:29 +05:30