编程语言
首页 > 编程语言> > optee中支持的软算算法

optee中支持的软算算法

作者:互联网

在lib/libmbedtls/core/tomcrypt.c中定义了加解密算法的入口,
TEE_Result crypto_init(void)
{
    tomcrypt_init();

    return TEE_SUCCESS;
}
在tomcrypt_init 中我们就可以明确知道optee中支持了哪些软算的算法
void tomcrypt_init(void)
{
    ltc_init();
}
static void ltc_init(void)
{
#if defined(_CFG_CORE_LTC_ACIPHER)
    init_mp_tomcrypt();
#endif
    tee_ltc_reg_algs();
}
static void tee_ltc_reg_algs(void)
{
#if defined(_CFG_CORE_LTC_AES) || defined(_CFG_CORE_LTC_AES_DESC)
    register_cipher(&aes_desc);
#endif
#if defined(_CFG_CORE_LTC_DES)
    register_cipher(&des_desc);
    register_cipher(&des3_desc);
#endif
#if defined(_CFG_CORE_LTC_MD5)
    register_hash(&md5_desc);
#endif
#if defined(_CFG_CORE_LTC_SHA1)
    register_hash(&sha1_desc);
#endif
#if defined(_CFG_CORE_LTC_SHA224)
    register_hash(&sha224_desc);
#endif
#if defined(_CFG_CORE_LTC_SHA256) || defined(_CFG_CORE_LTC_SHA256_DESC)
    register_hash(&sha256_desc);
#endif
#if defined(_CFG_CORE_LTC_SHA384) || defined(_CFG_CORE_LTC_SHA384_DESC)
    register_hash(&sha384_desc);
#endif
#if defined(_CFG_CORE_LTC_SHA512) || defined(_CFG_CORE_LTC_SHA512_DESC)
    register_hash(&sha512_desc);
#endif
#if defined(_CFG_CORE_LTC_ACIPHER)
    register_prng(&prng_crypto_desc);
#endif
}
最终在tee_ltc_reg_algs中调用的算法都是optee支持的,这些都是用宏来隔开的,需要在配置文件中开这些宏才能支持这些算法。

标签:CORE,optee,defined,CFG,register,LTC,算法,软算,desc
来源: https://blog.csdn.net/tiantao2012/article/details/120263617