From bcd305913fb9faf985197bf2cc5d871d5ad1ff28 Mon Sep 17 00:00:00 2001 From: Valerio Setti Date: Tue, 28 Nov 2023 16:27:55 +0100 Subject: [PATCH] pk: move functions to verify RFC8410 group ID to pk_internal Signed-off-by: Valerio Setti --- library/pk_internal.h | 10 ++++++++++ library/pkparse.c | 6 ------ library/pkwrite.c | 17 ----------------- 3 files changed, 10 insertions(+), 23 deletions(-) diff --git a/library/pk_internal.h b/library/pk_internal.h index ae329554b..ece2f82b7 100644 --- a/library/pk_internal.h +++ b/library/pk_internal.h @@ -119,6 +119,16 @@ static inline mbedtls_ecp_group_id mbedtls_pk_get_group_id(const mbedtls_pk_cont #if defined(MBEDTLS_ECP_HAVE_CURVE25519) || defined(MBEDTLS_ECP_HAVE_CURVE448) #define MBEDTLS_PK_HAVE_RFC8410_CURVES #endif /* MBEDTLS_ECP_HAVE_CURVE25519 || MBEDTLS_ECP_DP_CURVE448 */ + +#define MBEDTLS_PK_IS_RFC8410_GROUP_ID(id) \ + ((id == MBEDTLS_ECP_DP_CURVE25519) || (id == MBEDTLS_ECP_DP_CURVE448)) + +static inline int mbedtls_pk_is_rfc8410(const mbedtls_pk_context *pk) +{ + mbedtls_ecp_group_id id = mbedtls_pk_get_group_id(pk); + + return MBEDTLS_PK_IS_RFC8410_GROUP_ID(id); +} #endif /* MBEDTLS_PK_HAVE_ECC_KEYS */ /* Helper for (deterministic) ECDSA */ diff --git a/library/pkparse.c b/library/pkparse.c index 608c85480..0b5de8db3 100644 --- a/library/pkparse.c +++ b/library/pkparse.c @@ -863,12 +863,6 @@ static int pk_get_pk_alg(unsigned char **p, return 0; } -/* Helper for Montgomery curves */ -#if defined(MBEDTLS_PK_HAVE_RFC8410_CURVES) -#define MBEDTLS_PK_IS_RFC8410_GROUP_ID(id) \ - ((id == MBEDTLS_ECP_DP_CURVE25519) || (id == MBEDTLS_ECP_DP_CURVE448)) -#endif /* MBEDTLS_PK_HAVE_RFC8410_CURVES */ - /* * SubjectPublicKeyInfo ::= SEQUENCE { * algorithm AlgorithmIdentifier, diff --git a/library/pkwrite.c b/library/pkwrite.c index 7a9cfedbd..468df1466 100644 --- a/library/pkwrite.c +++ b/library/pkwrite.c @@ -366,23 +366,6 @@ static int pk_write_ec_param(unsigned char **p, unsigned char *start, } #if defined(MBEDTLS_PK_HAVE_RFC8410_CURVES) -static inline int mbedtls_pk_is_rfc8410(const mbedtls_pk_context *pk) -{ - mbedtls_ecp_group_id id = mbedtls_pk_get_group_id(pk); - -#if defined(MBEDTLS_ECP_HAVE_CURVE25519) - if (id == MBEDTLS_ECP_DP_CURVE25519) { - return 1; - } -#endif -#if defined(MBEDTLS_ECP_HAVE_CURVE448) - if (id == MBEDTLS_ECP_DP_CURVE448) { - return 1; - } -#endif - return 0; -} - /* * RFC8410 section 7 *