CN116208145B - 基于fpga的低开销三态puf电路及配置方法 - Google Patents
基于fpga的低开销三态puf电路及配置方法 Download PDFInfo
- Publication number
- CN116208145B CN116208145B CN202310470048.8A CN202310470048A CN116208145B CN 116208145 B CN116208145 B CN 116208145B CN 202310470048 A CN202310470048 A CN 202310470048A CN 116208145 B CN116208145 B CN 116208145B
- Authority
- CN
- China
- Prior art keywords
- exclusive
- gate
- path
- input
- multiplexer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/76—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/003—Modifications for increasing the reliability for protection
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/1733—Controllable logic circuits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
- H03K19/21—EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3278—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/122—Hardware reduction or efficient architectures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
Abstract
本发明公开了基于FPGA的低开销三态PUF电路及配置方法,包括:第一输入端相连的两或门,PUF单元和信号处理单元;PUF单元包括若干级联单元顺次连接构成的总链路,级联单元包括异或门子单元和多路选择器子单元;异或门子单元用来根据第一输入端接收的第一激励信号配置为反相器或延迟线,以及用来根据第二输入端接收的2比特第二激励信号配置两路信号的延迟路径;多路选择器子单元用来根据接收的第三激励信号选择两路信号的传输路径;PUF单元用来根据激励信号切换工作模式;信号处理单元用来在当前工作模式下根据PUF单元的输出获取响应。本发明可增强抗建模攻击能力和激励响应空间,可提高可配置性,可降低资源开销。
Description
技术领域
本申请属于电路设计和信息安全技术领域,具体涉及基于FPGA的低开销三态PUF电路及其配置方法。
背景技术
随着科技发展,物联网(IoT)已成为新一代信息技术的重要组成部分。由于物联网具有低功耗、广覆盖、低成本和多连接等特点,攻击者可通过物理探测、侵入式与半侵入式等攻击手段,从外部攻击物联网系统内部的关键数据。为实现更高等级的物理安全,通常需要增设防篡改电路,而防篡改电路需持续通电,不仅耗电且还造价昂贵。此外,由于CPU,内存和电池容量等资源限制,防篡改电路无法承受经典密码安全解决方案带来的资源消耗。因此,寻求一个合适的轻量级解决方案对于物联网安全而言非常紧迫。
物理不可克隆函数(Physical Unclonable Function,PUF)可为物联网提供良好的安全屏障。PUF主要利用芯片在制造过程中不可避免的随机性差异来生成唯一的“芯片指纹”。PUF一般以激励响应对的形式被应用,当被输入一个激励时,由于工艺上微米级甚至纳米级的微小差异,输出一个无法预测、不可克隆的响应。并且,一旦其结构遭到入侵,输出根据其工艺误差的改变将会发生显著改变。
现已存在的PUF类型众多,根据产生的激励响应对数量,PUF可分为弱PUF和强PUF两大类。RO PUF是一种典型的弱PUF,Arbiter PUF则是一种典型的强PUF。然而不管是ROPUF还是Arbiter PUF,其中激励和响应为线性映射关系,攻击者通过收集少量的激励响应对,即可利用基于机器学习的建模攻击手段高精度地进行建模,可靠性有待增强。而且在FPGA中实现上述PUF均不可避免地增大芯片面积,所以还存在资源开销较大的问题。
发明内容
本申请的目的是提供基于FPGA的低开销三态PUF电路及配置方法,该三态PUF电路及配置方法可增强抵御建模攻击能力和激励响应空间,可提高可配置性,可降低资源开销。
为达到上述目的,本申请一方面提供了基于FPGA的低开销三态PUF电路及配置方法,包括:第一输入端相连的两或门,PUF单元和信号处理单元;两或门的输出端连接PUF单元的输入端,PUF单元的输出端连接两或门的第二输入端和信号处理单元;其中:
PUF单元包括若干级联单元顺次连接构成的总链路,级联单元包括由并行的两异或门构成的异或门子单元以及由并行的两多路选择器构成的多路选择器子单元,两异或门的输出与两多路选择器的输入均相连;若干级联单元中并行的两异或门和多路选择器构成总链路的第一子链路和第二子链路;
异或门子单元用来根据第一输入端接收的第一激励信号被配置为反相器或延迟线,以及用来根据第二输入端接收的第二激励信号配置两路信号的延迟路径;多路选择器子单元用来根据接收的第三激励信号选择异或门子单元输出两路信号的传输路径;
PUF单元用来根据第一激励信号和第三激励信号切换工作模式;信号处理单元用来在当前工作模式下根据PUF单元的输出获取响应。
在一些具体实施方式中,上述低开销三态PUF电路还包括异或处理单元,其输入端连接信号处理单元的输出端。
在一些具体实施方式中,信号处理单元包括与PUF单元的输出连接的两计数器、仲裁器和状态寄存器,以及与两计数器的输出连接的比较器。
进一步的,PUF单元用来根据第一激励信号和第三激励信号切换工作模式,包括:
当从第一子链路和第二子链路输入的信号分别从第一子链路和第二子链路的输出端输出,且PUF单元中有奇数个级联单元中异或门子单元被配置为反相器,切换为RO PUF工作模式;
信号处理单元用来对第一子链路和第二子链路的输出进行振荡次数计数,并对计数值进行比较,来获取响应。
进一步的,PUF单元用来根据第一激励信号和第三激励信号切换工作模式,包括:
当PUF单元中有偶数个或0个级联单元中异或门子单元被配置为反相器,切换为Arbiter PUF工作模式;
信号处理单元用来仲裁第一子链路和第二子链路输出信号的到达顺序,来获取响应。
进一步的,PUF单元用来根据第一激励信号和第三激励信号切换工作模式,包括:
当从第一子链路和第二子链路输入的信号分别从第二子链路和第一子链路的输出端输出,且PUF单元中有奇数个级联单元中异或门子单元被配置为反相器,切换为TEROPUF工作模式;
信号处理单元用来获取振荡状态稳定值作为响应。
在一些具体实施方式中,异或门子单元采用包括两五输入查找表和一复用器的六输入查找表实现,包括:两五输入查找表共用所述六输入查找表的5个输入端I0,I1,I2,I3,I4,将输入端I0和I1分别配置为异或门子单元中两异或门的脉冲信号输入端,将输入端I2配置为异或门子单元中两异或门的第一输入端,将输入端I3和I4配置为异或门子单元中两异或门的第二输入端,将连接复用器的输入端I5配置为高电平。
本申请另一方面还提供了上述基于FPGA的低开销三态PUF电路的配置方法,包括:
外部输入2n比特的二进制激励信号,n/2表示PUF单元中级联单元数量;
前n比特激励信号的奇数位分别输入各级联单元中异或门子单元的第一输入端,异或门子单元根据第一输入端接收的激励信号被配置为反相器或延迟线;
前n比特激励信号的偶数位分别输入各级联单元中多路选择器子单元,多路选择器子单元根据接收的激励信号选择两路信号的传输路径;
后n比特激励信号中2比特激励信号为一组分别输入各级联单元中异或门子单元的第二输入端,异或门子单元根据第二输入端接收的激励信号配置延迟线的延时路径;
当PUF单元中有奇数个级联单元中异或门子单元被配置为反相器,且从第一子链路和第二子链路输入的信号分别从第一子链路和第二子链路的输出端输出时,切换为ROPUF工作模式,信号处理单元用来对第一子链路和第二子链路的输出进行振荡次数计数,并对计数值进行比较,来获取响应;
当PUF单元中有奇数个级联单元中异或门子单元被配置为反相器,且从第一子链路和第二子链路输入的信号分别从第二子链路和第一子链路的输出端输出时,切换为TEROPUF工作模式,信号处理单元用来获取振荡状态稳定值作为响应;
当PUF单元中有偶数个或0个级联单元中异或门子单元被配置为反相器,切换为Arbiter PUF工作模式,信号处理单元用来根据第一子链路和第二子链路的输出信号的到达顺序,来获取响应。
在一些具体实施方式中,当异或门子单元的第一输入端接收的激励信号为1时,异或门子单元被配置为反相器;当异或门子单元的第一输入端接收的激励信号为0时,异或门子单元被配置为延迟线。
在一些具体实施方式中,当多路选择器子单元接收的激励信号为0时,异或门子单元输出的两路信号平行通过多路选择器子单元;当多路选择器子单元接收的激励信号为1时,异或门子单元输出的两路信号交叉通过多路选择器子单元。
与现有技术相比,本申请具有如下优点和有益效果:
1、本申请三态PUF电路可根据激励信号配置为不同工作模式,激励响应空间和响应复杂性均显著增加,具有更强的抵御建模攻击能力;
2、本申请三态PUF电路,无论工作模式为Arbiter PUF,RO PUF还是TERO PUF,均可根据外部输入的后n比特激励信号,对异或门子单元中各异或门的内部传输路径进行配置,延时差异得到指数级提升;由于前n比特激励信号中奇数位和偶数位具有不同的功能,基于可配置异或门的三态PUF电路将具有22n数量级的熵,本申请三态PUF电路具高度可配置性;
3、本申请三态PUF电路中,一个8级的三态PUF电路,仅使用16个双输出的六输入查找表就可产生232比特的响应,资源开销显著降低,激励响应空间显著增加。
附图说明
图1为本申请实施例三态PUF电路的结构示意图;
图2为本申请实施例中采用六输入查找表实现异或门子单元的示意图,其中,图(a)为六输入查找表的结构示意图,图(b)为异或门子单元的实现示意图;
图3为本申请实施例中路径延时配置示意图;
图4为本申请实施例三态PUF电路结构的RO PUF工作模式示意图;
图5为本申请实施例三态PUF电路结构的TERO PUF工作模式示意图;
图6为本申请实施例三态PUF电路结构的Arbiter PUF工作模式示意图。
图中,11-上路或门,12-下路或门,20-级联单元,21a-上路异或门,21b-下路异或门,22a-上路多路选择器,22b-下路多路选择器,31-上路计数器,32-下路计数器,40-比较器,50-仲裁器,61-第一状态寄存器,62-第二状态寄存器,70-异或处理单元。
实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于描述,将本申请基于FPGA的低开销三态PUF电路简记为三态PUF电路。参见图1,所示为本申请实施例中三态PUF电路的结构示意图,包括:
第一输入端相连的两或门(分别记为上路或门11和下路或门12),两或门的相连端用来接收脉冲信号En,并在接收到脉冲信号En时启动振荡;
与两或门的输出连接的PUF单元,包括若干级联单元20顺次连接构成的总链路,用来接收外部的激励信号,并根据激励信号切换三态PUF电路的工作模式;
与PUF单元的输出连接的信号处理单元,信号处理单元用来在当前工作模式下根据PUF单元的输出获取响应。
为了不同工作模式的兼容,本申请三态PUF电路还包括一异或处理单元70,其与信号处理单元的输出相连,各工作模式下的响应经异或处理单元70输出。本申请实施例中信号处理单元包括与PUF单元的输出连接的两计数器、仲裁器50和状态寄存器,以及与两计数器的输出连接的比较器40,其中,比较器40、仲裁器50和状态寄存器的输出连接异或处理单元70。
进一步的,级联单元20包括异或门子单元和多路选择器子单元,异或门子单元的输出端和多路选择器子单元的输入端连接;其中,异或门子单元由并行的两异或门构成,多路选择器子单元由并行的两多路选择器构成,多路选择器可选2选1多路选择器。若干级联单元20中并行的两异或门和两多路选择器构成总链路的第一子链路和第二子链路。
再进一步的,级联单元20包括上路异或门21a、下路异或门21b、上路多路选择器22a和下路多路选择器22b,则:在每个级联单元20中,上路异或门21a的输出端连接上路多路选择器22a的第一端和下路多路选择器22b的第二端,下路异或门21b的输出连接上路多路选择器22a的第二端和下路多路选择器22b的第一端。且其中,上路异或门21a和上路多路选择器22a位于第一子链路,下路异或门21b和下路多路选择器22b位于第二子链路。
本申请中各级联单元20中异或门子单元的第一端用来接收第一激励信号,并根据第一激励信号被配置为反相器或延迟线。具体的,当接收的第一激励信号为0时,异或门子单元中两异或门被配置为延迟线;当接收的第一激励信号为1时,异或门子单元中两异或门被配置为反相器。各级联单元20中异或门子单元的第二输入端用来接收第二激励信号,两异或门根据第二激励信号配置两路信号的延迟路径。
本申请中各级联单元20中多路选择器子单元用来接收第三激励信号,并根据第三激励信号选择两路信号的传输路径,即根据接收的第三激励信号选择异或门子单元输出的两路信号是平行还是交叉通过两多路选择器。具体的,当接收的第三激励信号为1时,两路信号交叉通过两多路选择器;当接收的第三激励信号为0时,两路信号平行通过两多路选择器。需要说明的是,本申请中所谓“交叉通过”指信号从当前子链路输入到另一子链路,即:上路异或门21a的输出信号从下路多路选择器22b通过并输出,下路异或门21b的输出信号从上路多路选择器22a通过并输出;所谓“平行通过”指继续将信号输入当前子链路,即:上路异或门21a的输出信号从上路多路选择器22a通过并输出,下路异或门21b的输出信号从下路多路选择器22b通过并输出。
本申请中PUF单元用来接收外部的激励信号,并根据激励信号切换三态PUF电路的工作模式。具体的,根据第一激励信号和第三激励信号,本申请三态PUF电路可被配置为ROPUF,Arbiter PUF或TERO PUF工作模式。当被配置为RO PUF时,信号处理单元中的上路计数器31和下路计数器32分别对第一子链路和第二子链路的RO振荡环进行频率计数,比较器40则根据上路计数器31和下路计数器32的计数值产生响应。当被配置为Arbiter PUF时,信号处理单元中的仲裁器50根据第一子链路和第二子链路信号到达的前后顺序,产生响应。当被配置为TERO PUF时,信号处理单元中的状态寄存器存储并输出振荡稳定值作为响应。
进一步的,下面将提供本申请实施例中异或门子单元的一种具体实施方式。在本具体实施方式中,异或门子单元采用一双输出的六输入查找表LUT6结构实现,参见图2中的(a)图,所示为六输入查找表LUT6结构,其由两五输入查找表和一复用器MUX组成,两五输入查找表LUT5_0、LUT5_1共用5个输入端I0,I1,I2,I3,I4,其中,一五输入查找表LUT5_0的输出直接连接六输入查找表LUT6的第一输出端Q5,同时该五输入查找表LUT5_0的输出还连接复用器MUX的第一输入端;另一五输入查找表LUT5_1的输出连接复用器MUX的第二输入端,复用器MUX的输出连接六输入查找表LUT6的第二输出端Q6。
参见图2中的(b)图,所示为基于六输入查找表LUT6的异或门子单元。为保证输出Q5和Q6,将输入复用器MUX的路径选择信号I5配置为高电平,I0和I1分别配置为两异或门的脉冲信号输入端,在第一个级联单元中,两异或门的脉冲信号输入端分别连接上路或门11和下路或门12的输出端;其他级联单元中,两异或门的脉冲信号输入端分别连接前一级联单元的两输出端。I2配置为两异或门的第一输入端,用来接收第一激励信号,两异或门根据第一激励信号被配置为反相器或延迟线。I3和I4配置为两异或门的第二输入端,用来接收第二激励信号,第二激励信号为延迟路径配置信号,两异或门用来根据第二激励信号配置不同的路径延时。路径延时配置情况参见图3:当I3I4=00时,五输入查找表LUT5中信号传输路径见虚线所示,此为最短延迟路径;当I3I4=11时,五输入查找表LUT5中信号传输路径见加粗实线,此为最长延迟路径。以此类推,可配置22种不同长度的延迟路径。
基于本申请三态PUF电路,当PUF单元包括n/2个级联单元时,每个级联单元需从外部输入4比特激励信号,则共需输入2n比特激励信号。前n比特激励信号的奇数位C0C2...Cn-1构成第一激励信号,分别输入每个级联单元中异或门子单元的第一输入端;前n比特激励信号的偶数位C1C3...Cn-2构成第三激励信号,分别输入每个级联单元中多路选择器子单元,多路选择器子单元根据第三激励信号选择信号传输路径;后n比特激励信号CnCn+1…C2n-1构成第二激励信号,用来配置每个级联单元的控制延迟路径配置信号sel0,sel1,…seln/2-1,延迟路径配置信号分别输入每个级联单元中异或门子单元的第二输入端,异或门子单元根据延迟路径配置信号配置延迟线的延时路径。
本申请三态PUF电路可根据外部输入的2n比特激励信号切换工作模式。下面将结合图1,对工作模式切换原理进行详细描述。
当前n比特激励信号中偶数位“1”的个数为偶数或0,且前n比特激励信号中奇数位“1”的个数为奇数,即奇数个级联单元中异或门子单元被配置为反相器,此时,上路信号从O端出发到达Q端,又由Q端反馈至O端,形成第一子链路的RO振荡环;下路信号从P端出发达到S端,又由S端反馈至P端,形成第二子链路的RO振荡环;第一子链路和第二子链路被配置为两个独立的RO振荡环,此时工作模式为RO PUF。上路计数器31和下路计数器32分别用来对两独立RO振荡环的振荡次数进行计数,比较器40用来根据两计数器的计数值差值输出响应。
当前n比特激励信号偶数位“1”的个数为偶数或0,且前n比特激励信号奇数位“1”的个数为偶数或0,偶数个或0个级联单元中异或门子单元被配置为反相器,此时,上路信号从O端出发到达Q端,又由Q端反馈至O端,最后从Q端输出;下路信号从P端出发到达S端,又由S端反馈至P端,最后从S端输出。此时工作模式为Arbiter PUF,第一子链路和第二子链路的输出信号连接仲裁器50。当第一子链路信号先于第二子链路信号到达仲裁器50,仲裁器50输出响应1;否则,仲裁器50输出响应0。
当前n比特激励信号偶数位“1”的个数为奇数,且前n比特激励信号奇数位“1”的个数为奇数,奇数个级联单元中异或门子单元被配置为反相器,此时,上路信号从O端出发到达S端,又由S端反馈至P端;下路信号从P端出发到达Q端,又由Q端反馈至O端。上下路形成大环形传输路径,此时工作模式为TERO PUF。由于制造过程中的变化导致TERO两分支间的延迟失配,TERO在一定时间内振荡后趋于一个稳定值,该稳定值寄存于状态寄存器中,并作为响应输出。本申请中状态寄存器包括与上路计数器31连接的第一寄存器61,与比较器40连接的第二寄存器62。TERO PUF在振荡稳定后,Q处的TERO PUF稳定状态值作为响应寄存于第一寄存器61和第二寄存器62。
前n比特激励信号偶数位“1”的个数为奇数,且前n比特激励信号奇数位“1”的个数为偶数或0,偶数个或0个级联单元中异或门子单元被配置为反相器,此时,上路信号从O端出发到达S端,又由S端反馈至P端;下路信号从P端出发到达Q端,又由Q端反馈至O端。此时工作模式为Arbiter PUF,第一子链路和第二子链路的输出信号连接仲裁器。当第一子链路信号先于第二子链路信号到达仲裁器,仲裁器输出响应1;否则,仲裁器输出响应0。
下面将结合具体案例对本申请三态PUF电路及配置方法做进一步详细说明。
该具体案例中PUF单元包括三个级联单元,有212种可能的激励信号,从而可产生212种不可预测的响应。下面将以三组激励信号为例来分别描述。
第一组激励信号中前6比特激励信号为101010,后6比特激励信号为110011。前6比特激励信号中偶数位“1”和奇数位“1”的个数分别为0和3,即PUF单元中三个级联单元的异或门子单元均配置为反相器,根据前6比特激励信号中偶数位可知,从O端输入的信号将到达Q端,又反馈至O端,形成第一子链路的RO振荡环;从P端输入的信号将到达S端,又反馈至P端,形成第二子链路的RO振荡环;第一子链路和第二子链路的信号传输路径见图4中虚线所示路径,此时工作模式为RO PUF,其形成两个独立的RO振荡环。后6比特激励信号为110011,第一个级联单元的延迟路径配置信号sel0接入C6C7,即sel0=11,第一个级联单元中异或门子单元采用最长延迟路径传输信号;第二个级联单元的延迟路径配置信号sel1接入C8C9,即sel1=00,第二个级联单元中异或门子单元采用最短延迟路径传输信号;第三个级联单元的延迟路径配置信号sel2接入C10C11,即sel2=11,第三个级联单元中异或门子单元采用最长延迟路径传输信号。
当输入脉冲信号EN,由于启动脉冲的宽度要小于最短延迟路径,此时两独立的RO振荡环开始振荡,在一定时间内,上路计数器31和下路计数器32开始计算振荡次数,计数值分别记为V1和V2;计数完成后将计数值V1和V2传送至比较器40,比较器40通过判断△V的极性来输出响应,其中,△V=V1-V2;当△V>0时,比较器40输出响应Rro=1;否则,比较器40输出响应Rro=0。再经异或处理单元70输出响应Ri=Rro。
为了不同工作模式的兼容,在不同工作模式下的响应输出经异或处理单元70,输出最终响应值Ri=Rro。该异或处理单元70与比较器40、仲裁器50、状态寄存器的输出均连接,当工作模式为RO PUF时,状态寄存器和仲裁器50不工作,状态寄存器和仲裁器50无输出。
第二组激励信号中前6比特激励信号为101011,后6比特激励信号为110011。前6比特激励信号中偶数位“1”和奇数位“1”的个数分别为1和3,即PUF单元中三个级联单元的异或门子单元均配置为反相器;根据前6比特激励信号中偶数位可知,从O端输入的信号将到达S端,又反馈至P端,见图5中虚线路径;从P端输入的信号将到达Q端,又反馈至O端,见图5中加粗实线路径。在第二组激励信号下信号在第三个级联单元中交叉通过,形成大环形传输路径的TERO结构,此时工作模式为TERO PUF。后6比特激励信号为110011,第一个级联单元的延迟路径配置信号sel0接入C6C7,即sel0=11,第一个级联单元中异或门采用最长延迟路径传输信号;第二个级联单元的延迟路径配置信号sel1接入C8C9,即sel1=00,第二个级联单元中异或门采用最短延迟路径传输信号;第三个级联单元的延迟路径配置信号sel2接入C10C11,即sel2=11,第三个级联单元中异或门采用最长延迟路径传输信号。
当输入脉冲信号EN,由于工艺误差导致TERO PUF的两个子链路在振荡一段时间后趋于稳定,结束振荡,状态寄存器存储振荡结束后的稳定状态值,该稳定状态值作为响应Rtero输出。再经异或处理单元70输出响应Ri=Rtero。
第三组激励信号中前6比特激励信号为101101,后6比特激励信号为110011,前6比特激励信号中偶数位“1”和奇数位“1”的个数均为2,第一个和第二个级联单元中异或门子单元被配置为反相器,第三个级联单元中异或门子单元被配置为延迟线;根据前6比特激励信号中偶数位可知,从O端输入的信号将到达Q端,又反馈至O端,最后从Q端输出,此为第一子链路的传输路径,见图6中所示的虚线路径;从P端输入的信号将到达S端,又反馈至P端,最后从S端输出,此为第二子链路的传输路径,见图6中所示的加粗实线路径。此时工作模式为Arbiter PUF,第一子链路和第二子链路的输出信号输入仲裁器50。后6比特激励信号为110011,第一个级联单元的延迟路径配置信号sel0接入C6C7,即sel0=11,第一个级联单元中异或门采用最长延迟路径传输信号;第二个级联单元的延迟路径配置信号sel1接入C8C9,即sel1=00,第二个级联单元中异或门采用最短延迟路径传输信号;第三个级联单元的延迟路径配置信号sel2接入C10C11,即sel2=11,第三个级联单元中异或门采用最长延迟路径传输信号。
当脉冲信号EN输入,脉冲信号经偶数个反相器后依然输出脉冲信号,之后第一子链路和第二子链路的输出信号均输至仲裁器50。当第一子链路信号先于第二子链路信号到达仲裁器50,仲裁器50输出响应Rarbiter=1;当第二子链路信号先于第一子链路信号到达仲裁器50,仲裁器50输出响应Rro=0。再经异或处理单元70输出响应Ri=Rarbiter。
注意,上述仅为本申请的较佳实施例及所运用的技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请的构思的情况下,还可以包括更多其他等效实施例,均属于本申请的保护范畴。
Claims (6)
1.基于FPGA的低开销三态PUF电路,其特征是,包括:
上路或门,下路或门,PUF单元和信号处理单元,所述PUF单元的输出连接所述信号处理单元;所述上路或门和所述下路或门的第一输入端相连接并用来接收脉冲信号;
所述PUF单元包括若干级联单元顺次连接构成的总链路;各级联单元均包括上路异或门、下路异或门、上路多路选择器和下路多路选择器;每个级联单元中,上路异或门的输出端连接上路多路选择器和下路多路选择器的第一输入端,下路异或门的输出端连接上路多路选择器和下路多路选择器的第二输入端;且上路多路选择器的输出端连接下一个级联单元的上路异或门的输入端,下路多路选择器的输出端连接下一个级联单元的下路异或门的输入端;
其中,第1个级联单元中上路异或门和下路异或门的输入端分别连接所述上路或门和所述下路或门的输出端,最后一个级联单元中上路多路选择器的输出端连接所述上路或门的第二输入端,最后一个级联单元中下路多路选择器的输出端连接所述下路或门的第二输入端;各级联单元中,上路异或门和下路异或门用来根据第一输入端接收的第一激励信号被配置为反相器或延迟线,以及用来根据第二输入端接收的第二激励信号配置两路信号的延迟路径;上路多路选择器和下路多路选择器用来根据接收的第三激励信号选择上路异或门和下路异或门输出两路信号的传输路径;
所述上路异或门和所述下路异或门采用包括两五输入查找表和一复用器的六输入查找表实现,包括:两五输入查找表共用所述六输入查找表的5个输入端I0,I1,I2,I3,I4,将输入端I0配置为上路异或门的脉冲信号输入端,将输入端I1配置为下路异或门的脉冲信号输入端,将输入端I2配置为上路异或门和下路异或门的第一输入端,将输入端I3配置为上路异或门的第二输入端,将输入端I4配置为下路异或门的第二输入端,将连接复用器的输入端I5配置为高电平;
所述PUF单元用来根据第一激励信号和第三激励信号切换工作模式;所述信号处理单元用来在当前工作模式下根据PUF单元的输出获取响应。
2.如权利要求1所述的基于FPGA的低开销三态PUF电路,其特征是:
还包括异或处理单元,其输入端连接信号处理单元的输出端。
3.如权利要求1所述的基于FPGA的低开销三态PUF电路,其特征是:
所述信号处理单元包括与PUF单元的输出连接的两计数器、仲裁器和状态寄存器,以及与两计数器的输出连接的比较器。
4.权利要求1-3中任一项所述的基于FPGA的低开销三态PUF电路的配置方法,其特征是,包括:
外部输入2n比特的二进制激励信号,n/2表示PUF单元中级联单元数量;
前n比特激励信号的奇数位分别输入各级联单元中异或门子单元的第一输入端,异或门子单元根据第一输入端接收的激励信号被配置为反相器或延迟线;所述异或门子单元包括上路异或门和下路异或门;
前n比特激励信号的偶数位分别输入各级联单元中多路选择器子单元,多路选择器子单元根据接收的激励信号选择两路信号的传输路径;所述多路选择器子单元包括上路选择器子单元和下路选择器子单元;
后n比特激励信号中2比特激励信号为一组分别输入各级联单元中异或门子单元的第二输入端,异或门子单元根据第二输入端接收的激励信号配置延迟线的延时路径;
当PUF单元中有奇数个级联单元中异或门子单元被配置为反相器,且从第1个级联单元的上路异或门输入的信号从最后一个级联单元的上路多路选择器输出,同时从第1个级联单元的下路异或门输入的信号从最后一个级联单元的下路多路选择器输出,切换为RO PUF工作模式,信号处理单元用来对两路输出进行振荡次数计数,并对计数值进行比较,来获取响应;
当PUF单元中有奇数个级联单元中异或门子单元被配置为反相器,且从第1个级联单元的上路异或门输入的信号从最后一个级联单元的下路多路选择器输出,同时从第1个级联单元的下路异或门输入的信号从最后一个级联单元的上路多路选择器输出,切换为TEROPUF工作模式,信号处理单元用来获取振荡状态稳定值作为响应;
当PUF单元中有偶数个或0个级联单元中异或门子单元被配置为反相器,切换为Arbiter PUF工作模式,信号处理单元用来根据两路输出信号的到达顺序,来获取响应。
5.如权利要求4所述的基于FPGA的低开销三态PUF电路的配置方法,其特征是:
当所述异或门子单元的第一输入端接收的激励信号为1时,异或门子单元被配置为反相器;当所述异或门子单元的第一输入端接收的激励信号为0时,异或门子单元被配置为延迟线。
6.如权利要求4所述的基于FPGA的低开销三态PUF电路的配置方法,其特征是:
当所述多路选择器子单元接收的激励信号为0时,异或门子单元输出的两路信号平行通过多路选择器子单元;当所述多路选择器子单元接收的激励信号为1时,异或门子单元输出的两路信号交叉通过多路选择器子单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310470048.8A CN116208145B (zh) | 2023-04-27 | 2023-04-27 | 基于fpga的低开销三态puf电路及配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310470048.8A CN116208145B (zh) | 2023-04-27 | 2023-04-27 | 基于fpga的低开销三态puf电路及配置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116208145A CN116208145A (zh) | 2023-06-02 |
CN116208145B true CN116208145B (zh) | 2023-08-04 |
Family
ID=86514987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310470048.8A Active CN116208145B (zh) | 2023-04-27 | 2023-04-27 | 基于fpga的低开销三态puf电路及配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116208145B (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL257639A (zh) * | 1959-11-06 | |||
EP2081170A1 (en) * | 2006-11-06 | 2009-07-22 | Panasonic Corporation | Information security apparatus |
JP5831202B2 (ja) * | 2011-12-20 | 2015-12-09 | 富士通株式会社 | 個体別情報生成装置及び個体別情報生成方法 |
CN106533654B (zh) * | 2016-10-12 | 2019-04-19 | 南京航空航天大学 | 可配置物理不可克隆函数电路及其响应产生方法 |
CN107145804B (zh) * | 2017-05-08 | 2020-07-24 | 北京化工大学 | 一种基于fpga的低开销的ro puf电路结构 |
US11265178B1 (en) * | 2018-06-08 | 2022-03-01 | Southern Research Institute | Physically unclonable functions using pulse width chaotic maps |
CN111835525B (zh) * | 2020-06-24 | 2021-09-17 | 南京航空航天大学 | 一种基于fpga的可配置ro puf |
CN112019347B (zh) * | 2020-08-20 | 2022-08-16 | 东南大学 | 一种基于xor-apuf的轻量级安全认证方法 |
CN112713894B (zh) * | 2021-01-13 | 2022-08-30 | 温州大学 | 一种强弱混合型puf电路 |
-
2023
- 2023-04-27 CN CN202310470048.8A patent/CN116208145B/zh active Active
Non-Patent Citations (1)
Title |
---|
FPGA物理不可克隆函数及其实现技术;庞子涵;周强;高文超;郭世一;钱旭;;计算机辅助设计与图形学学报(第09期);1-3 * |
Also Published As
Publication number | Publication date |
---|---|
CN116208145A (zh) | 2023-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | XOR-based low-cost reconfigurable PUFs for IoT security | |
CN109460681B (zh) | 一种基于延时链的可配置物理不可克隆函数电路 | |
Yamamoto et al. | Uniqueness enhancement of PUF responses based on the locations of random outputting RS latches | |
CN107145804B (zh) | 一种基于fpga的低开销的ro puf电路结构 | |
WO2019222866A1 (zh) | 一种具有检测校正功能的真随机数产生方法与装置 | |
CN111490758B (zh) | 基于仲裁器puf的可靠性增强结构及增强方法 | |
CN109167664B (zh) | 一种基于异或门的可重构环形振荡器puf电路 | |
CN112713894B (zh) | 一种强弱混合型puf电路 | |
US10936286B2 (en) | FPGA logic cell with improved support for counters | |
CN114113989B (zh) | 一种dft测试装置、测试系统以及测试方法 | |
CN107437945B (zh) | 并串转换电路 | |
CN109947395B (zh) | 可编程逻辑单元结构及芯片 | |
CN106878014A (zh) | 随机数密钥产生装置及随机数密钥产生方法 | |
CN111027102A (zh) | 一种高安全性可配置ro-puf电路结构 | |
CN112272084A (zh) | 抗攻击和自检特性的基于复合型puf的密钥生成系统及方法 | |
US8525565B2 (en) | Family of multiplexer/flip-flops with enhanced testability | |
Wei et al. | Transformer PUF: A highly flexible configurable RO PUF based on FPGA | |
US8044833B2 (en) | High speed serializer | |
CN108763977B (zh) | 一种钳位反相器puf的电路、电子装置及实现方法 | |
CN116208145B (zh) | 基于fpga的低开销三态puf电路及配置方法 | |
CN110750233B (zh) | 一种基于逻辑门非对称自治布尔网络的随机数发生器 | |
CN111339576A (zh) | 三态物理不可克隆函数电路、控制方法及芯片 | |
WO2016090599A1 (zh) | 一种可扩展可配置的逻辑元件和fpga器件 | |
Sahoo et al. | Fault tolerant implementations of delay-based physically unclonable functions on FPGA | |
CN212135427U (zh) | 一种基于时延的可重配puf电路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |