FLEX-FORD-OBC-BM/Source/bsw/Crypto_30_vHsm/Crypto_30_vHsm_Custom.h

426 lines
21 KiB
C

/**********************************************************************************************************************
* COPYRIGHT
* -------------------------------------------------------------------------------------------------------------------
* \verbatim
* Copyright (c) 2025 by Vector Informatik GmbH. All rights reserved.
*
* This software is copyright protected and proprietary to Vector Informatik GmbH.
* Vector Informatik GmbH grants to you only those rights as set out in the license conditions.
* All other rights remain with Vector Informatik GmbH.
* \endverbatim
* -------------------------------------------------------------------------------------------------------------------
* FILE DESCRIPTION
* -----------------------------------------------------------------------------------------------------------------*/
/* \file Crypto_30_vHsm_Custom.h
* \brief MICROSAR Crypto Driver (Crypto)
*
* \details Internal header file for custom algorithms
*
*********************************************************************************************************************/
/**********************************************************************************************************************
* REVISION HISTORY
* -------------------------------------------------------------------------------------------------------------------
* Refer to the module's header file.
*********************************************************************************************************************/
#if !defined (CRYPTO_30_VHSM_CUSTOM_H)
# define CRYPTO_30_VHSM_CUSTOM_H
/**********************************************************************************************************************
* INCLUDES
*********************************************************************************************************************/
# include "Crypto_30_vHsm_Custom_Generated.h"
/**********************************************************************************************************************
* GLOBAL CONSTANT MACROS
*********************************************************************************************************************/
/* ----- Additional Key Element defines ---------------------------------------------- */
/* AES MAC */
# if !defined (CRYPTO_KE_CUSTOM_MAC_AES_ROUNDKEY) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_MAC_AES_ROUNDKEY (129u)
# endif
/* Key Derive */
# if !defined (CRYPTO_KE_CUSTOM_KEYDERIVATION_LABEL) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_KEYDERIVATION_LABEL (130u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_KEYDERIVATION_ADDITIONAL_INFO) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_KEYDERIVATION_ADDITIONAL_INFO (131u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_ADDITIONAL_INFO) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_ADDITIONAL_INFO (131u)
# endif
/* RSA */
# if !defined (CRYPTO_KE_CUSTOM_RSA_MODULUS) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_MODULUS (160u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_PUBLIC_EXPONENT) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_PUBLIC_EXPONENT (161u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_PRIVATE_EXPONENT) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_PRIVATE_EXPONENT (162u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_SALT) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_SALT (163u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_SALT_LENGTH) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_SALT_LENGTH (164u)
# endif
/* TLS */
# if !defined (CRYPTO_KE_CUSTOM_TLS_CLIENT_HELLO_RANDOM) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_TLS_CLIENT_HELLO_RANDOM (3000u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_TLS_SERVER_HELLO_RANDOM) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_TLS_SERVER_HELLO_RANDOM (3001u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_TLS_HMAC_KEY_SIZE) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_TLS_HMAC_KEY_SIZE (3002u)
# endif
/* Key Exchange */
# if !defined (CRYPTO_KE_CUSTOM_KEYEXCHANGE_PARTNER_PUB_KEY) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_KEYEXCHANGE_PARTNER_PUB_KEY (3003u)
# endif
/* Smart Charge Communication */
# if !defined (CRYPTO_KE_CUSTOM_SCC_CONTRACT_PUBLIC_KEY) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_SCC_CONTRACT_PUBLIC_KEY (3013u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_SCC_IV_AND_ENCRYPTED_PRIVATE_KEY) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_SCC_IV_AND_ENCRYPTED_PRIVATE_KEY (3014u)
# endif
/* Random Number Generation */
# if !defined (CRYPTO_KE_CUSTOM_RANDOM_PERSONALIZATION_STRING) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RANDOM_PERSONALIZATION_STRING (3015u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RANDOM_ADDITIONAL_INPUT) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RANDOM_ADDITIONAL_INPUT (3016u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RANDOM_NONCE) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RANDOM_NONCE (3017u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RANDOM_RESEED_COUNTER) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RANDOM_RESEED_COUNTER (3018u)
# endif
/* SHE Key Update */
# if !defined (CRYPTO_KE_CUSTOM_SHE_COUNTER) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_SHE_COUNTER (3019u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_SHE_UID) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_SHE_UID (3021u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_SHE_BOOT_PROTECTION) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_SHE_BOOT_PROTECTION (3056u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_SHE_DEBUGGER_PROTECTION) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_SHE_DEBUGGER_PROTECTION (3057u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_SHE_DEBUG_CMD) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_SHE_DEBUG_CMD (3059u)
# endif
/* RSA CRT */
# if !defined (CRYPTO_KE_CUSTOM_RSA_PRIME_P) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_PRIME_P (3051u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_PRIME_Q) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_PRIME_Q (3052u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_EXPONENT_DP) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_EXPONENT_DP (3053u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_EXPONENT_DQ) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_EXPONENT_DQ (3054u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_RSA_INVERSE_QI) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_RSA_INVERSE_QI (3055u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_LABEL) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_LABEL (3058u)
# endif
/* Spake2+ */
# if !defined (CRYPTO_KE_CUSTOM_W0) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_W0 (3084u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_W1) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_W1 (3085u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_L) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_L (3086u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VERIFICATION) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VERIFICATION (3087u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VERIFICATION_RESULT) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VERIFICATION_RESULT (3088u)
# endif
/* ----- Custom Algorithm Mode Defines ---------------------------------------------- */
/* ECC curve p256r1 */
# if !defined (CRYPTO_ALGOMODE_CUSTOM_P256R1) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOMODE_CUSTOM_P256R1 (128u)
# endif
/* RSA CRT */
# if !defined (CRYPTO_ALGOMODE_CUSTOM_RSASSA_PKCS1_v1_5_CRT) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOMODE_CUSTOM_RSASSA_PKCS1_v1_5_CRT (129u)
# endif
# if !defined (CRYPTO_ALGOMODE_CUSTOM_RSAES_OAEP_CRT) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOMODE_CUSTOM_RSAES_OAEP_CRT (132u)
# endif
/* Use Derivation function e.g. for NIST DRBG AES128 */
# if !defined (CRYPTO_ALGOMODE_CUSTOM_USE_DF) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOMODE_CUSTOM_USE_DF (130u)
# endif
/* ECC curve p384r1 */
# if !defined (CRYPTO_ALGOMODE_CUSTOM_P384R1) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOMODE_CUSTOM_P384R1 (131u)
# endif
/* ----- Custom Algorithm Family Defines ---------------------------------------------- */
/* Ecc-ANSI conform */
# if !defined (CRYPTO_ALGOFAM_CUSTOM_ECCANSI) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_ECCANSI (129u)
# endif
/* Ecc-SEC conform */
# if !defined (CRYPTO_ALGOFAM_CUSTOM_ECCSEC) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_ECCSEC (130u)
# endif
/* NIST 800-90A DRBG conform */
# if !defined (CRYPTO_ALGOFAM_CUSTOM_DRBG) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_DRBG (131u)
# endif
/* FIPS 186.2 conform */
# if !defined (CRYPTO_ALGOFAM_CUSTOM_FIPS186) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_FIPS186 (132u)
# endif
/* Padding PKCS7 */
# if !defined (CRYPTO_ALGOFAM_CUSTOM_PADDING_PKCS7) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_PADDING_PKCS7 (133u)
# endif
/* ----- Custom Key Exchange Algorithm Defines ---------------------------------------------- */
/* Exchange algorithm x25519 */
# if !defined (CRYPTO_30_LIBCV_KEY_EXCHANGE_X25519) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KEY_EXCHANGE_X25519 (0u)
# endif
/* Exchange algorithm ANSI p256r1 */
# if !defined (CRYPTO_30_LIBCV_KEY_EXCHANGE_ANSIP256R1) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KEY_EXCHANGE_ANSIP256R1 (1u)
# endif
/* Exchange algorithm SEC p256r1 */
# if !defined (CRYPTO_30_LIBCV_KEY_EXCHANGE_SECP256R1) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KEY_EXCHANGE_SECP256R1 (2u)
# endif
/* Exchange algorithm SEC p384r1 */
# if !defined (CRYPTO_30_LIBCV_KEY_EXCHANGE_SECP384R1) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KEY_EXCHANGE_SECP384R1 (4u)
# endif
/* ----- Custom Key Derivation Algorithm Defines ---------------------------------------------- */
/* KDF_NIST_800-108 'KDF in Counter Mode' with SHA-256 as PRF */
# if !defined (CRYPTO_30_LIBCV_KDF_ALGO_KDF_SYM_NIST_800_108_CNT_MODE_SHA256) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KDF_ALGO_KDF_SYM_NIST_800_108_CNT_MODE_SHA256 (1u)
# endif
/* NIST.FIPS.186-4 'Key Pair Generation Using Extra Random Bits' with 'KDF in Counter Mode' as RBG */
# if !defined (CRYPTO_30_LIBCV_KDF_ALGO_KDF_ASYM_NIST_FIPS_186_4_ERB) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KDF_ALGO_KDF_ASYM_NIST_FIPS_186_4_ERB (2u)
# endif
/* NIST.SP.800-56A Single-Step KDF with Option 1: H(x) = hash(x) */
# if !defined (CRYPTO_30_LIBCV_KDF_ALGO_KDF_NIST_800_56_A_ONE_PASS_C1E1S_SINGLE_STEP_KDF_SHA256) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KDF_ALGO_KDF_NIST_800_56_A_ONE_PASS_C1E1S_SINGLE_STEP_KDF_SHA256 (3u)
# endif
/* ISO 15118 install and update certificate. */
# if !defined (CRYPTO_30_LIBCV_KDF_ALGO_KDF_ISO_15118_CERTIFICATE_HANDLING) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KDF_ALGO_KDF_ISO_15118_CERTIFICATE_HANDLING (4u)
# endif
/* KDF X9.63 SHA 1 */
# if !defined (CRYPTO_30_LIBCV_KDF_ALGO_KDF_X963_SHA1) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KDF_ALGO_KDF_X963_SHA1 (5u)
# endif
/* KDF X9.63 SHA 256 */
# if !defined (CRYPTO_30_LIBCV_KDF_ALGO_KDF_X963_SHA256) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KDF_ALGO_KDF_X963_SHA256 (6u)
# endif
/* KDF X9.63 SHA 512 */
# if !defined (CRYPTO_30_LIBCV_KDF_ALGO_KDF_X963_SHA512) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_KDF_ALGO_KDF_X963_SHA512 (7u)
# endif
/* ----- Custom Random Seed Algorithm Defines ---------------------------------------------- */
/* Random Seed according to FIPS 186-2 SHA1 */
# if !defined (CRYPTO_30_LIBCV_RNG_FIPS_186_2_SHA1) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_RNG_FIPS_186_2_SHA1 (0u)
# endif
/* Random Seed according to NIST 800-90A CTR_DRBG with AES-128 */
# if !defined (CRYPTO_30_LIBCV_RNG_NIST_800_90A_CTR_DRBG_AES128) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ALGORITHM */
# define CRYPTO_30_LIBCV_RNG_NIST_800_90A_CTR_DRBG_AES128 (1u)
# endif
# if !defined (CRYPTO_ALGOFAM_CUSTOM_SECURE_BOOT) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_SECURE_BOOT (160u) /* This define is deprecated */
# endif
# if !defined (CRYPTO_ALGOFAM_CUSTOM_VHSM_SECURE_BOOT) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_VHSM_SECURE_BOOT (160u)
# endif
# if !defined (CRYPTO_ALGOFAM_CUSTOM_SOFTWARE_DOWNLOAD) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_SOFTWARE_DOWNLOAD (161u) /* This define is deprecated */
# endif
# if !defined (CRYPTO_ALGOFAM_CUSTOM_VHSM_SOFTWARE_DOWNLOAD) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_VHSM_SOFTWARE_DOWNLOAD (161u)
# endif
# if !defined (CRYPTO_ALGOFAM_CUSTOM_VHSM_FIRMWARE_UPDATE) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_VHSM_FIRMWARE_UPDATE (163u)
# endif
# if !defined (CRYPTO_ALGOFAM_CUSTOM_VHSM_BOOT_UPDATE) /* COV_CRYPTO_30_VHSM_CUSTOM_ALGORITHM */
# define CRYPTO_ALGOFAM_CUSTOM_VHSM_BOOT_UPDATE (164u)
# endif
/* vHsm Core */
# if !defined (CRYPTO_KE_CUSTOM_VHSM_VERSION) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_VERSION (3020u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_UID) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_UID (3021u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_PERFORM_PERSISTING) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_PERFORM_PERSISTING (3022u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_ERRORLOG) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_ERRORLOG (3023u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_ADDRESS) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_ADDRESS (3024u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_SIZE) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_SIZE (3025u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_CMAC) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_CMAC (3026u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_SANCTION) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_SANCTION (3027u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_END) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_END (3028u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_RESULT) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_RESULT (3037u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_FIRMWARE_UPDATE_START_UPDATER) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_FIRMWARE_UPDATE_START_UPDATER (3038u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_PERFORM_REPERSISTING) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_PERFORM_REPERSISTING (3036u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_KEY) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_SECURE_BOOT_SLOT_KEY (1u)
# endif
/* vHsm Custom */
# if !defined (CRYPTO_KE_CUSTOM_VHSM_BUNDLING_REQ) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_BUNDLING_REQ (3029u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_BUNDLING_RESP) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_BUNDLING_RESP (3030u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_BUNDLING_COUNTER) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_BUNDLING_COUNTER (3031u)
# endif
/* vHsm Hal */
# if !defined (CRYPTO_KE_CUSTOM_VHSM_FLASH_OPERATION) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_FLASH_OPERATION (3032u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_RESET_VECTORS) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_RESET_VECTORS (3033u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_OPTION_BYTES) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_OPTION_BYTES (3034u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_UPGP) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_UPGP (3035u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_STATUS_HSM2HOST) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_STATUS_HSM2HOST (3090u)
# endif
# if !defined (CRYPTO_KE_CUSTOM_VHSM_STATUS_HOST2HSM) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENTS */
# define CRYPTO_KE_CUSTOM_VHSM_STATUS_HOST2HSM (3091u)
# endif
# if !defined (CRYPTO_30_VHSM_DATAFLASH_START) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_DATAFLASH_START (0u)
# endif
# if !defined (CRYPTO_30_VHSM_DATAFLASH_STOP) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_DATAFLASH_STOP (1u)
# endif
# if !defined (CRYPTO_30_VHSM_CODEFLASH_START) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_CODEFLASH_START (2u)
# endif
# if !defined (CRYPTO_30_VHSM_CODEFLASH_STOP) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_CODEFLASH_STOP (3u)
# endif
# if !defined (CRYPTO_30_VHSM_SANCTION_NONE) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_SANCTION_NONE (0u)
# endif
# if !defined (CRYPTO_30_VHSM_SANCTION_RESET) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_SANCTION_RESET (1u)
# endif
# if !defined (CRYPTO_30_VHSM_SANCTION_CUSTOM) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_SANCTION_CUSTOM (2u)
# endif
# if !defined (CRYPTO_30_VHSM_SANCTION_HALT) /* COV_CRYPTO_30_VHSM_CUSTOM_KEY_ELEMENT_VALUE */
# define CRYPTO_30_VHSM_SANCTION_HALT (3u)
# endif
#endif /* !defined (CRYPTO_30_VHSM_CUSTOM_H) */
/**********************************************************************************************************************
* END OF FILE: Crypto_30_vHsm_Custom.h
*********************************************************************************************************************/