This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMDSLCDK138:C6748安全内核运行时加载

Guru**** 1587505 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/900074/tmdslcdk138-c6748-secure-kernel-runtime-loading

器件型号:TMDSLCDK138

您好!

在上一个有关 C6748安全内核主题的问题中、向我提供了非常有用的文档和一些 API 使用示例。 但是、这些示例似乎没有涵盖启动后安全模块的动态加载。 如果我理解正确、则此功能没有正式支持、但我想知道示例代码是否可用或以下问题是否可以澄清。

有关 SK_LOAD 和 SK_算法 调用的用法的说明。 我正在尝试实现安全模块的运行时加载、该模块的代码不应在 DSP 的安全模式之外公开、我知道这正是这些 API 的用途。 现在、我了解了(从示例中的 sk_load.h 说明和 TI-RTOS SDK 中的 sk.h) 我必须使用加密的 SK_LoadObj 对象调用 SK_LOAD、然后使用算法入口点调用 SK_Algoinvoke 以从加载的模块执行算法、但由于没有使用这些 API 的示例、我不清楚以下内容:

  1. 如何生成加密的 SK_LoadObj 对象? 如何使用什么密钥和什么算法对该对象进行加密、如何将纯文本对象转换为加密的 blob?
  2. 您能否举一个例子,或者只能向我说明如何构造这样的对象? 我缺少 SK_LoadObj 中的几个内容、例如:
  • loadModMagic:此处要设置的幻数是什么?
  • sessionKey:这用于什么?
  • 签名:如何生成签名?
  • 对于段(SK_SectHdr)、我假设 sectHdrMagic 应为 SK_sect_HDR_Magic、这是正确的吗?
  • 如何在段头中设置 sectDest 和 sectAccType?

此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、该器件的基本安全产品不支持动态加载安全内核、因为该器件仅用于支持安全引导和有限的安全内核功能、以实现绑定引导映像的过程、从而启用加密引导和防克隆。 不支持安全运行时。  

    从理论上讲、安全内核 API 旨在支持更多运行时功能、但这超出了我们为此器件提供的支持范围、因为器件上的安全性并非基于我们拥有多个密钥的完整标准安全实现 (RSA 和对称加密密钥)、还允许客户将自己的密钥对注入器件。

    此致、

    Rahul