论文部分内容阅读
在一个计算系统中,硬件芯片的安全是整个系统安全的基础。随着信息技术的发展,近年来针对硬件设备的攻击层出不穷,而硬件木马便是其中一种。硬件木马是攻击者对硬件电路的一种恶意篡改,被植入硬件木马的芯片可能会泄露信息、改变功能或直接损坏,这给硬件的安全带来了极大的威胁,所以硬件木马问题自诞生以来便受到了广泛的关注。FPGA作为一种可编程硬件,由于其可配置、高性能等优点被广泛地应用于密码计算、视频编解码等对计算速度与实时性要求较高的领域。本文以FPGA为媒介,希望通过研究FPGA上的硬件木马问题来使得检测者能更好地对木马进行分析与检测。本研究基于旁路泄露信息的采集与分析,包含以下两方面:(1)硬件木马电路设计和检测方法(2)JTAG隐藏指令检测方法。基于旁路的硬件木马是一类可以泄露芯片内信息的木马。木马将芯片内的秘密信息通过旁路泄露给攻击者,攻击者对旁路信息进行采集与分析即可还原秘密信息。JTAG接口作为标准接口,在芯片读写与调试方面起到重要的作用。然而一些研究表明,芯片设计者可能会在JTAG相关指令中留下用于实现木马功能的隐藏指令。因此,对于安全检测者来说,了解待测芯片的JTAG所包含的指令是十分必要的。针对以上两个方面,本文主要研究内容如下:(1)提出了基于FPGA的旁路硬件木马设计。实验表明,攻击者通过对木马功耗进行差分功耗分析即可对秘密信息进行还原。(2)利用旁路木马功耗泄露与秘密信息间的相关性,提出了基于功耗的旁路木马检测方法,方法可有效地对旁路木马进行检测。(3)针对旁路木马设计进行了改进,通过引入由秘密信息生成的掩码来对木马消耗的功耗进行混淆以提高检测的难度。(4)针对芯片的JTAG进行了分析,提出了判断JTAG指令寄存器长度、数据寄存器长度和指令属性的方法,为后续对JTAG指令功能的分析打下了基础。实验针对了一款FPGA的JTAG指令进行了检测,检测结果符合预期。