SoPC安全启动模型与设计实现
2021年电子技术应用第12期
苏振宇,徐 峥,刘雁鸣
浪潮电子信息产业股份有限公司 安全技术部,山东 济南250101
摘要:针对可编程片上系统(SoPC)在启动过程中面临的固件被篡改、植入恶意代码等安全威胁,提出一种安全启动模型。该模型由Boot ROM作为信任根,利用公钥算法和对称密码算法对启动过程中各固件镜像进行数字签名,在SoPC上电启动后依次对各固件镜像的签名值进行验证,从而建立起完整的信任链。在实现阶段,利用Intel现场可编程门阵列(FPGA)开发平台对模型进行了设计和验证,实现了两种模式的安全启动功能。结果表明,该模型能够应用于实际的芯片开发,满足启动过程安全保护的需求。
中图分类号:TP309
文献标识码:A
DOI:10.16157/j.issn.0258-7998.212073
中文引用格式:苏振宇,徐峥,刘雁鸣. SoPC安全启动模型与设计实现[J].电子技术应用,2021,47(12):22-25,30.
英文引用格式:Su Zhenyu,Xu Zheng,Liu Yanming. Design and implementation of SoPC secure startup model[J]. Application of Electronic Technique,2021,47(12):22-25,30.
文献标识码:A
DOI:10.16157/j.issn.0258-7998.212073
中文引用格式:苏振宇,徐峥,刘雁鸣. SoPC安全启动模型与设计实现[J].电子技术应用,2021,47(12):22-25,30.
英文引用格式:Su Zhenyu,Xu Zheng,Liu Yanming. Design and implementation of SoPC secure startup model[J]. Application of Electronic Technique,2021,47(12):22-25,30.
Design and implementation of SoPC secure startup model
Su Zhenyu,Xu Zheng,Liu Yanming
Security Technology Department,Inspur Electronic Information Industry Company Limited,Jinan 250101,China
Abstract:Concerning the security threats such as firmware tampering and malicious code implanting in the startup process of system on a programmable chip(SoPC), a secure startup model is proposed. The model takes boot ROM as the trust root, and the public key algorithm and symmetric cipher algorithm are used to sign the firmware in each phase of the startup process. The digital signature value of each firmware image is verified in turn after SoPC is powered on, so as to establish a complete trust chain. In the implementation stage, the model is designed and verified by using Intel field programmable gate array(FPGA) development platform, and two secure boot modes are realized. The results show that the model can be applied to chip development to meet the requirement of secure startup.
Key words :system on a programmable chip;secure startup;field programmable gate array;digital signature;firmware
0 引言
可编程片上系统(System on a Programmable Chip,SoPC)是一种特殊的嵌入式系统[1],由单个芯片完成整个系统的主要逻辑功能,通过软硬件在系统可编程的功能使得设计方式具备可裁剪、可扩充、可升级等灵活特性。在SoPC启动过程中存在一定的安全风险,恶意软件有可能会修改引导加载程序等固件,使SoPC受到Rootkit攻击[2]。Rootkit等恶意软件通过修改系统的启动过程,安装到系统内以达到持久驻留系统的目的[3],SoPC一旦受到Rootkit等恶意代码感染,即使重新安装系统也无法清除。因此有必要对SoPC进行安全保护,防止在启动过程中固件被恶意篡改。安全启动对于保护设计的知识产权和防止恶意软件在系统上运行至关重要。相关研究工作存在的问题主要有:(1)采用外接可信平台模块(Trusted Platform Module,TPM)[4]实现可信启动[5],该方式增加了硬件成本且系统集成度低;(2)在构建信任链的过程中仅采用杂凑算法进行度量[6],缺少验证的过程,因此安全性较低;(3)嵌入式系统上电时由最先启动的引导加载程序Boot Loader调用TPM对后续加载的模块进行度量[7-8],Boot Loader默认是安全的,但Boot Loader一旦被攻击篡改,整个信任链就处于非可信的状态。
本文详细内容请下载:http://www.chinaaet.com/resource/share/2000003864。
作者信息:
苏振宇,徐 峥,刘雁鸣
(浪潮电子信息产业股份有限公司 安全技术部,山东 济南250101)
此内容为AET网站原创,未经授权禁止转载。