论文部分内容阅读
随着半导体工艺的缩小,单个超大规模集成电路(Very Large Scale Integration,VLSI)芯片上的晶体管数量不断增加,极大的促进了电子技术的发展。同时伴随着代工厂的制造复杂度和生产成本急剧增加,很难在一家公司完成芯片的设计和销售,导致越来越多的技术公司参与集成电路(Integrated Circuit,IC)的供应链,这给集成电路知识产权IP(Intellectual Property,IP)核安全带来了威胁。所以如何有效的保护IP核正成为一个亟待解决的问题。硬件混淆技术是当前IP核保护的重要手段,它是通过修改IP/IC设计来隐藏电路的功能。本项研究主要从IP固核的混淆方法局限性出发,通过对硬件混淆相关理论的深入研究,提出面向密码算法IP固核的状态混淆方法。论文研究内容主要包含以下几个部分:1.基于MST-FSM(Mnimum Sanning Tree-Finite State Machine,MST-FSM)低开销混淆:对电路中原始有限状态机进行修改可以达到混淆和保护电路的目的,但是会导致电路面积和功耗等开销增加。所以本文利用最小生成树算法,提出一种基于MST-FSM混淆方法。混淆状态机的混淆状态互连关系由Kruskal算法确定,并由C语言程序自动生成并嵌入IP核;在混淆评价机制上,提出了混淆程度、混淆强度和性能开销三项评价指标。2.基于状态映射的密码算法混淆:当电路中有限状态机的有效状态正常工作后,电路的安全防护机制将失效,且存在寄存器强写攻击和硬件木马攻击等威胁。为此,本文并结合AES密码算法混淆机制,提出了一种状态映射混淆方法。利用冗余状态和黑洞状态相结合的状态映射方式,实现有限状态机的混淆;采用比特翻转的方法,实现组合逻辑电路的混淆,最后在SMIC 65 nm CMOS工艺下设计基于状态映射的AES算法硬件混淆电路。3.基于全同态的加密混淆算法:全同态技术是对密文进行特定的操作后对结果再解密输出,解密所得结果与对明文进行相同操作的结果相等。而在整个IP核设计过程中,由于不可靠的第三方接触设计数据,为硬件木马、旁道攻击等制造机会,本文结合全同态技术,提出了一种基于全同态的混淆设计方案。通过对原始数据进行全同态加密,利用加密后的数据进行操作,在输出端利用密钥KS对结果混淆输出,从而提高IP核的安全性。4.基于协同混淆的密码算法IP核:现有的单级混淆暴露出越来越多的局限性,比如单层次混淆安全性低;内部IP核存在被逆向攻击的可能;如果攻击者来自设计团队内部,则可以轻易获知芯片信息;鉴此,本文从现有的行为级混淆、电路级混淆、物理级混淆出发,根据各级混淆的协同点,提出了多级协同混淆设计方法,并在Camellia密码算法上进行了VLSI(Very Large Scale Integration,VLSI)实现,从而提高电路的安全可靠性。本文采用TSMC 65nm CMOS和SIMC 65nm CMOS工艺进行电路设计,并主要使用Cadence和Synopsys公司EDA软件进行整体实现。通过对密码算法IP固核的状态混淆方法的研究,本文在一定程度上可以解决IP固核的安全问题,同时在状态混淆密码算法IP固核VLSI设计过程中兼顾混淆安全性同时,使芯片既满足性能需求,在面积和速度等方面进行了进一步优化。