esp-idf/components/efuse
Mahavir Jain 94bf4710fa
fix(esp32h2): program use_hardware_k efuse bit for ECDSA key purpose
In ESP32-H2, the ECDSA peripheral by default uses the TRNG (hardware)
generated k value but it can be overridden to software supplied k.
This can happen through by overriding the `ECDSA_SOFTWARE_SET_K` bit
in the configuration register. Even though the HAL API is not exposed
for this but still it could be achieved by direct register
programming. And for this scenario, if sufficiently random k is not
supplied by the software then it could posses a security risk.

In this change, we are unconditionally programming the efuse
`ESP_EFUSE_ECDSA_FORCE_USE_HARDWARE_K` bit during startup security
checks itself. Additionally, same is ensured in the `esp_efuse_write_key`
API as well. This always enforces the hardware k mode in the ECDSA
peripheral and ensures strongest possible security.
2023-11-15 09:42:26 +05:30
..
esp32 efuse: Update efuses for esp32 esp32c2 esp32c3 esp32s2 esp32s3 2023-04-04 22:32:32 +08:00
esp32c2 fix(adc): rename ADC_ATTEN_DB_11 to ADC_ATTEN_DB_12 2023-11-06 18:55:49 +08:00
esp32c3 feat(efuse): Add flash efuses for esp32c3 2023-07-11 19:49:17 +08:00
esp32c6 docs(adc): added adc calibration doc on h2 2023-11-02 11:33:06 +08:00
esp32h2 docs(adc): added adc calibration doc on h2 2023-11-02 11:33:06 +08:00
esp32p4 feat(efuse): Support eFuses and doc for ESP32P4 2023-09-12 17:58:17 +08:00
esp32s2 adc_calib: support calibration v2 on esp32c6 2023-06-26 10:40:36 +08:00
esp32s3 Merge branch 'feature/add_new_pkg_and_flash_psram_efuses' into 'master' 2023-07-13 00:57:14 +08:00
include all: Apply new version logic (major * 100 + minor) 2022-11-03 08:36:23 +00:00
private_include efuse: Add more logging for virtual efuses 2023-02-16 00:10:08 +08:00
src fix(esp32h2): program use_hardware_k efuse bit for ECDSA key purpose 2023-11-15 09:42:26 +05:30
test_apps feat(hal): enable hal host test 2023-10-11 11:23:24 +08:00
test_efuse_host efuse_table_gen: Fixes wrong joining fields with omitted names 2021-10-28 23:53:38 +08:00
CMakeLists.txt refactor(linux): excluded all non-Linux components from build 2023-10-16 17:06:54 +08:00
efuse_table_gen.py feat(esp32p4): introduced new target esp32p4, supported hello_world 2023-08-09 19:33:25 +08:00
Kconfig efuse: Add more logging for virtual efuses 2023-02-16 00:10:08 +08:00