1 /* SPDX-License-Identifier: BSD-2-Clause */ 2 /* 3 * Copyright (C) 2023 ProvenRun S.A.S 4 */ 5 6 #ifndef ECC_PKI_H 7 #define ECC_PKI_H 8 9 #include <crypto/crypto.h> 10 #include <stddef.h> 11 #include <stdint.h> 12 #include <tee_api_types.h> 13 14 TEE_Result pki_ecc_get_key_size(uint32_t curve, size_t *bytes, size_t *bits); 15 void pki_memcpy_swp(uint8_t *to, const uint8_t *from, size_t len); 16 void pki_crypto_bignum_bn2bin_eswap(uint32_t curve, 17 struct bignum *from, uint8_t *to); 18 void pki_crypto_bignum_bin2bn_eswap(const uint8_t *from, size_t sz, 19 struct bignum *to); 20 TEE_Result pki_ecc_prepare_msg(uint32_t algo, const uint8_t *msg, 21 size_t msg_len, size_t *len, uint8_t *buf); 22 23 #endif 24