一种基于SRAM工艺FPGA的防克隆保护方法*
2021-07-30王小骥刘星江
刘 贺,刘 瑶,杨 竞,王小骥,刘星江
(中国电子科技集团公司第三十研究所,四川 成都 610041)
0 引 言
以现场可编程逻辑门阵列(Field-Programmable Gate Array,FPGA)为核心的可编程逻辑器件(Programmable Logic Device,PLD)因具有用户可编程和在线动态重构的特性,方便了电子产品设计的修改和升级,提高了产品的灵活性和通用能力,缩短了产品的开发和上市时间,在现今的电子系统中得到广泛的应用和迅速的发展。
在FPGA中使用的设计和配置数据代表了系统中知识产权的重要部分,然而FPGA设计面临着克隆(Cloning)、反向工程(Reverse Engineering)、篡改(Tampering)和过度构建(Overbuildering)等威胁[1]。其中克隆是指通过复制获得FPGA设计的相同副本,而不需要理解它是如何工作的,窃取方即可零设计成本仿造、伪造产品,这极大地损害了正品厂商的品牌声誉和利益,随着竞争变得越发激烈,FPGA内部设计电路和知识产权的安全性成为产品市场化必须考虑的因素[2]。
基于静态随机存取存储器(Static Random-Access Memory,SRAM)工艺的FPGA具有易失性,每次上电都需由外部进行重新配置,这使得剽窃者可以轻松通过对FPGA的配置数据引脚进行采样,得到该FPGA的配置数据流,实现对FPGA内部设计电路的克隆。
基于反熔丝等技术的FPGA芯片虽然可以很好地解决防克隆、逆向工程破解、篡改等问题,但限于如规模、成本或技术等各方面的原因,在国内外基于SRAM工艺的FPGA仍处于主流地位。这使得对基于SRAM工艺的FPGA芯片的防克隆研究具有重要现实意义。
为此,本文提出一种由FPGA外置安全电路结合杂凑算法(HMAC方式)和伪随机序列生成等技术手段进行合法性认证检测来提高FPGA防克隆的安全设计方法。……
