Hi, NXP 专家:
RTD版本:2.0.0
我在使用k314芯片做安全启动的功能,采用EDDSA_25519签名算法,出现了SMR安装失败的问题:我将一段数据放到了flash中,起始地址__BOOT_START, 大小为:__BOOT_SIZE,使用外部工具算的签名值R的起始地址为__BOOT_END,S的起始地址为__BOOT_END2。SMR配置如下:
const __attribute__((section(".key_flash"))) hseSmrEntry_t SMR_0 = {
.pSmrSrc = (uint32_t)__BOOT_START,
.smrSize = (uint32_t)__BOOT_SIZE,
.configFlags = HSE_SMR_CFG_FLAG_INSTALL_AUTH,
.pSmrDest = 0,
.checkPeriod = 0,
.authKeyHandle = ECC_KEY_PUB_Handle,
.authScheme.sigScheme.signSch = HSE_SIGN_EDDSA,
.authScheme.sigScheme.sch.eddsa.bHashEddsa = FALSE,
.authScheme.sigScheme.sch.eddsa.contextLength = 0,
.authScheme.sigScheme.sch.eddsa.pContext = NULL,
.pInstAuthTag[0] = (uint32_t)__BOOT_END,
.pInstAuthTag[1] = (uint32_t)(__BOOT_END2)
};
我使用:EddsaVerify(ECC_KEY_PUB_Handle,FALSE ,(uint32_t)SMR_0.smrSize,
Solved! Go to Solution.
你好,我已经解决了,谢谢您。