Java教程

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支持的,这些都是用宏来隔开的,需要在配置文件中开这些宏才能支持这些算法。

这篇关于optee中支持的软算算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!