2022-05-23 12:36:02 +08:00
/*
2024-06-01 23:48:58 +08:00
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
2022-05-23 12:36:02 +08:00
*
* SPDX-License-Identifier: Apache-2.0
*/
# pragma once
# include "sdkconfig.h"
# include <esp_err.h>
# include <stdint.h>
# if CONFIG_IDF_TARGET_ESP32
# include "esp32/rom/secure_boot.h"
# elif CONFIG_IDF_TARGET_ESP32S2
# include "esp32s2/rom/secure_boot.h"
# elif CONFIG_IDF_TARGET_ESP32C3
# include "esp32c3/rom/secure_boot.h"
# elif CONFIG_IDF_TARGET_ESP32S3
# include "esp32s3/rom/secure_boot.h"
# elif CONFIG_IDF_TARGET_ESP32C2
# include "esp32c2/rom/secure_boot.h"
2022-07-08 16:46:11 +08:00
# elif CONFIG_IDF_TARGET_ESP32C6
# include "esp32c6/rom/secure_boot.h"
2022-12-29 11:01:13 +08:00
# elif CONFIG_IDF_TARGET_ESP32H2
# include "esp32h2/rom/secure_boot.h"
2023-07-27 15:10:50 +08:00
# elif CONFIG_IDF_TARGET_ESP32P4
# include "esp32p4/rom/secure_boot.h"
2024-03-29 15:43:24 +05:30
# elif CONFIG_IDF_TARGET_ESP32C5
# include "esp32c5/rom/secure_boot.h"
2024-06-10 15:01:07 +05:30
# elif CONFIG_IDF_TARGET_ESP32C61
# include "esp32c61/rom/secure_boot.h"
2022-05-23 12:36:02 +08:00
# endif
2024-06-01 23:48:58 +08:00
# ifdef __cplusplus
extern " C " {
# endif
2022-03-17 21:58:15 +08:00
# if !CONFIG_IDF_TARGET_ESP32 || CONFIG_ESP32_REV_MIN_FULL >= 300
2022-05-23 12:36:02 +08:00
2023-01-09 22:32:19 +05:30
# if CONFIG_SECURE_BOOT_V2_ENABLED || CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT
2022-05-23 12:36:02 +08:00
/** @brief Legacy function to verify RSA secure boot signature block for Secure Boot V2.
*
* @note This is kept for backward compatibility. It internally calls esp_secure_boot_verify_sbv2_signature_block.
*
* @param sig_block Pointer to RSA signature block data
* @param image_digest Pointer to 32 byte buffer holding SHA-256 hash.
* @param verified_digest Pointer to 32 byte buffer that will receive verified digest if verification completes. (Used during bootloader implementation only, result is invalid otherwise.)
*
*/
esp_err_t esp_secure_boot_verify_rsa_signature_block ( const ets_secure_boot_signature_t * sig_block , const uint8_t * image_digest , uint8_t * verified_digest ) ;
2023-01-09 22:32:19 +05:30
# endif /* CONFIG_SECURE_BOOT_V2_ENABLED || CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT */
2022-05-23 12:36:02 +08:00
# endif
2024-06-01 23:48:58 +08:00
# ifdef __cplusplus
}
# endif