文献标识码:A
DOI:10.16157/j.issn.0258-7998.200419
中文引用格式:陈小宇,叶佳栋. 基于CHIP ID的FPGA加密算法设计与实现[J].电子技术应用,2020,46(11):100-103.
英文引用格式:Chen Xiaoyu,Ye Jiadong. Design and implementation of FPGA encryption algorithm based on CHIP ID[J]. Application of Electronic Technique,2020,46(11):100-103.
0 引言
近年来,现场可编程门阵列(Field Programmable Gate Array,FPGA)凭借着它卓越的性能、灵活方便的可升级特性得到了广泛的应用。大部分FPGA器件采用了查找表(Look Up Table,LUT)结构,其物理结构是静态随机存取存储器(Static Random-Access Memory,SRAM)[1],它要求每次上电重新对FPGA进行配置,二进制配置文件从外部存储器加载到内部SRAM中运行,这就使得监视配置的位数据流成为可能[2]。因此必须加上保密技术保护开发者的知识产权。
主流的FPGA加密策略有外置安全辅助芯片法、内置密钥法和DEVICE ID与比特流封装法三种[3]。外置安全辅助芯片法通过将FPGA与外置安全辅助芯片相结合,同时在各自内部产生随机密钥并进行安全哈希算法计算,在FPGA内部进行匹配校验完成加密[4]。安全芯片一般是CPU或者专用芯片等,此类方法对读写时序和寄存器配置要求严格,对开发者水平要求较高[5]。内置密钥法原理是利用FPGA内置密钥与高级加密标准(Advanced Encryption Standard,AES)的方式对配置数据比特流加密,一般是高端FPGA芯片采用的方法。这种加密方法加密效果好但对成本敏感的应用场合来说不太合适[6]。DEVICE ID与比特流封装法是将每个FPGA带有的唯一ID与设计关联起来,设计者可以加入自定义算法,实现加密过程。此加密方法对Xilinx和Altera公司的多数FPGA都适用,区别在于它们对于DEVICE ID的命名不同,Xilinx和Altera的命名分别为DEVICE DNA和CHIP ID。DEVICE ID与比特流封装法具有使用移植简单、占用资源少和适用性广的特点。
本文针对当前电子设备的发展现状,以Altera公司的FPGA为例,设计了一种基于CHIP ID的加密方式。为优化系统结构,节省逻辑资源,本文采用了硬件电路和逻辑控制的设计方式,同时结合自定义加密方法,实现了对FPGA加密的过程。
本文详细内容请下载:http://www.chinaaet.com/resource/share/2000003066
作者信息:
陈小宇,叶佳栋
(华中师范大学 物理科学与技术学院,湖北 武汉430079)