blob: 60dfb8a3c7c64b4d0c07ce2e1a162efc13bb9b6e [file] [log] [blame]
Juan Castillo9b265a82015-05-07 14:52:44 +01001/*
laurenw-arm483e5ac2022-04-21 15:49:00 -05002 * Copyright (c) 2015-2022, ARM Limited and Contributors. All rights reserved.
Juan Castillo9b265a82015-05-07 14:52:44 +01003 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Juan Castillo9b265a82015-05-07 14:52:44 +01005 */
6
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +00007#ifndef COT_DEF_H
8#define COT_DEF_H
Juan Castillo9b265a82015-05-07 14:52:44 +01009
Pankaj Gupta8778ebf2020-12-09 14:02:38 +053010#ifdef MBEDTLS_CONFIG_FILE
11#include MBEDTLS_CONFIG_FILE
12#endif
13
Juan Castillo9b265a82015-05-07 14:52:44 +010014/* TBBR CoT definitions */
Manish Pandey5f8e1a02020-05-27 22:40:10 +010015#if defined(SPD_spmd)
16#define COT_MAX_VERIFIED_PARAMS 8
laurenw-arm483e5ac2022-04-21 15:49:00 -050017#elif defined(ARM_COT_cca)
18#define COT_MAX_VERIFIED_PARAMS 8
Manish Pandey5f8e1a02020-05-27 22:40:10 +010019#else
Juan Castillo9b265a82015-05-07 14:52:44 +010020#define COT_MAX_VERIFIED_PARAMS 4
Manish Pandey5f8e1a02020-05-27 22:40:10 +010021#endif
Juan Castillo9b265a82015-05-07 14:52:44 +010022
Manish V Badarkhe043fd622020-05-16 16:36:39 +010023/*
24 * Maximum key and hash sizes (in DER format).
25 *
26 * Both RSA and ECDSA keys may be used at the same time. In this case, the key
27 * buffers must be big enough to hold either. As RSA keys are bigger than ECDSA
28 * ones for all key sizes we support, they impose the minimum size of these
29 * buffers.
30 */
31#if TF_MBEDTLS_USE_RSA
32#if TF_MBEDTLS_KEY_SIZE == 1024
33#define PK_DER_LEN 162
34#elif TF_MBEDTLS_KEY_SIZE == 2048
35#define PK_DER_LEN 294
36#elif TF_MBEDTLS_KEY_SIZE == 3072
37#define PK_DER_LEN 422
38#elif TF_MBEDTLS_KEY_SIZE == 4096
39#define PK_DER_LEN 550
40#else
41#error "Invalid value for TF_MBEDTLS_KEY_SIZE"
42#endif
43#else /* Only using ECDSA keys. */
Nicolas Toromanoff6bc2bbf2020-11-17 10:03:40 +010044#define PK_DER_LEN 92
Manish V Badarkhe043fd622020-05-16 16:36:39 +010045#endif
46
47#if TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA256
48#define HASH_DER_LEN 51
49#elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA384
50#define HASH_DER_LEN 67
51#elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA512
52#define HASH_DER_LEN 83
53#else
54#error "Invalid value for TF_MBEDTLS_HASH_ALG_ID"
55#endif
56
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +000057#endif /* COT_DEF_H */