亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial Internet of Things >> 嵌入式

确保处理器设计可信度:安全可靠IC的最佳实践

现代集成电路(IC)提供处理海量数据、实时做出安全关键决策、保护敏感数据的计算和系统控制能力。从零设计专用集成电路(ASIC)或现场可编程门阵列(FPGA)系统级芯片(SoC)成本高昂且耗时。许多关键功能使用第三方知识产权(IP)实现。例如处理器核心从专业机构采购,通过其指令集架构(ISA)提供灵活、软件可编程功能,ISA定义了硬件与软件的接口。开源处理器架构为已面临多变威胁环境的系统提供深度审查和严格安全保障的机会。本文描述基于RISC-V开源ISA的IP和SoC安全保障方法。

RISC-V是加州大学发明、非营利组织RISC-V基金会管理的开源ISA,拥有300多名成员,成立于2015年。RISC-V是首个成为广泛应用真正可行工业选择的开源ISA。工具、软件和专业知识生态系统健壮且稳步增长。许多个人和组织已捐赠实现RISC-V ISA的开源硬件IP。例如OpenHW Group旨在使开源硬件——特别是高产量芯片的处理器核心——成为现实。

RISC-V崛起有多重原因。从零构建时即考虑定制扩展性,RISC-V允许针对特定工作负硬件优化新高度。摩尔定律放缓,定制化对维持半导体制造工艺技术进步无法提供的性能改进至关重要。此外,RISC-V架构免除许可费和版税,让更多公司开发创新、负担得起的产品。例如在物联网和具备AI能力的可穿戴设备领域活跃。

SoC集成商常使用开源或第三方RISC-V处理器IP。这些设计及其工具链可通过自定义指令增强。随IP提供的高质量验证环境和额外系统级测试可提供一定信心,认为IP无关键Bug。遗憾的是,对许多应用这还不够,还有其他严重风险需考虑。

漏洞与木马

传统上,电子系统安全漏洞关联系统级和软件问题。最近,硬件IP(尤其是处理器)也成为核心关注点(见图1)。处理器实现使用流水线微架构,常含性能和功耗优化特性。复杂性增加不仅功能Bug,也增加安全漏洞风险。2018年初发现Meltdown和Spectre攻击的安全研究人员证明,处理器性能优化特性可被非预期方式用于恶意目的。此后,高端和低端处理器均发现更多漏洞。侧信道和瞬态执行攻击可能突破安全飞地,让恶意应用泄露机密数据甚至接管系统控制权。与软件不同,硬件问题难以通过空中下载更新修复。通过软件解决硬件问题常导致严重性能下降。

RISC-A架构有许多支持安全嵌入式系统实现的特性。例如权限规范定义四种特权模式(机器、监管、管理程序、用户)。正在批准过程中的自定义指令和ISA扩展(如加密扩展)提供额外安全能力。设计师可实现多个安全飞地隔离应用防止敏感数据泄露。然而,RTL微架构特性仍可能导致安全漏洞。这些风险无法完全在ISA层面解决。正在探索的新方法是使用增强ISA(aISA)在微架构层面定义指令执行方面,例如控制ISA层面不可见的缓冲区或寄存器状态。RTL功能Bug仍可能破坏所有这些安全特性。

可能性较低但严重性极高的风险是RISC-V核心中存在恶意逻辑或硬件木马。硬件木马是故意设计为隐蔽的逻辑功能,仅在攻击者已知的极罕见情况下激活。目标用例中不会发生的特定数据和控制事件序列触发木马逻辑,进而释放破坏性载荷,如泄露机密或严重破坏系统行为。使用开源或第三方RISC-V核心的SoC集成不再能忽视此风险。

确保处理器做它该做的事很难,但确保它不做它不该做的事是更具挑战且仍 largely unaddressed的任务。安全关键系统和数据隐私保护至上的系统,需要高效、高质量的解决方案应对安全漏洞和木马风险。

确保处理器设计可信度:安全可靠IC的最佳实践
图1:CVE-MITRE数据库2015年记录6488个漏洞,43%可归类为软件辅助硬件漏洞。2018-2019年研究人员发现并报告处理器众多漏洞,包括Meltdown、Spectre、Foreshadow、ZombieLoad、RIDL和Fallout。(来源:DARPA和OneSpin)

智能硬件保障

保障RISC-V IP的信任和安全需要创新高效的技术方案,互补功能正确性方法,主要针对IP预期用例(见图2)。IP提供商负责应用最先进的信任和安全验证流程,IP集成商应能访问可快速部署、无需深入了解IP实现细节的独立保障方案。

形式化方法可详尽分析硬件功能,提供IP或SoC精确匹配预期行为的证明,预期行为常用SystemVerilog断言捕获。基于商业模型检查器的硬件形式化验证过去十年广泛采用。通常IP提供商和SoC集成商团队中有形式化验证专家,致力于将漏掉功能Bug风险降至最低。虽然某些明确形式化验证任务可通过Apps自动化,但通常需大量工程工作捕获IP预期行为于断言中。且无法保证编写了足够断言。未记录功能或断言集合中的非预期间隙可能导致未验证IP功能。

RISC-V开源特性允许开发预打包、独立的保障方案。例如OneSpin的RISC-V完整性验证方案可应用于广泛微架构。包含可扩展的RISC-V ISA和特权ISA模型,可容纳自定义指令。该方案关键在于基于OneSpin的GapFreeVerification™流程,严格证明建模RISC-V ISA的断言集完整且无间隙。这在检测硬件木马或未记录逻辑为关键目标时至关重要。该方案让RISC-V和受审RTL实现专业知识有限的SoC集成商获得IP质量和可信度信心。IP开发商可用其在发布前检测安全弱点和功能Bug。

确保处理器设计可信度:安全可靠IC的最佳实践
图2:功能正确性验证提供处理器实现按规范行为、满足最终用户需求的信心。信任和安全验证提供处理器无未记录功能、未预见侧信道、硬件木马或可被恶意行为者利用的其他漏洞的信心。(来源:OneSpin)

实际效果如何?

上文描述的RISC-V完整性保障流程已成功应用于多个RTL设计。例如Edaptive Computing将该流程应用于RocketCore。RocketCore是开源、已流片验证的64位RISC-V核心,具有39位虚拟内存系统。采用五级、单发射、顺序流水线,长延迟指令(如除法)支持乱序完成。包含分支预测和指令重放等先进特性。

RISC-V完整性验证方案应用于包含所有指令、特权级、中断和异常机制的设计,检测到8个问题(见图3)。其中3个详情如下。

除法边缘情况

与除法指令乱序完成相关的深层边缘Bug。此问题可能导致使用除法运算的软件程序计算错误结果并引发系统异常。问题仅在罕见情况组合下出现,因此前验证工作未发现。

非法指令重放

这非边缘Bug。重放非法指令会浪费处理周期,但若仅在罕见情况发生,性能影响可忽略。然而需考虑其他方面。指令重放可能导致不必要内存请求。这些请求可能有副作用,可被侧信道攻击利用。因此该行为需消除或明确理解并记录。

未记录指令

检测到名为CEASE的未记录、非标准指令,可停止核心。实际上RISC-V RocketCore能做不该做的事。当信任和安全是关注点时,未记录的隐藏功能不可接受,即使涉及被认为与最终应用无关的用例。

RocketCore案例研究详见GOMACTech 2019论文《RISC-V处理器IP完整形式化验证实现无木马可信IC》。获取副本请访问onespin.com/resources/white-papers。

确保处理器设计可信度:安全可靠IC的最佳实践
图3:OneSpin RISC-V完整性验证方案检测到的问题列表,已在GitHub RocketCore项目报告。(来源:OneSpin)

后续展望

本文提出的RISC-V保障流程检测可能影响安全的场景,系统性揭露无论多罕见隐蔽的未记录功能和硬件木马。但侧信道未系统性检测。详尽检测所有潜在侧信道需专用方案和适当技术。已有原型应对此挑战。详情访问onespin.com/resources/technical-articles阅读EE Times文章《嵌入式处理器侧信道攻击》。

处理器核心是嵌入式系统关键IP。但典型SoC集成许多其他IP也可能含硬件木马。与RISC-V核心不同,独立信任保障方案可能不易获得。此时拥有适用于任何IP的自动化、低工作量信任评估流程将有价值。不含IP可信模型的流程无法确保木马不存在。但可识别异常可疑代码模式、已知木马特征、及后续开发阶段可能被恶意利用的弱点。相关论文《面向硬件保障的自动化预硅IP可信度评估》由AEROSPACE Corporation和OneSpin工程师撰写,将在GOMACTech 2020会议发表。

嵌入式

  1. 最大化基于状态维护影响力:实用指南
  2. 落地综合安全计划的实战策略:巡检审计、工具赋能、培训闭环、维护预测、流程优化五大支柱
  3. 树莓派与Arduino协作构建机器人:分步指南
  4. 在SolidWorks中创建渐进剖视动画:分步教程
  5. 确保可信供应链数据:经验证的策略
  6. 构建制胜原型:快速产品开发分步实战指南
  7. 重型设备液压软管更换分步实操指南
  8. 金属车床卡盘自制专业指南
  9. 用定制RISC-V自定义指令加速应用
  10. 释放IoT数据价值:业务规则管理驱动企业级增值
  11. 注塑模具设计与制造专家指南
  12. 玻璃纤维生产全流程指南