PUF论文整理1_FPGA implementation of a challenge pre-processing structure arbiter PUF designed......

2020_FPGA implementation of a challenge pre-processing structure arbiter PUF designed for machine learning attack resistance

摘要

  PUF利用芯片制造过程中工艺变化带来的随机性,通过生成独特的挑战-响应对进行识别和验证。仲裁PUF的输出响应是由于不同输入挑战的路径延迟差异造成的。然而,由于仲裁PUF的响应和挑战之间有很强的线性相关性,攻击者可以通过机器学习算法对APUF(仲裁PUF)建模。本文提出了一种挑战预处理结构仲裁PUF (CPP-APUF),增加了输入挑战的不确定性,提高了APUF抵抗机器学习攻击的能力。基于FPGA实现64级CPP-APUF,利用机器学习算法对CPPAPUF进行攻击。输出响应预测精度低于61.33%,对机器学习的建模攻击很有效。最后,通过实验得到的挑战响应对验证了PUF的特性。

1. Introduction

  PUF在身份验证、密码存储和交换等领域受到广泛关注,成为信息安全领域的研究热点[1,2,3]。PUF依赖于芯片制造过程中复杂且不可控制的变化来产生独特的信号。PUF被认为是对输入挑战的响应,响应对应的挑战称为Challenge-Response Pair[挑战-响应对] (CRP)[4,5,6,7]。PUF根据crp的数量可分为两类:弱PUF和强PUF[8]。弱PUF通常只有一对或数量非常少的crp。另一方面,强PUF具有与PUF大小对应的指数型CRP,可灵活实现一次性只使用一种特定CRP的安全目的。
  仲裁PUF (Arbiter PUF, APUF)是最早提出的硅PUF结构[9],是一种典型的强PUF结构。APUF将上升脉冲通过两个相同的延迟路径传播,并使用挑战来选择路径延迟变化来产生响应[10,11]。
  然而,由于仲裁PUF的响应和挑战之间存在很强的线性相关性,APUF在通过机器学习(ML)算法建模攻击和侧信道攻击方面的脆弱性在文献[12,13,14,15,16,17,18]中得到了很好的文献的描述。
  通过修改传统APUF的结构,扰乱CPR的线性关系,增加了机器学习攻击的难度。例如,G. Edward Suh等人提出了XOR APUF结构,最后的输出是通过几个APUF响应[19]的XOR得到的。B. Gassend等人提出了前馈仲裁PUF (FF APUF)保护结构,在APUF的基础上增加了一个预反馈结构,将前一级仲裁结果作为后一级仲裁单元[20]的选择信号。Qingqing Ma等人提出了一种Multi-PUF保护结构,通过异或掩蔽原始输入的挑战[21]来干扰挑战响应对之间的关系。Siarhei S等人提出了多输入签名寄存器(MISR)保护结构和T触发器异或保护结构。电流输出的响应不仅取决于当前挑战,而且还取决于先前的输入挑战[22,23]。
  随着对APUF建模攻击研究的深入,这些APUF变体结构仍然容易受到模型攻击。理论上,神经网络建模方法无需分析保护结构[14]的实现细节,只需对任意非线性结构进行迭代学习即可成功攻击保护结构。Multi-APUF使用弱PUF生成的值对挑战执行异或操作。对于同一个Multi-APUF实体,弱PUF是可以通过建模攻击来破解的单个固定值。MISRAPUF采用一组确定的运算单元来处理挑战。虽然预先配置的未知参数参与了操作,但攻击者可以根据已知的算术单元计算出中间结果的分类,然后根据中间结果将挑战响应划分为不同的组,最后根据不同组建立不同APUF模型[12,13,14,15,16,17,18]。因此,为了提高APUF抵抗建模攻击的能力,本文提出了一种新的挑战预处理APUF结构(CPPAPUF),该结构的特征值包含不可预知的未知参数,处理后的挑战随着原始输入挑战的变化而变化。与现有APUF保护结构相比,CPPAPUF能有效抵抗神经网络算法建模的攻击。

本文的主要贡献如下:

1提出了一种有效的挑战预处理结构APUF,增加了输入挑战的不确定性和不确定性,提高了APUF对机器学习攻击的安全性。
2给出了该系统的数学模型和设计复杂性分析。分析了挑战预处理的处理效果。
3在FPGA平台上实现了CPPAPUF的建模攻击实验。建模攻击由四种机器学习算法进行。线性回归、逻辑回归和支持向量机的建模精度最终保持在54.00%,而反向传播神经网络建模算法仅达到61.33%。实验结果表明,与现有APUF保护结构相比,所提出的cppapuf保护结构能够有效抵抗神经网络算法的建模攻击。
  本文的其余部分组织如下。第二部分提出了一种新的挑战预处理结构APUF (cppapuf)。第三部分在FPGA平台上实现了cppapuf结构,并讨论了抗建模攻击的效果。第四部分比较了cpp- apuf与理想PUF的PUF特性。最后,第五部分对本文的工作进行了总结和讨论。

2. Design of CPP-APUF

2.1 挑战预处理APUF的结构

  CPP-APUF结构对抗建模攻击的原理如图1所示。CPP结构首先预处理输入APUF的原始挑战,然后将处理后的挑战信号发送给APUF以生成输出响应。
  CPP结构由一个改进的RS触发器组成,两个相邻RS触发器的输出同时作为相邻触发器的输入。与只有两个输入信号的传统RS触发器相比,改进的RS触发器包含四个输入,包括原始输入信号Ci和C(i+1),以及混叠信号C(i-1)和C(i+2)。特别值得注意的是,当级联RS触发器位于结构边缘时,例如与C0和Cm对应的与门(AND gate),输入混淆信号C(0-1)和C(m+1)使用两个C0和Cm信号进行替换。与传统RS触发器的真值表相比,改进后的RS触发器具有更多的输入信号组合模式,包括对应于4种输出组合的16种输入组合。

2.2 CPP结构的数学模型

本文提出的CPP-APUF包括挑战预处理结构和传统的APUF设计,根据APUF的数学模型和CPP结构的数学原理,CPP-APUF的模型描述为方程1。


  将数学模型与传统的APUF[22]进行比较,后者的响应依赖于固定的内部延迟参数和输入挑战。由于对APUF的实际输入挑战是模糊和掩盖的,因此建议的CPPAPUF设计比传统APUF具有更高的复杂性和不可预测性。

2.3 CPP-APUF的效果分析

  对于传统RS触发器,当且仅当两个输入挑战信号同时为“1”时,输出响应信号为不确定状态“X”,且不确定状态的值取决于RS触发器内部电路的制造工艺差异。在这种情况下,输出响应Ci和Ci+1只能是“0,1”或“1,0”中的一个。改进的RS触发器的激发响应对符合弱PUF的特性,输出响应由电路制造工艺差异决定,并且仅当输入激发信号同时为“1”时。以4级APUF为例,对于每个4位输入挑战,处理后的输出响应取决于挑战数据中连续“1”的数量。在特定场景中,当输入挑战为“0011”时,输出响应可能为“1101”或“1110”。
  挑战预处理结构利用RS触发器结构的弱PUF特性来增加未知参数。同时,改变输出响应和输入挑战之间的线性关系。通过不可预测变量增加系统熵值可以提高抵抗建模攻击的难度。

3. CPP-APUF的FPGA实现

  基于Altera FPGA平台,实现了cppapuf的逻辑电路和数据采集[24,25,26,27]。本实验的系统框图如图2所示。在FPGA平台上实现了PUF和控制逻辑电路。接收器模块挑战是用于接收64位随机PUF挑战,和控制模块脉冲发生器产生一个脉冲信号的UART模块用于接收挑战传输PUF响应,和PUF电路产生一个esponse当模块响应包接收响应包成8位数据,通过UART模块将数据发送到PC机。PC端通过UART发送随机挑战,并接收FPGA发送的PUF响应。最后,利用MATLAB程序对挑战响应数据进行分析。

  基于FPGA平台,实现了具有32个级联挑战处理结构的APUF,采集了17万个稳定的CRP,其中15万个CRP用于训练模型,2万个CRP用于检测模型的预测精度。建模结果如图3所示。在3000多个CRP的训练模型下,对线性回归、逻辑建模三种建模算法的建模准确率进行了测试。回归和支持向量机基本上不再发生变化,维持在54%左右,而BPNN算法的建模精度仍在不断提高。在10000个CRP的训练下,BPNN算法的建模准确率为52.8%。在50000名CRP的训练下,建模准确率为56.73%。在100000个CRP的训练下,建模准确率高达59.32%,在150000个CRP的训练下,建模正确率达到61.33%,并逐渐趋于稳定,但明显低于相同情况下原APUF建模模型的97.4%的正确率,表明该级联RS挑战处理结构具有良好的抗建模攻击能力。

  实验比较了BPNN算法下不同APUF保护结构的抗建模攻击效果,如图4所示。3XOR-APUF的结构包含三个具有共享挑战的APUF,最终输出响应由三个APUF响应的“XOR”获得。FF-APUF结构包括基于APUF的预反馈结构,预仲裁结果用作后级开关单元的选择信号。在本实验中,采用了三个反馈回路。多PUF结构的挑战是基于APUF挑战的具有固定随机值的“异或”。XOR-APUF和FF-APUF通过“XOR”和反馈等非线性保护结构引入有限随机值。多PUF增加了通过输入挑战的固定随机值“异或”模拟攻击的难度。然而,CPP-APUF不仅通过使用改进的RS触发器增加了保护结构的随机值,而且还增加了随机值随输入挑战而变化的攻击建模难度。原APUF结构在仅训练5000个CRP的情况下,预测精度可达97.60%。经过30000个以上的训练,预测准确率达到98.50%。3XOR-APUF结构包含三个APUF。该模型预测精度高达95.85%~96.41%,预测精度超过30000个CRP。对于FF-APUF结构,本实验使用了三个反馈回路。在50000多个CRP的训练下,预测准确率可以达到90.78%-93.56%。多PUF结构的挑战是基于APUF挑战的具有固定随机值的“XOR”。采用[3]的建模攻击方法,在3000个CRP的训练下,预测准确率可以达到95.73%。超过20000个CRP时,预测准确率可达到98.10%以上。在50000个CRP的训练下,CPPAPUF的预测准确率为56.73%。随着训练次数的增加,准确率不会急剧变化。即使在150000个CRP的训练下,预测准确率也只有61.33%。

4. CPP-APUF的特性

4.1 CPP-APUF的唯一性

  PUF的唯一性是指结构相同但相互独立的多个PUF实体所产生的响应之间的差异。理想情况下,唯一性的值趋向于50%。唯一性是测试PUF设计成功与否的重要特征,其唯一性的计算和评价公式如下式4所示。其中k为参与测试的k个PUF实体的总数,HD(Ri, Rj)为PUF实体的片间汉明距离,n为每个PUF实体输出响应的位宽。

  采集了实验响应,计算了两个PUF之间的汉明距离。汉明距离分布图如图5所示。由式4计算出cppapuf的唯一性为51.06%,接近理想PUF要求的唯一性的50%。

4.2 CPP-APUF的稳定性

  PUF的稳定性是指当同一PUF实体连续输入相同挑战时,外部因素变化时PUF输出响应的差异。理想情况下,PUF实体的稳定性趋向于100%。PUF实体的稳定性计算公式如式5所示。m代表测量的数量,高清(Rg, R)代表了片上汉明距离,Rg是参考响应测量在某些情况下,Rt后获得的响应输入相同的挑战t乘以,m是同样的挑战的次数是输入,n是PUF实体的位宽输出响应。

  cppapuf响应的稳定性如图6所示。cppapuf输出响应的整体稳定性较原APUF低。平均值为99.67%,比原APUF稳定性平均值低0.08%。

4.3 CPP-APUF的均匀性

  PUF的均匀性是指同一个PUF实体产生的所有响应中出现1和0的概率。理想情况下,PUF的均匀性趋向于50%。均匀度计算如式6所示。国际扶轮,;为第i个响应的第j位的值,n为输出响应的位宽,式6计算“1”在响应中的比例。

  16种cppapuf的均匀性分布图如图7所示。16种保护型PUF的均匀度平均为50.18%,接近理想PUF要求的50%的均匀度。

5. Summary and conclusions

  本文提出了一种新的具有挑战预处理保护结构的APUF来抵抗建模攻击。在建立数学模型的基础上,对cppapuf进行了设计复杂性分析。在FPGA平台上实现了带有挑战预处理的APUR结构。实验结果表明,所提出的cppapuf的唯一性和均匀性接近于理想PUF,稳定性稍好。低于原APUF结构。机器学习算法用于建模攻击。线性回归、逻辑回归和支持向量机的建模精度均低于54.00%,BPNN建模算法输出响应预测精度低于61.33%。他们都不能准确地实施预测性攻击。结果表明,本文提出的cppapuf与现有文献中的保护结构相比,具有更好的抗机器学习攻击能力。

6.原文及参考文献整理_在资料中下载

免费下载地址.

  • 3
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值