1dff93c86SJuan Castillo /* 2*56b741d3Slaurenw-arm * Copyright (c) 2015-2022, ARM Limited and Contributors. All rights reserved. 3dff93c86SJuan Castillo * 482cb2c1aSdp-arm * SPDX-License-Identifier: BSD-3-Clause 5dff93c86SJuan Castillo */ 6dff93c86SJuan Castillo 7c3cf06f1SAntonio Nino Diaz #ifndef COT_DEF_H 8c3cf06f1SAntonio Nino Diaz #define COT_DEF_H 9dff93c86SJuan Castillo 10ff67fca5SPankaj Gupta #ifdef MBEDTLS_CONFIG_FILE 11ff67fca5SPankaj Gupta #include MBEDTLS_CONFIG_FILE 12ff67fca5SPankaj Gupta #endif 13ff67fca5SPankaj Gupta 14dff93c86SJuan Castillo /* TBBR CoT definitions */ 1544f1aa8eSManish Pandey #if defined(SPD_spmd) 1644f1aa8eSManish Pandey #define COT_MAX_VERIFIED_PARAMS 8 17*56b741d3Slaurenw-arm #elif defined(ARM_COT_cca) 18*56b741d3Slaurenw-arm #define COT_MAX_VERIFIED_PARAMS 8 1944f1aa8eSManish Pandey #else 20dff93c86SJuan Castillo #define COT_MAX_VERIFIED_PARAMS 4 2144f1aa8eSManish Pandey #endif 22dff93c86SJuan Castillo 23ad43c49eSManish V Badarkhe /* 24ad43c49eSManish V Badarkhe * Maximum key and hash sizes (in DER format). 25ad43c49eSManish V Badarkhe * 26ad43c49eSManish V Badarkhe * Both RSA and ECDSA keys may be used at the same time. In this case, the key 27ad43c49eSManish V Badarkhe * buffers must be big enough to hold either. As RSA keys are bigger than ECDSA 28ad43c49eSManish V Badarkhe * ones for all key sizes we support, they impose the minimum size of these 29ad43c49eSManish V Badarkhe * buffers. 30ad43c49eSManish V Badarkhe */ 31ad43c49eSManish V Badarkhe #if TF_MBEDTLS_USE_RSA 32ad43c49eSManish V Badarkhe #if TF_MBEDTLS_KEY_SIZE == 1024 33ad43c49eSManish V Badarkhe #define PK_DER_LEN 162 34ad43c49eSManish V Badarkhe #elif TF_MBEDTLS_KEY_SIZE == 2048 35ad43c49eSManish V Badarkhe #define PK_DER_LEN 294 36ad43c49eSManish V Badarkhe #elif TF_MBEDTLS_KEY_SIZE == 3072 37ad43c49eSManish V Badarkhe #define PK_DER_LEN 422 38ad43c49eSManish V Badarkhe #elif TF_MBEDTLS_KEY_SIZE == 4096 39ad43c49eSManish V Badarkhe #define PK_DER_LEN 550 40ad43c49eSManish V Badarkhe #else 41ad43c49eSManish V Badarkhe #error "Invalid value for TF_MBEDTLS_KEY_SIZE" 42ad43c49eSManish V Badarkhe #endif 43ad43c49eSManish V Badarkhe #else /* Only using ECDSA keys. */ 44ad43c49eSManish V Badarkhe #define PK_DER_LEN 91 45ad43c49eSManish V Badarkhe #endif 46ad43c49eSManish V Badarkhe 47ad43c49eSManish V Badarkhe #if TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA256 48ad43c49eSManish V Badarkhe #define HASH_DER_LEN 51 49ad43c49eSManish V Badarkhe #elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA384 50ad43c49eSManish V Badarkhe #define HASH_DER_LEN 67 51ad43c49eSManish V Badarkhe #elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA512 52ad43c49eSManish V Badarkhe #define HASH_DER_LEN 83 53ad43c49eSManish V Badarkhe #else 54ad43c49eSManish V Badarkhe #error "Invalid value for TF_MBEDTLS_HASH_ALG_ID" 55ad43c49eSManish V Badarkhe #endif 56ad43c49eSManish V Badarkhe 57c3cf06f1SAntonio Nino Diaz #endif /* COT_DEF_H */ 58