CN106576040B - 设备固有信息的错误率控制方法 - Google Patents

设备固有信息的错误率控制方法 Download PDF

Info

Publication number
CN106576040B
CN106576040B CN201580045333.9A CN201580045333A CN106576040B CN 106576040 B CN106576040 B CN 106576040B CN 201580045333 A CN201580045333 A CN 201580045333A CN 106576040 B CN106576040 B CN 106576040B
Authority
CN
China
Prior art keywords
responses
input data
data
error rate
natural number
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
Application number
CN201580045333.9A
Other languages
English (en)
Other versions
CN106576040A (zh
Inventor
堀洋平
古原和邦
片下敏宏
松井俊浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
National Institute of Advanced Industrial Science and Technology AIST
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by National Institute of Advanced Industrial Science and Technology AIST filed Critical National Institute of Advanced Industrial Science and Technology AIST
Publication of CN106576040A publication Critical patent/CN106576040A/zh
Application granted granted Critical
Publication of CN106576040B publication Critical patent/CN106576040B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/10Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols with particular housing, physical features or manual controls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

提供能控制设备固有信息的错误率的方法和程序。提供的设备固有信息的错误率控制方法具有:步骤S1,将i个(i为任意的自然数)口令向PUF搭载芯片分别输入j次(j为任意的自然数),将j个响应直接(j’=j)或者加工为j’个(0<j’<j)而与各个输入数据建立对应地预先登录到数据库;步骤S2,向数据库输入i个口令;步骤S3,从数据库读出各自对应的j’个响应,每一输入数据连结j’个响应,将连结后的数据进一步反复连结k’个(0<k’≤k且k为任意的自然数,在上述i和上述j均为1时,k是2以上的自然数)而每一输入数据得到连结的(j’×k’)个响应,进而关于不同的输入数据也将它们连结而得到(i×j’×k’)个连结的响应,由此生成基准数据;步骤S4,将i个口令每一口令向PUF搭载芯片输入k次,将以得到的k个响应为k’=k直接或者加工为k’个(0<k’<k)而得到的k’个响应按照每一响应反复连结j’次,针对所有的k’将其进一步连结而得到(j’×k’)个连结响应,再针对不同的输入数据将所得到的连结响应连结而得到(i×j’×k’)个连结响应,由此生成合成输出数据;以及步骤S5,判断合成输出数据与基准数据是否一致(具体地,两者的汉明距离是否是阈值以下),基于步骤S5的判断结果判断合成输出数据的错误率是否是预设的范围内,在判断为错误率不在预设的范围内的情况下,变更i、j、j’、k、k’中的至少之一后重复步骤S1到步骤S5的步骤,直至错误率进入预设的范围内。

Description

设备固有信息的错误率控制方法
技术领域
本发明涉及控制设备固有信息的错误率的技术。
背景技术
以往考虑了各种利用物理不可克隆函数(Physically Unclonable Function:PUF)的设备认证技术,例如在以下的专利文献1中公开了使用针对多个物理令牌的口令响应的认证方式。
另外,在专利文献2中公开了一种通过一并存储PUF的老化信息来进行认证的方式。
现有技术文献
专利文献
专利文献1:特表2009-517910号公报
专利文献2:特愿2008-543060号公报
发明内容
发明要解决的技术问题
PUF作为生成不可克隆的设备固有信息(设备ID)的技术是有前途的,但在输出中包含大量由过程差异导致的噪声,因此在使用PUF的输出生成上述固有信息的情况下,会产生某种程度的错误率。其中,存在越减小错误率则所需电路的规模和数据量越大的问题。
另外,上述错误率一般根据作为对象的应用程序来设定,例如对于要求高安全性的建筑物的出入卡、军事设备的部件等不允许将假的误认为真的物品而言,即便固有信息生成步骤复杂且数据量大,也要求错误率是尽可能小的值。
另一方面,例如对于公寓的出入卡那样的物品而言,错误率只要设定为某种程度小的值就足矣。
在此,如上所述与对应每一应用程序设定的目标错误率一致地制造PUF由于制造成本增大,所以还存在不现实的问题。
本发明是为了解决上述那样的问题而完成的,目的在于提供能够控制设备固有信息的错误率的方法和程序。
用于解决技术问题的方案
为了解决上述技术问题,本发明提供的设备固有信息的错误率控制方法具有:第一步骤,将i个(i为任意的自然数)输入数据分别向物理不可克隆电路输入j次(j为任意的自然数),将j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而与各个输入数据和上述物理不可克隆电路的ID建立对应地预先存储到存储单元;第二步骤,向存储单元输入上述物理不可克隆电路的ID和i个输入数据,从存储单元读出并连结各个输入数据所对应的j’个响应,将连结后的数据进一步反复连结k’个(0<k’≤k且k为任意的自然数),从而每一输入数据得到(j’×k’)个响应(需要注意的是,上述中的“轴”是指构成上述响应的各成分,例如在具有三成分的响应中为x轴、y轴和z轴这三轴(下同)),然后,针对i个输入数据将它们进一步连结而得到(i×j’×k’)个响应,从而生成基准数据;第三步骤,将i个输入数据分别向上述物理不可克隆电路输入k次,将对应i个各自得到的k个响应作为k’=k直接或者加工为k’个(具体地说,例如将k个分割为k’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而每一输入数据生成k’个响应,将该各响应反复连结j’个,再将j’个响应连结k’个,从而得到(j’×k’)个响应,进而再将其连结i个而得到(i×j’×k’)个响应,由此生成合成输出数据;第四步骤,判断合成输出数据是否与基准数据位于同一范围;以及第五步骤,根据第四步骤中的判断的结果,判断合成输出数据的错误率是否在预先设定的范围内,在第五步骤中,在判断为错误率不在预先设定的范围内的情况下,变更i、j、j’、k、k’中至少之一后重复第一到第五步骤,直至错误率进入预先设定的范围内。
另外,为了解决上述技术问题,本发明提供的设备固有信息的错误率控制方法具有:第一步骤,对向物理不可克隆电路输入的输入数据进行初始设定;第二步骤,将i个(i为任意的自然数)初始设定的输入数据分别向上述物理不可克隆电路输入j次(j为任意的自然数),将j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)地每一输入数据得到j’个响应,将该j’个响应与上述物理不可克隆电路的ID和对应其的各个输入数据建立对应地预先存储到存储单元;第三步骤,向存储单元输入上述物理不可克隆电路的ID和i个输入数据,从存储单元读出各自对应的j’个响应,按每一输入数据连结j’个响应,对连结后的数据进一步反复连结k’个(在此,0<k’≤k且k为任意的自然数),每一输入数据得到(j’×k’)个响应,进而关于不同的i个输入数据将所得到的(j’×k’)个响应连结而得到(i×j’×k’)个响应,由此生成由(i×j’×k’)个响应组成的基准数据;第四步骤,将i个输入数据分别向上述物理不可克隆电路输入k次,按每一输入数据将得到的k个响应为k’=k直接或者加工为k’个(具体地说,例如将k个分割为k’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而每一输入数据生成k’个响应,将该k’个各响应反复连结j’个而得到j’个响应,将该j’个响应进一步连结k’个而得到(j’×k’)个响应,进而将其连结i个而得到(i×j’×k’)个响应,由此生成该(i×j’×k’)个响应作为合成输出数据;第五步骤,判断合成输出数据是否与基准数据位于同一范围;以及第六步骤,根据第五步骤中的判断结果,判断合成输出数据的错误率是否在预先设定的范围内,在第六步骤中,在判断为错误率不在预先设定的范围内的情况下,变更输入数据后重复第一到第六步骤,直至错误率进入预先设定的范围内。
另外,为了解决上述技术问题,本发明提供的设备固有信息的错误率控制程序用于使计算机执行:第一步骤,将i个(i为任意的自然数)输入数据分别向物理不可克隆电路输入j次(j为任意的自然数),将j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)地每一输入数据得到j’个响应,将该j’个响应与各个输入数据和上述物理不可克隆电路的ID建立对应地预先存储到存储单元;第二步骤,向存储单元输入上述物理不可克隆电路的ID和i个输入数据,从存储单元读出各自对应的j’个响应,针对各输入数据连结j’个响应,对连结后的数据进一步反复连结k’个(在此,0<k’≤k且k为任意的自然数),针对各输入数据得到(j’×k’)个响应,关于i个不同的输入数据将所得到的(j’×k’)个响应连结而得到(i×j’×k’)个响应,由此生成由(i×j’×k’)个响应组成的合成输出数据;第三步骤,判断合成输出数据是否与基准数据位于同一范围;以及第四步骤,根据第三步骤中的判断的结果,判断合成输出数据的错误率是否在预先设定的范围内,在第四步骤中,在判断为错误率不在预先设定的范围内的情况下,使i、j、j’、k、k’中至少之一变更后重复第一到第四步骤,直至错误率进入预先设定的范围内。
另外,为了解决上述技术问题,本发明提供的设备固有信息的错误率控制程序用于使计算机执行:第一步骤,对向物理不可克隆电路输入的输入数据进行初始设定;第二步骤,将i个(i为任意的自然数)初始设定的输入数据分别向上述物理不可克隆电路输入j次(j为任意的自然数),将j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)地每一输入数据得到j’个响应,将该j’个响应与上述物理不可克隆电路的ID和各个输入数据建立对应地预先存储到存储单元;第三步骤,向存储单元输入上述物理不可克隆电路的ID和i个输入数据,从存储单元读出各自对应的j’个响应,按每一输入数据连结j’个响应,对连结后的数据进一步反复连结k’个(在此,0<k’≤k且k为任意的自然数),对应各输入数据得到(j’×k’)个响应,针对不同的输入数据将所得到的(j’×k’)个响应连结而得到(i×j’×k’)个响应,由此生成由(i×j’×k’)个响应组成的合成输出数据;第四步骤,判断合成输出数据是否与基准数据位于同一范围;以及第五步骤,根据第四步骤中的判断结果,判断合成输出数据的错误率是否在预先设定的范围内,在第五步骤中,在判断为错误率不在预先设定的范围内的情况下,变更输入数据后重复第一到第五步骤,直至错误率进入预先设定的范围内。
发明效果
根据本发明,能够控制设备固有信息的错误率。
附图说明
图1是表示本发明实施方式所涉及的[1、1、1、k、k’]模式下的PUF搭载芯片的真伪判断方法的流程图。
图2是用于说明图1所示的真伪判断方法的图。
图3是表示本发明实施方式所涉及的[1、j、j’、1、1]模式下的PUF搭载芯片的真伪判断方法的流程图。
图4是用于说明图3所示的真伪判断方法的图。
图5是表示本发明实施方式所涉及的[1、j、j’、k、k’]模式下的PUF搭载芯片的真伪判断方法的流程图。
图6是表示本发明实施方式所涉及的[i、j、j’、k、k’]模式下的PUF搭载芯片的真伪判断方法的流程图。
图7是表示本发明实施方式所涉及的使用模式的确定方法的流程图。
图8是表示本发明实施方式所涉及的口令(输入数据)的确定方法的流程图。
具体实施方式
以下,参照附图详细说明本发明的实施方式。此外,图中同一附图标记表示同一或者相当的部分。
作为本发明所涉及的设备固有信息的错误率控制方法的具体例子,针对第一到第四实施方式所涉及的PUF搭载芯片的真伪判断方法进行详细说明。
[第一实施方式]
使用图1和图2详细说明第一实施方式所涉及的[1、1、1、k、k’]模式下的PUF搭载芯片的真伪判断方法。
在此,PUF搭载芯片是指组装有PUF的半导体集成电路,在以下内容中也是同样。
另外,[1、1、1、k、k’]模式是在PUF搭载芯片的真伪判断中使用的模式(以下也称为“使用模式”。)之一,其是指如图2所示对PUF搭载芯片IC输入一个输入数据(口令),将得到的一个输出数据(响应)登录到数据库DB,并在判断真伪时使用来自上述PUF搭载芯片IC的k个(在本实施方式中k设为2以上的自然数。)响应的模式。
需要注意的是,上述数据库DB也可以是存储从PUF搭载芯片IC输出的响应的其它装置(方式)、例如硬件、存储电路等,在以下的实施方式中也是同样。
图1是表示本发明实施方式所涉及的[1、1、1、k、k’]模式下的PUF搭载芯片的真伪判断方法的流程图。
首先在步骤S1中,如图2所示,向上述PUF搭载芯片IC输入一个口令,并使针对其的一个响应与输入的口令和上述PUF搭载芯片IC的ID建立对应地登录到数据库DB。
作为下面判断时的步骤,首先在步骤S2中,将在步骤S1中登录的ID和一口令输入到数据库DB。需要注意的是,也可以是,将在步骤S1中登录的ID一度输入到数据库DB,从而从该数据库DB等取得预先与该ID关联登录的口令的列表,从该列表选择一口令而将其输入到DB。
并且,在步骤S3中,从数据库DB中读出在步骤S2中输入的一口令所对应的一响应,将其反复连结k’个,从而生成第一基准数据。
接着,在步骤S4中,向PUF搭载芯片IC输入k次上述的一口令,以得到的k个响应为k'=k直接或者加工为k'个(具体地说,例如将k个分割为k’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而将它们连结为一个,从而生成第一合成输出数据。
需要注意的是,上述中的“轴”是指构成上述响应的各成分,例如在具有三成分的响应中为x轴、y轴和z轴这三轴(下同)。
然后,在步骤S5中,判断上述第一合成输出数据是否与第一基准数据类似(具体地说,两者的汉明距离是否是阈值以下),在判断为类似的情况下,进入步骤S6,判断为该PUF搭载芯片IC是真的,而在判断为不类似的情况下,进入步骤S7,判断为该PUF搭载芯片IC是假的。
根据以上那样的第一实施方式所涉及的真伪判断方法,通过改变上述k、k’的值,能够控制上述步骤S5的判断的错误率。
另外,在本方法中,向数据库DB登录一响应的数据就足矣,因此能实现数据库DB的小规模化。
另外,利用上述那样的方法生成的第一合成输出数据、第一基准数据还能作为加密密钥、用于生成其的源数据使用。
[第二实施方式]
使用图3和图4详细说明第二实施方式所涉及的[1、j、j’、1、1]模式下的PUF搭载芯片的真伪判断方法。
在此,如图4所示,[1、j、j’、1、1]模式是指,向PUF搭载芯片IC输入j次(在本实施方式中j设为2以上的自然数。)一个相同的输入数据(口令),将得到的j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而登录到数据库DB,并在判断真伪时使用来自上述PUF搭载芯片IC的一响应的使用模式。
图3是表示本发明实施方式所涉及的[1、j、j’、1、1]模式下的PUF搭载芯片的真伪判断方法的流程图。
首先在步骤S1中,如图4所示,向上述PUF搭载芯片IC输入j次一个相同的口令,将对应其的j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而与输入的口令和上述PUF搭载芯片IC的ID建立对应地登录到数据库DB。
作为下面判断时的步骤,首先在步骤S2中,将在步骤S1中登录的上述PUF搭载芯片IC的ID和一口令输入到数据库DB。需要注意的是,也可以是,将上述PUF搭载芯片IC的ID一度输入到DB,从该数据库DB等取得预先与该ID关联登录的口令的列表,将从该列表中选择的一口令输入到DB。
然后,在步骤S3中,从数据库DB读出并连结在步骤S2中输入的一口令所对应的j’个响应,生成第二基准数据。
接着,在步骤S4中,向PUF搭载芯片IC输入上述一口令,将得到的一响应反复连结j’个,从而生成第二合成输出数据。
然后,在步骤S5中,判断上述第二合成输出数据是否与第二基准数据类似(具体地说,两者的汉明距离是否是阈值以下),在判断为类似的情况下,进入步骤S6,判断为该PUF搭载芯片IC是真的,而在判断为不类似的情况下,进入步骤S7,判断该PUF搭载芯片IC为假的。
根据以上那样的第二实施方式所涉及的真伪判断方法,通过改变上述j、j’的值,能控制上述步骤S5的判断的错误率。
另外,在判断时仅通过从PUF搭载芯片IC得到一响应即可进行真伪判断,因此能缩短判断所需的时间。
另外,利用上述那样的方法生成的第二合成输出数据、第二基准数据还能作为加密密钥或其源数据使用。
需要注意的是,在第二实施方式所涉及的真伪判断方法中,需要向数据库DB登录j’个响应,但如果将这样的j’个响应压缩为表示相互不同的部分的信息而存储到上述数据库DB,则能减小所需的数据库DB的规模。
[第三实施方式]
使用图5详细说明第三实施方式所涉及的[1、j、j’、k、k’]模式下的PUF搭载芯片的真伪判断方法。
在此,[1、j、j’、k、k’]模式是指,向PUF搭载芯片IC输入j次(在本实施方式中j设为2以上的自然数。)一个相同的输入数据(口令),将得到的j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而登录到数据库DB,并在判断真伪时使用来自上述PUF搭载芯片IC的k响应(在本实施方式中k设为2以上的自然数。)的使用模式。
图5是表示本发明实施方式所涉及的[1、j、j’、k、k’]模式下的PUF搭载芯片的真伪判断方法的流程图。
首先在步骤S1中,向上述PUF搭载芯片IC输入j次一个相同的口令,将对应其的j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而与输入的口令和上述PUF搭载芯片IC的ID建立对应地登录到数据库DB。
作为下面判断时的步骤,首先在步骤S2中,将上述PUF搭载芯片IC的ID和在步骤S1中登录的一口令输入到数据库DB。需要注意的是,也可以是,将上述PUF搭载芯片IC的ID一度输入到DB,从上述数据库DB等取得预先与该ID关联登录的口令的列表,从该列表将一口令输入到DB。
然后,在步骤S3中,从数据库DB中读出并连结在步骤S2中输入的一口令所对应的j’个响应,将连结后的数据进一步反复连结k’个,从而生成由(j’×k’)个响应组成的第三基准数据。
接着,在步骤S4中,向PUF搭载芯片IC输入k次上述的一口令,将以得到的k响应为k'=k直接或者加工为k'个(具体地说,例如将k个分割为k’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而得到的k’个各响应反复连结j’个,进而将它们连结k’个,从而生成由(k’×j’)个响应组成的第三合成输出数据。
并且,在步骤S5中,判断上述第三合成输出数据是否与第三基准数据类似(具体地说,两者的汉明距离是否是阈值以下),在判断为类似的情况下,进入步骤S6,判断为该PUF搭载芯片IC是真的,而在判断为不类似的情况下,进入步骤S7,判断为该PUF搭载芯片IC是假的。
根据以上那样的第三实施方式所涉及的真伪判断方法,通过改变上述j、j’、k、k’的值,能够控制上述步骤S5的判断的错误率。
在本方法中,通过将上述j、j’、k、k’作为四个参数独立地设定而能变更上述错误率,因此能以更高的精度控制上述错误率。
另外,利用上述那样的方法生成的第三合成输出数据、第三基准数据还能作为加密密钥、用于生成其的源数据使用。
需要注意的是,在第三实施方式所涉及的真伪判断方法中,需要向数据库DB登录j’个响应,但若将这样的j’个响应压缩为表示相互不同的部分的信息而存储到上述数据库DB,则能减小所需的数据库DB的规模。
[第四实施方式]
使用图6详细说明第四实施方式所涉及的[i、j、j’、k、k’]模式下的PUF搭载芯片的真伪判断方法。
在此,[i、j、j’、k、k’]模式是指,将i个(在本实施方式中i设为2以上的自然数。)不同的输入数据(口令)分别向PUF搭载芯片IC输入j次(在本实施方式中j设为2以上的自然数。),将对应每一口令得到的j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而登录到数据库DB,并在判断真伪时使用来自上述PUF搭载芯片IC的k个响应(在本实施方式中k设为2以上的自然数。)的使用模式。
图6是表示本发明实施方式所涉及的[i、j、j’、k、k’]模式下的PUF搭载芯片的真伪判断方法的流程图。
首先在步骤S1中,将i个不同的口令分别向上述PUF搭载芯片IC输入j次,将对应各输入数据得到的j个响应直接(j’=j)或者加工为j’个(0<j’<j)(具体地说,例如将j个分割为j’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而得到的j’个响应与输入的i个口令和该PUF搭载芯片IC的ID建立对应地登录到数据库DB。
作为下面判断时的步骤,首先在步骤S2中,将在步骤S1中登录的ID和i个口令输入到数据库DB。需要注意的是,也可以是,将ID一度输入到数据库DB,从该数据库DB等取得预先与该ID关联登录的口令的列表,从该列表选择i个口令而输入到DB。
然后,在步骤S3中,从数据库DB读出并连结在步骤S2中输入的i个口令所分别对应的j’个响应,将连结后的数据进一步反复连结k’次,针对i个不同的口令将所得到的关于各口令的(j’×k’)个响应连结而得到(i×j’×k’)个响应,由此生成由(i×j’×k’)个响应组成的第四基准数据。
接着,在步骤S4中,针对各口令将上述i个口令分别向PUF搭载芯片IC输入k次,将以得到的k个响应为k'=k直接或者加工为k'个(0<k’<k)(具体地说,例如将k个分割为k’个局部集合,在各局部集合内将响应的各轴的值的最频繁值(最频繁值有多个时为其中任意值)作为代表该局部集合的响应的该轴的值)而得到的k’个各响应反复连结j’次,进而将其连结k’个,每一口令得到(j’×k’)个响应。进而,对于不同的响应将它们连结而生成由(i×j’×k’)个响应组成的第四合成输出数据。
然后,在步骤S5中,判断上述第四合成输出数据是否与第四基准数据类似(具体地说,两者的汉明距离是否是阈值以下),在判断为类似的情况下,进入步骤S6,判断为该PUF搭载芯片IC是真的,而在判断为不类似的情况下,进入步骤S7,判断为该PUF搭载芯片IC是假的。
根据以上那样的第四实施方式所涉及的真伪判断方法,通过改变上述i、j、j’、k、k’的值,能控制上述步骤S5的判断的错误率。
并且,能将上述i、j、j’、k、k’设定为五个独立的参数,因此能以更高的精度控制上述错误率。
另外,与上述同样,利用本方法生成的第四合成输出数据还能作为加密密钥、用于生成其的源数据使用。
需要注意的是,在上述第四实施方式所涉及的真伪判断方法中,需要向数据库DB登录(i×j)个响应,但若将这样的(i×j)个响应压缩为表示相互不同的部分的信息而存储到上述数据库DB,则能减小所需的数据库DB的规模。
上面依次说明了[1、1、1、k、k’]模式、[1、j、j’、1、1]模式、[1、j、j’、k、k’]模式和[i、j、j’、k、k’]模式这四种使用模式,下面参照图7说明使用模式的确定方法。
首先在步骤S1中,暂时设定初始模式[i0、j0、j’0、k0、k’0]作为使用模式。
接着,在步骤S2中,以设定的使用模式测定错误率。
接着,在步骤S3中,判断在步骤S2中测得的错误率是否是希望的范围内。并且,在判断为是希望的范围内的情况下,进入步骤S4,确定使用模式,而在判断为不是希望的范围内的情况下,在步骤S5中设定新的使用模式并返回步骤S2。
利用这样的方法能确定错误率在希望的范围内的使用模式。
如上所述,通过任意地设定i、j、j’、k和k’而能控制错误率,但通过变更口令也能控制错误率。
在此,参照图8说明口令的确定方法。
首先在步骤S1中,暂时设定初始输入数据C0作为一口令。
接着,在步骤S2中,使用设定的输入数据并以设定的模式测定错误率。
接着,在步骤S3中,判断在步骤S2中测定的错误率是否是希望的范围内。并且,在判断为是希望的范围内的情况下,进入步骤S4,确定口令(输入数据),而在判断为不是希望的范围内的情况下,在步骤S5中设定新的输入数据并返回步骤S2。
利用这样的方法能确定错误率在希望的范围内的口令。
以上这样的本发明实施方式所涉及的设备固有信息的错误率控制方法可适用于以下这样的应用领域。
首先,对于PUF搭载芯片IC的真伪判断、进而对于基于该判断的防伪造是有用的。根据上述实施方式所涉及的设备固有信息的错误率控制方法,在上述芯片的制造后也能控制认证错误率,因此还能根据该芯片的老化变更认证错误率。另外,能在使用同一规格的PUF的同时,根据该芯片的用途等动态地改变错误率。
并且,通过将上述芯片RFID(radio frequency identifier:射频标识符)化后对其进行粘贴,从而还能实现医药品、食品、奢侈品牌等的真伪判断。
另外,通过在两者间共享无误的加密密钥等保密信息,从而可实现通信路径上的信息的加密、安全的认证系统。由此,还能实现例如使用IC卡的安全的电子结算、出入管理、多媒体内容的保护等。
另外,上述的设备固有信息的错误率控制方法还可以通过在计算机程序中描述示出该方法的图1、3、5~8所示的算法并使计算机执行描述的该程序(设备固有信息的错误率控制程序)来实现。
如上所述,根据本发明实施方式所涉及的设备固有信息的错误率控制方法和设备固有信息的错误率控制程序,能在上述芯片的制造后控制上述错误率,因此无需分用途地单独设计、制造具有目标错误率的上述芯片。
由此,能够实现在抑制上述芯片的制造成本的同时具有希望的错误率的本人认证系统或真伪判断系统、或者加密密钥的生成。
附图标记说明
IC PUF搭载芯片
DB 数据库

Claims (3)

1.一种设备固有信息的错误率控制方法,具有:
第一步骤,将i个输入数据分别向物理不可克隆电路输入j次,并将j个响应加工为j’个响应,将所述j’个响应与各个所述输入数据建立对应地预先存储于存储单元,i为任意的自然数,j为任意的自然数,j’为任意的自然数且0<j’≤j;
第二步骤,向所述存储单元输入所述i个输入数据,从所述存储单元读出各自对应的所述j’个响应并连接对应各输入数据而得到的j’个响应,对连接后的数据进一步反复连接k’个,进而关于不同的i个输入数据将所得到的数据连接,从而生成基准数据,k’为任意的自然数且0<k’≤k,k为任意的自然数,此外,在所述i和所述j均为1时,k为2以上;
第三步骤,将所述i个输入数据每一输入数据向所述物理不可克隆电路输入k次,将把得到的k个响应加工为k’个而得到的k’个各响应反复连接j’次,进而关于所有的k’将该j’个响应连接而每一输入数据得到j’×k’个响应,再针对不同的输入数据将每一输入数据j’×k’个的响应连接而生成由i×j’×k’个响应组成的合成输出数据;
第四步骤,进行所述合成输出数据是否与所述基准数据在同一范围的判断;以及
第五步骤,根据所述第四步骤中的所述判断的结果,判断所述合成输出数据的错误率是否在预设的范围内,
在所述第五步骤中,在判断为所述错误率不在所述预设的范围内的情况下,变更所述i、j、j’、k、k’中的至少之一后重复所述第一步骤至所述第五步骤,直至所述错误率进入所述预设的范围内,
在所述第一步骤中,当所述j’为2以上的自然数时,将j’个响应压缩为表示相互不同的部分的信息而存储到所述存储单元。
2.根据权利要求1所述的设备固有信息的错误率控制方法,其中,
所述i、j、k中仅任一个或两个是常数1。
3.一种设备固有信息的错误率控制方法,具有:
第一步骤,对向物理不可克隆电路输入的输入数据进行初始设定;
第二步骤,将i个初始设定的所述输入数据分别向所述物理不可克隆电路输入j次,并将j个响应加工为j’个响应,将所述j’个响应与各个所述输入数据建立对应地预先存储于存储单元,i为任意的自然数,j为任意的自然数,j’为任意的自然数且0<j’≤j;
第三步骤,向所述存储单元输入i个所述输入数据,从所述存储单元读出各自对应的所述j’个响应,按每一输入数据连接j’个响应,对连接后的数据进一步反复连接k’个,每一输入数据得到连接的j’×k’个的响应,进而关于不同的输入数据也将所得到的所述响应连接而得到i×j’×k’个连接的响应,由此生成基准数据,k’为任意的自然数且0<k’≤k,k为任意的自然数,此外,在所述i和所述j均为1时,k为2以上;
第四步骤,将所述i个输入数据每一输入数据向所述物理不可克隆电路输入k次,将把得到的k个响应加工为k’个而得到的k’个响应每一响应反复连接j’次,进而对于所有的k’连接该j’个响应而得到j’×k’个连接响应,再针对不同的输入数据将该j’×k’个连接响应连接而得到i×j’×k’个连接响应,从而生成合成输出数据;
第五步骤,进行所述合成输出数据是否与所述基准数据在同一范围的判断;以及
第六步骤,根据所述第五步骤中的所述判断的结果,判断所述合成输出数据的错误率是否在预设的范围内,
在所述第六步骤中,在判断为所述错误率不在所述预设的范围内的情况下,变更所述输入数据后重复所述第一步骤至所述第六步骤,直至所述错误率进入所述预设的范围内,
在所述第二步骤中,当所述j’为2以上的自然数时,将j’个响应压缩为表示相互不同的部分的信息而存储到所述存储单元。
CN201580045333.9A 2014-08-29 2015-08-20 设备固有信息的错误率控制方法 Active CN106576040B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014175824 2014-08-29
JP2014-175824 2014-08-29
PCT/JP2015/073433 WO2016031682A1 (ja) 2014-08-29 2015-08-20 デバイス固有情報の誤り率制御方法とデバイス固有情報の誤り率制御プログラム

Publications (2)

Publication Number Publication Date
CN106576040A CN106576040A (zh) 2017-04-19
CN106576040B true CN106576040B (zh) 2020-05-12

Family

ID=55399575

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580045333.9A Active CN106576040B (zh) 2014-08-29 2015-08-20 设备固有信息的错误率控制方法

Country Status (6)

Country Link
US (1) US10402248B2 (zh)
EP (1) EP3188403B1 (zh)
JP (1) JP6445570B2 (zh)
KR (1) KR101956487B1 (zh)
CN (1) CN106576040B (zh)
WO (1) WO2016031682A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017021254A1 (en) * 2015-08-06 2017-02-09 Intrinsic Id B.V Cryptographic device having physical unclonable function
JP6585018B2 (ja) * 2016-09-12 2019-10-02 株式会社東芝 認証サーバ、認証システムおよび認証方法
JP2019121884A (ja) 2017-12-28 2019-07-22 三菱重工業株式会社 集積回路、制御装置、情報配信方法及び情報配信システム
JP7036709B2 (ja) 2018-12-26 2022-03-15 日鉄テックスエンジ株式会社 交換システム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101421971A (zh) * 2006-04-11 2009-04-29 皇家飞利浦电子股份有限公司 利用物理不可复制函数对令牌的询问响应认证
EP2326043A1 (en) * 2009-11-18 2011-05-25 Irdeto Access B.V. Preventing cloning of receivers of encrypted messages
CN103544410A (zh) * 2013-09-30 2014-01-29 华中科技大学 一种嵌入式微处理器非可克隆函数密钥认证系统和方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080025697A (ko) 2005-05-26 2008-03-21 어드밴스드 테크놀러지 머티리얼즈, 인코포레이티드 구리를 부동태화하는 cmp후 세정 조성물 및 이용 방법
US20090217045A1 (en) 2005-11-29 2009-08-27 Koninklijke Philps Electronics, N.V. Physical secret sharing and proofs of vicinity using pufs
WO2009024913A2 (en) * 2007-08-22 2009-02-26 Intrinsic Id Bv Identification of devices using physically unclonable functions
US8468186B2 (en) 2009-08-05 2013-06-18 Verayo, Inc. Combination of values from a pseudo-random source
US8694778B2 (en) * 2010-11-19 2014-04-08 Nxp B.V. Enrollment of physically unclonable functions
US9015500B2 (en) * 2013-01-16 2015-04-21 Qualcomm Incorporated Method and apparatus for using dynamic voltage and frequency scaling with circuit-delay based integrated circuit identification
US10038446B2 (en) * 2013-08-21 2018-07-31 Carnegie Mellon University Reliability of physical unclonable function circuits
US9992031B2 (en) * 2013-09-27 2018-06-05 Intel Corporation Dark bits to reduce physically unclonable function error rates
KR101593166B1 (ko) * 2014-06-02 2016-02-15 한국전자통신연구원 물리적 복제 방지 함수의 오류를 방지하는 장치 및 그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101421971A (zh) * 2006-04-11 2009-04-29 皇家飞利浦电子股份有限公司 利用物理不可复制函数对令牌的询问响应认证
EP2326043A1 (en) * 2009-11-18 2011-05-25 Irdeto Access B.V. Preventing cloning of receivers of encrypted messages
CN103544410A (zh) * 2013-09-30 2014-01-29 华中科技大学 一种嵌入式微处理器非可克隆函数密钥认证系统和方法

Also Published As

Publication number Publication date
JPWO2016031682A1 (ja) 2017-05-25
JP6445570B2 (ja) 2018-12-26
KR101956487B1 (ko) 2019-03-08
KR20170040294A (ko) 2017-04-12
EP3188403B1 (en) 2021-10-06
US20170255503A1 (en) 2017-09-07
CN106576040A (zh) 2017-04-19
US10402248B2 (en) 2019-09-03
EP3188403A4 (en) 2018-04-04
EP3188403A1 (en) 2017-07-05
WO2016031682A1 (ja) 2016-03-03

Similar Documents

Publication Publication Date Title
US8782396B2 (en) Authentication with physical unclonable functions
JP5333669B2 (ja) 個体別情報生成装置及び個体別情報生成方法
CA2971212C (en) Reliability enhancement methods for physically unclonable function bitstring generation
CN106576040B (zh) 设备固有信息的错误率控制方法
JP5831202B2 (ja) 個体別情報生成装置及び個体別情報生成方法
CN108833103A (zh) 射频识别标签和读取设备之间进行安全通信的方法和系统
CN103259657A (zh) 动态模拟验证
WO2013088939A1 (ja) 識別情報生成装置及び識別情報生成方法
CN102474416A (zh) 具有增量密钥建立能力的认证令牌
CN106385316B (zh) Puf模糊提取电路和方法
JP5831203B2 (ja) 個体別情報生成装置、暗号化装置、認証システム、及び個体別情報生成方法
CN113158200A (zh) 使用挑战-响应协议执行认证的集成电路和使用其的方法
US20160110165A1 (en) Quality detecting method, random number generator, and electronic device
CN104598805A (zh) 密码验证的方法、密码验证系统、控制器
CN109756323A (zh) 轻量级安全认证方法和系统、发送端和接收端
CN107646130B (zh) 用于生成电子电路固有的值的方法、生成该值的电子电路以及用于使用这样的值的方法
CN114365134A (zh) 使用不可克隆函数的安全身份证
US20090285388A1 (en) Cryptographic Method with Elliptical Curves
CN107634833A (zh) 一种rfid芯片的身份认证方法
JP2021528925A (ja) ヘルパーデータのみを使用する相関型ロバスト認証技術
US11528152B2 (en) Watermarking for electronic device tracking or verification
US20200099541A1 (en) Methods of verifying that a first device and a second device are physically interconnected
Falk et al. New directions in applying physical unclonable functions
CN110633777A (zh) 一种物理不可复制功能标签产生方法及电路
Bu et al. Weighted group decision making using multi-identity physical unclonable functions

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