华为海思芯片的高安机制通过以下多种方式保护客户私有信息:
利用 OTP 区域存储关键数据
海思芯片内部设有 OTP(One-Time Program)区域,此区域可供客户存储自定义的私有数据或防抄板根密钥. 例如 Hi3712、Hi3716CV200 等芯片内部可存储用于防抄板的根密钥(STB_Root_Key),Hi3716CV100、Hi3716MV300 等芯片内部可存储私有数据 customer key 和 STB private data. OTP 存储区域在芯片内部,只能进行一次编程,且指定数据区域被 lock 后对应用程序不可读,具有较高安全性,从而确保客户私有信息不易被篡改或窃取。
初级方案中的数据校验
- 原理:客户可在 OTP 区域写入私有数据 data1,并在 app 代码中内嵌另一固定数据 data2,且 data1 和 data2 满足特定的函数转换关系,如 data2 = f (data1) 。系统运行时,首先读取 OTP 中预先存储的私有数据 data1,判断 data1 和代码中特定数据 data2 是否存在给定的函数转换关系,若 flash 中特定数据 data2 被非法篡改,则 data1 和 data2 将匹配失败,进而达到防抄板及保护私有信息的目的。
- 应用步骤:第一步调用海思 UNF 接口在 OTP 中存储唯一数据 data1;第二步客户在 app 代码中写入与 data1 存在给定函数关系的数据 data2;第三步 App 运行时从 OTP 中读取数据 data1 并使用给定的函数关系和代码中数据 data2 对比,若匹配则正常启动,否则认为 flash 中数据可能被非法篡改,应用程序应立即重启。
中级方案的加密与认证加强
- 采用加密算法:在中级方案中,对存储在芯片中的客户私有信息采用更高级的加密算法进行加密处理。这样一来,即使数据被非法获取,由于加密的存在,攻击者也难以解读其中的内容,从而有效保护了信息的机密性。
- 引入认证机制:在数据访问和传输过程中,引入严格的认证机制。只有通过合法认证的设备或用户,才能够对加密后的私有信息进行解密和访问,进一步增强了信息的安全性,防止未经授权的访问和篡改。
高级方案的安全启动与运行时保护
- 安全启动:基于海思公用高安系列芯片的高级方案,在启动过程中,会对芯片的各个组件以及存储的信息进行完整性校验。只有当所有校验都通过时,芯片才会正常启动并加载系统,确保启动过程中客户私有信息的安全性,防止启动过程中的恶意篡改和攻击。
- 运行时监控:在系统运行时,持续对内存中的客户私有信息以及相关的运行状态进行监控。一旦发现有异常的访问或篡改行为,能够及时触发相应的保护机制,如暂停相关操作、发出警报等,保障客户私有信息在运行过程中的安全性和完整性 。