CN110445613A - 电子电路的认证 - Google Patents
电子电路的认证 Download PDFInfo
- Publication number
- CN110445613A CN110445613A CN201910362312.XA CN201910362312A CN110445613A CN 110445613 A CN110445613 A CN 110445613A CN 201910362312 A CN201910362312 A CN 201910362312A CN 110445613 A CN110445613 A CN 110445613A
- Authority
- CN
- China
- Prior art keywords
- value
- circuit
- common
- common value
- seed
- 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.)
- Pending
Links
Classifications
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- 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/002—Countermeasures against attacks on cryptographic mechanisms
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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/3236—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 cryptographic hash functions
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2129—Authenticate client device independently of the user
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
Abstract
在通过第二电路对第一电路进行认证时,第二电路选择公共值集合中的一个公共值,并且向第一电路发送针对与该公共值集合中所选择的一个公共值相对应的秘密值的请求。第一电路使用来自以破坏性方式存储的种子集合的种子来从公共值集合中所选择的一个公共值导出秘密值,使得每次使用种子都会破坏这个种子。种子集合的数目小于公共值集合的数目。第二电路使用单向函数来确定秘密值是否与该公共值集合中所选择的一个公共值匹配。基于匹配的确定来生成肯定认证。
Description
优先权声明
本申请要求于2018年5月3日提交的法国专利申请号1853818的优先权,其内容在法律所允许的最大范围内在此通过引用整体并入。
技术领域
本公开总体涉及电子电路和系统,并且更具体地涉及用于通过另一电子电路对电子电路进行认证的机制。本公开甚至更具体地适用于通过分别包含在产品中和设备中的电路来验证与设备相关联的产品的真实性。
背景技术
非真实产品(特别是设备的耗材或附件)的存在对于设备制造商以及对于真实产品(耗材或附件)的授权供应商而言是个问题,特别是在由于功能问题而退回的情况下。能够区分真实产品和非真实产品是很重要的。
认证过程具有验证与设备配对的产品是否有效可靠或授权的功能。为此,设备和相关产品配备有电子电路,当安装新产品时、在设备开机时、周期性地、当产品需要更换时等,该电子电路执行真实性验证协议。
更一般地,在许多应用中,在两个电子电路(例如,两个微控制器、两个计算机、或者直接或经由有线或无线网络以有线或无线方式通信的两个设备)之间的数据交换期间,期望确知彼此通信的电路的真实性。
发明内容
实施例克服了两个电子电路之间的认证过程的全部或部分缺点。
实施例提供了与设备和产品的各种性质兼容的认证过程。
实施例提供了特别适用于在制造时标识验证器电路和待验证电路的应用的解决方案。
因此,实施例提供了通过第二电子电路对第一电子电路进行认证的方法,其中第一电路基于从第二电路接收的第二值以及基于在第一破坏性读出非易失性存储器中包含的第三值来生成第一值。
根据实施例,第二电路使用推导函数来生成第一值。
根据实施例,第一电路将第一值传达到第二电路。
根据实施例,第一电路以非易失性方式存储第一值。
根据实施例,第二电路将单向函数应用于第一值。
根据实施例,在成功认证的情况下,单向函数供应第二值。
根据实施例,第二电路从预定义集合中选择第二值。
根据实施例,每个第三值使得能够以单向方式生成与该集合包含的第二值一样多的第一值,第一值和第二值通过结合函数链接。
根据实施例,第一电路在第一存储器中包含多个第三值,多个第三值的数目小于组件中包含的值的数目。
根据实施例,第一电路在第二存储器中包含第二值集合。
根据实施例,第一电路将该集合传达给第二电路,第二电路从该集合中选择第二值。
实施例提供了认证电路,其具有第一破坏性读出非易失性存储器、旨在供应第一值的至少一个输出、以及旨在从第二电路接收第二值的至少一个输入。第一值是第二值和包含在第一破坏性读出非易失性存储器中的第三值的函数。
根据实施例,该电路被配置为实现所描述的认证方法。
实施例提供了通过第二电路对第一电路进行认证的系统,其中第一电路包括破坏性读出非易失性存储器。
实施例提供了通过设备对产品进行认证的系统,其中产品包括第一电路,设备包括的第二电路,诸如所描述的。
附图说明
下面结合附图在特定实施例的非限制性描述中对前述和其他特征和优点进行详细讨论,其中
图1以框的形式示意性地示出了所述实施例所适用的类型的设备-产品系统的示例;
图2以框的形式示意性地示出了所述实施例所适用的类型的电子电路的实施例;
图3示意性地图示了验证器电路和候选电路的相应内容;以及
图4示意性地示出了通过验证器电路对候选电路进行认证的方法的实施例。
具体实施方式
在不同的附图中,相同的元件用相同的附图标记表示。特别地,不同实施例共有的结构元件和/或功能元件可以用相同的附图标记表示,并且可以具有相同的结构特性、尺寸特性以及材料特性。
为了清楚起见,仅示出了将对将要描述的实施例的理解有用的那些步骤和元件,并且对其进行详述。特别地,没有对在电子电路之间交换加密数据或非加密数据的可能机制进行详细描述,所描述的实施例与本领域技术人员已知的通常机制兼容。
在整个本公开中,术语“连接”用于表示电路元件之间的直接电连接,而术语“耦合”用于表示电路元件之间的电连接,该电连接可以是直接的,或者可以经由一个或多个中间元件。除非另有说明,否则当使用术语“耦合”时,可以通过直接连接来实现连接。
术语“近似”、“约”和“大约”在本文中用于表示所讨论的值的正负10%,优选地,正负5%的公差。
以下将参考设备-产品系统涉及移动电话(设备)及其电池(产品)的应用示例。然而,所描述的所有内容都适用于出现类似问题的任何设备-产品系统,并且更一般地,适用于通过关于所描述的功能的另一电子电路对电子电路进行的任何认证。进一步地,为了简化,假设认证由设备来执行,该设备认证其包含的一个或多个产品,但所描述的所有内容都转换为逆操作,即,转换为通过设备所关联的产品(web连接)对设备(例如,web访问外围设备)进行认证。
图1以框的形式示意性地示出了作为示例的所描述的实施例所适用的类型的设备-产品系统的示例。
假设设备是电话1并且产品是用于该电话的电池2。
为了验证电池的真实性,实现了通过电话1对一个或多个电池2或者甚至通过一个或多个电池对电话进行认证的机制。为了实现这一点,电话1和电池2分别配备有电子电路3和4,电子电路3和4能够交换数据以实现认证过程。通信可以是有线的或无线的,例如,通过近场通信(NFC)。
电子电路3和4可以具有其他功能,例如,测量电池的充电水平,并且通信因此还可以涉及除认证之外的过程。根据这些应用,可以在安装电池时、在电话的每次开机时、在每次连接到网络之前、周期性地等执行认证。
为了简化,以下将参考验证器电路和候选电路。然而,本说明书所针对的设备-产品系统包括多个设备和多个产品,因此包括多个相似的验证器电路和多个相似的候选电路。
图2以框的形式示意性地示出了所描述的实施例所适用的类型的电子电路3或4的实施例。该电路可以位于验证器电路侧上和候选电路(待验证电路)侧上。
电路3(或4)包括:一个或多个处理单元31(或41)(PU),例如,状态机、微处理器、可编程逻辑电路等;一个或多个易失性和/或非易失性存储区域32(或42)(MEM),用于存储数据和程序中的全部或部分数据和程序;一个或多个数据、地址和/或控制总线33(或43),在电路3(或4)内部的不同元件之间;与对应电路3(或4)外部进行有线或无线通信的一个或多个输入/输出接口34(或44)(I/O);以及根据本申请的各种其他电路,在图2中以框35(或45)(FCT)表示。
根据所示实施例,电路3(或4)还包括认证电路或功能37(或47)(AUT),其实现通过电路3或4中的另一电路对电路3或4中的一个电路进行认证的方法,例如,通过与电话相关联的电路对与电池相关联的电路进行认证的方法。
框37和47例如是独立执行认证程序的专用处理器、或者包含用于单元31或41的执行的程序和数据。
为了尝试欺骗真实性机制,可以遇到能够复制备选认证机制的两类候选电路。
第一类包括克隆电路,即,与真实电路完全相同的电路。这种电路通常通过复制真实电路的总体形貌(设计)来获得,使得电路以相同的方式操作。
因为更容易形成所以更加通用的第二类非真实电路包括通过用标准微处理器实现适应程序来模拟真实电路的操作。尽管这需要通过邻信道或逆向工程类型的加密攻击来发现认证机制的秘密,但是它仍然比克隆电路(其形貌)更简单且更易于达到。
大多数情况下,使用两种技术的混合,即,即使在形成克隆电路时,在制造结束时存储的某些数据(诸如认证密钥、代码列表等)会在真实电路中通过故障注入攻击而被盗用以将它们集成在克隆电路中。
提供一种认证机制,根据该认证机制,在制造结束时(例如,在定制阶段)将某些数据供应给验证器电路3,并且将其他数据供应给待验证电路4(候选电路)。优选地,这种数据是不同的,即,验证器电路3所拥有的数据不包含在待验证电路4中,反之亦然。
还在候选电路4的一侧上提供在读取时可擦除的非易失性存储器,即,其中在存储器中所包含的数据(在电路定制期间被存储在其中)仅可读取一次。这种功能可以在非易失性可重编程存储器中实现,即,读取读出数据之后的擦除步骤可以被包括在认证算法中。然而,优选在其控制器中使用具有该固有特性的特定存储器,以避免通过故障注入攻击来阻止读取之后的擦除。例如,在框47中包括这种“仅读取一次”或破坏性读出存储器(针对读取数据的破坏性)。
期望避免候选电路的复制。实际上,再次以应用于电话和电池为例,最重要的是避免克隆新一代电池,无论是通过复制电路还是通过攻击来模拟它包含的电路的操作。
因此,所描述的认证机制的特异性在于它没有尝试防止故障注入或邻信道攻击,也没有在攻击的情况下阻止候选电路,而是使这种攻击不能形成功能性克隆电路。
根据所描述的实施例,认证机制利用所谓的公共值的列表和所谓的秘密值的列表。两个列表具有相同的大小(包含优选彼此不同的相同数目的值)以将一个且仅一个秘密值与每个公共值相关联。“公共”意味着所有公共值都可能由两个电路(验证器电路和候选电路)获知并且由两个电路存储或计算。“秘密”意味着秘密值集合仅能够由候选电路计算。
进一步地,公共值和秘密值通过单向结合函数链接,也就是说,可以从秘密值中找到每个公共值,但是相反则不然(知道所有公共值也无法计算对应秘密值集合或任一秘密值子集)。这种单向函数例如是加密哈希函数,例如,SHA-2或SHA-3类型的加密哈希函数、或应用于常量(例如,零)并且具有作为密钥的秘密值以及作为结果的公共值的加密函数(例如,AES)。
最后,可以通过推导函数从一个或多个种子生成私密值集合,该推导函数也是单向函数。种子可以彼此不同或者所有种子可以相同(单个种子)。换句话说,可以使用相同种子和秘密值的索引(存在与秘密值一样多的索引或标识符)从推导函数计算出所有秘密值。进一步地,多个不同的种子可以各自生成或导出秘密值集合。可以使用从种子导出秘密值的各种常规函数(在多个种子的情况下,优选使用能够为不同输入值生成相同输出值的“满射”加密函数)。
图3示意性地图示了验证器电路和候选电路的相应内容。
电路3和4是图2中所图示的类型的电子电路。
电路4的特征在于,除了易失性存储器和非易失性存储器(用于存储临时日期以及诸如程序和不可移动数据的数据)之外,它还包括非易失性一次性读取或破坏性读出存储器,也就是说,其中数据的读取会擦除数据。
电路3和4可以包含各种程序和数据,但是这里仅考虑用于实现所描述的认证机制的信息和数据。
(每个)电路3(验证器)包含并且能够执行匹配私密值和公共值的单向函数f,也就是说,优选地,它既不包含n个公共值的集合{PubVal},也不包含n个秘密值的集合{SecVal};而且还执行使得能够从秘密值SecVal(i)恢复该秘密值所相关联的公共值PubVal(i)的函数f。函数f例如在其定制期间存储在电路3中。作为变型,函数f使得能够从秘密值SecVal(i)恢复索引i。
(每个)电路4包含(接收或确定电路的定制)n个公共值PubVal(i)的集合{PubVal}、m个种子Seed(j)的集合{Seed}(其中j的范围为1至m),从种子Seed(j)以及从秘密值的索引i推导出秘密值SecVal(i)的函数d。
秘密值集合{SecVal}和公共值集合{PubVal}由制造商或由电路的定制者(通常是设备和产品的制造商)来选择。同样,种子集合{Seed}由制造商或由电路的定制者来确定。
秘密值集合{SecVal}既没有加载到验证器电路中,也没有加载到候选电路中。优选地,公共值集合{PubVal}不是加载(在定制电路时)到验证器电路3中,而是加载到候选电路4中。m个种子的集合{Seed}仅加载(或随机生成)到候选电路4中。电路4中的种子数目m比系统的公共值和私密值的数目n更小(例如,比例处于2至10的范围中)。在通过电路4随机生成种子的情况下,提出了在定制电路4时,后者将从种子生成的公共值传达给设备的制造商。
作为变型,验证器电路3在非易失性存储器中包含公共值的集合{PubVal}。然而,在任何情况下都不应包含秘密值集合{SecVal}。根据该变型,候选电路4可以没有包含公共值集合{PubVal}。
图4示意性地示出了通过验证器电路对候选电路进行认证的方法的实施例。
当验证器电路3期望验证候选电路4的真实性时,验证器电路3向候选电路4发送针对公共值集合的请求(REQ({PubVal}))。
电路4从其非易失性存储器中提取(READ({PubVal}))n个公共值的集合{PubVal},并且向电路3发送(SEND({PubVal}))它们。
电路3例如随机选择(SEL(PubVal(i)))公共值中的一个公共值(PubVal(i))并且至少存储(MEM(PubVal(i)))这个公共值。优选地,在非易失性存储器中执行这种存储。
电路3可以将n个公共值{PubVal}存储在其非易失性存储器中以便能够再次使用它们并且节约(spare)用于后续认证的前两个步骤。
然而,根据优选实施例,至少每次引入新产品(新电池或备用电池)时,从电路4中提取集合{PubVal},以使系统与函数f仍然适用的、但公共值集合{PubVal}和秘密值集合{SecVal}不同的新产品系列兼容。对于每次认证,将公共值集合{PubVal}从电路4传送到电路3的事实具有以下优点:使系统与相同设备或电路3的多个产品或电路4的关联相兼容,多个产品或电路4具有一个电路与另一电路彼此不同的公共值集合{PubVal}和秘密值集合{SecVal}。
一旦它选择了公共值PubVal(i),电路3就向电路4发送对应秘密值SecVal(i)的请求(REQ(SecVal(i)))。请求至少包含索引i。作为变型,请求包含实际的公共值。重要的是电路4能够确定电路3所请求的秘密值的索引i。
然后,电路4例如从一个认证到另一个认证随机地或顺序地从集合{Seed}中选择(SEL(Seed(j))种子Seed(j)。一旦被选择,就从存储器中读取Seed(j)并且它在存储器中的存储被破坏(即,在读取之后擦除)。
利用该种子以及由电路3所传达的索引i,电路4生成或导出(SecVal(i)=d(Seed(j),i))秘密值SecVal(i)。
该值被发送(SEND(SecVal(i)))到电路3,该电路3对其应用(RES=f(SecVal(i)))函数f以获得值RES。然后,将值RES与先前由电路3所存储的公共值PubVal(i)进行比较(COMP(RES,PubVal(i)))。
在函数f使得能够从秘密值SecVal(i)恢复索引i的变型中,电路3可以简单地存储它选择的索引i而没有存储公共值PubVal(i)。
如果两个值不相等(DIFF),则意味着电路4不可靠并且认证失败(FAIL)。如果值相等(EQU),则确认真实性(SUCCEED)。
成功或失败认证的结果不会被所描述的实施例修改。它可以是设备1和/或产品2的阻挡、设备的关机等。所描述的实施例与任何通常的对策兼容。
所描述的实施例的优点在于,即使在攻击能够发现由电路4生成的m个秘密值的情况下,所制造的克隆电路也将不起作用,因为它们将不包含n个秘密值,而仅包含其中的一部分。因此,可以看出,不是防止攻击者发现给定产品所使用的秘密值,而是防止攻击者创建功能克隆电路。
特别地,可以设计为不约束(限制)电路4生成秘密值,而是对传送到电路3的秘密值的数目进行计数并且将该数目限制为小于数目n的阈值。然而,如果攻击者可以防止更新计数器,例如,通过故障注入,攻击者将能够恢复该n个秘密值的集合,从而将其存储在克隆电路中,以允许它们通过电路3进行认证(其需要来自该集合的秘密值)。
还可以设计为在其定制中非易失性地将n个秘密值的集合存储在电路4中。然而,这不能防止攻击者克隆非易失性存储器并且因此不能防止获得n个秘密值的集合。
破坏性读出非易失性存储器的使用(与缺少所有秘密值的存储进行组合)与从种子进行推导的使用一起使得能够确保没有真实电路生成完全的秘密值集合,即使在成功攻击的情况下也是如此。
根据备选实施例,尽管它擦除了正在被使用的种子,但是将它从种子生成的秘密值存储在非易失性存储器中。因此,电路4存储来自集合{SecVal}的n个值中的至多m个秘密值。当电路3再次请求已经生成的秘密值时,这使得能够再次使用这些值。因此,认证的数目不限于m,而是可以更大。例如,这可以用于在电路3侧上生成和存储m个公共值的子集以及在电路4侧上生成m个对应公共值的子集,并且再次使用它们。因此,在没有生成针对所有m个公共值的秘密值集合的情况下,认证的数目不受限制,并且因此没有不利地影响由于克隆电路将无法获知或生成m个秘密值而导致它不能操作的优点。根据该变型,每个生成的秘密值被存储在电路4的非易失性存储器中,例如,在其被发送到电路3之前。进一步地,优选地,在提取新种子之前,在电路4的一侧上添加测试,以验证所请求的秘密值是否已经存在于其非易失性存储器中。因此,不会减小所生成的秘密值的子集的大小。
图4的实施例是用于讨论所执行的认证的原理的简化实施例。计算和交换可以伴有任何保护措施,例如,电路3和4之间的传输的对称或非对称加密、通过传输签名进行的认证等。进一步地,步骤(MEM(PubVal(i))))和(REQ(SecVal(i)))的顺序可以颠倒或者这些步骤可以并行执行。
作为具体实施例,公共值和秘密值的数目大约是几十或几百,并且种子的数目m大约是十或几十,只要它保持小于数目n即可。
已经对各种实施例进行了描述。本领域技术人员将想到各种修改。特别地,尽管已经参考了电话对电池进行的认证,但是还可以进行反向认证。进一步地,使用上文所给出的功能指示,已经描述的实施例的实际实现方式在本领域技术人员的能力范围内。
这些改变、修改和改进旨在成为本公开的一部分,并且旨在落入本发明的精神和范围内。因而,前面的描述仅是示例性的,而非限制性的。
Claims (33)
1.一种使用第二电路对第一电路进行认证的方法,所述方法包括:
使用所述第一电路生成第一值,所述第一值基于从所述第二电路接收的第二值以及基于在第一破坏性读出非易失性存储器中所包含的第三值,所述第三值仅能够从所述第一破坏性读出非易失性存储器中读取一次。
2.根据权利要求1所述的方法,其中所述第一电路使用推导函数生成所述第一值。
3.根据权利要求1所述的方法,还包括:将所述第一值从所述第一电路传达给所述第二电路。
4.根据权利要求1所述的方法,还包括:使用所述第一电路以非易失性方式存储所述第一值。
5.根据权利要求1所述的方法,还包括:使用所述第二电路将单向函数应用于所述第一值以认证所述第一值。
6.根据权利要求5所述的方法,其中所述单向函数基于所述第一值的成功认证来从所述第一值和所述第三值产生所述第二值。
7.根据权利要求1所述的方法,还包括:使用所述第二电路从预定义集合中选择所述第二值。
8.根据权利要求7所述的方法,还包括:使用所述第三值以单向方式生成与所述预定义集合包含的第二值一样多的第一值;并且其中所述第一值和所述第二值在结合函数中链接。
9.根据权利要求7所述的方法,还包括:使用所述第一电路在所述第一破坏性读出非易失性存储器中存储多个第三值,所述多个第三值的数目小于所述预定义集合中包含的值的数目。
10.根据权利要求7所述的方法,还包括:使用所述第一电路在第二存储器中存储所述预定义集合。
11.根据权利要求7所述的方法,还包括:将所述预定义集合从所述第一电路传达给所述第二电路,并且使用所述第二电路从所述预定义集合中选择所述第二值。
12.一种认证电路,包括:
第一破坏性读出非易失性存储器,存储仅能够读取一次的第三值;以及
第一电路,具有接收第二值的至少一个输入,并且被配置为使用基于从所述第一破坏性读出非易失性存储器读取的所述第三值的函数从所接收的第二值生成第一值。
13.根据权利要求12所述的认证电路,其中所述第一电路被配置为将所述第一值供应给第二电路。
14.根据权利要求13所述的认证电路,其中所述第二电路被配置为将单向函数应用于所述第一值以认证所述第一值。
15.根据权利要求14所述的认证电路,其中所述单向函数用于基于所述第一值的成功认证来产生所述第二值。
16.根据权利要求12所述的认证电路,其中所述第一电路被配置为非易失性地存储所述第一值。
17.一种认证系统,包括:
验证器电路,所述验证器电路中存储有单向函数,所述单向函数将私密值与公共值匹配,但是所述验证器电路中没有存储私密值集合;以及
候选电路,所述候选电路中存储有公共值集合、数目小于所述公共值集合的种子集合、以及用于使用所述种子集合中的种子从公共值导出秘密值的函数,但是所述候选电路中没有存储所述私密值集合,其中在所述候选电路中的所述种子集合的所述存储采用破坏性方式,使得所述种子集合中的每个种子的读出将这个种子从存储中删除;
其中所述验证器电路被配置为选择所述公共值集合中的一个公共值,并且向所述候选电路发送针对与所述公共值集合中所选择的一个公共值相对应的秘密值的请求;
其中所述候选电路被配置为接收针对与所述公共值集合中所选择的一个公共值相对应的所述秘密值的所述请求,以使用来自所述种子集合的种子从所述公共值集合中所选择的一个公共值中导出所述秘密值,以及将所述秘密值发送给所述验证器电路;以及
其中所述验证器电路被配置为使用所述单向函数来确定所接收的秘密值是否与所述公共值集合中所选择的一个公共值匹配,以及基于所述确定来认证所述候选电路。
18.根据权利要求17所述的认证系统,其中所述验证器电路随机地选择所述公共值集合中所选择的一个公共值。
19.根据权利要求17所述的认证系统,其中所述验证器电路顺序地选择所述公共值集合中所选择的一个公共值。
20.根据权利要求17所述的认证系统,其中所述候选电路被配置为在由所述验证器电路选择所述公共值集合中的一个公共值之前,将所述公共值集合发送到所述验证器电路。
21.根据权利要求17所述的认证系统,其中所述验证器电路通过发送与所述公共值集合中所选择的一个公共值相对应的索引值来向所述候选电路发送针对与所述公共值集合中所选择的一个公共值相对应的所述秘密值的所述请求。
22.根据权利要求21所述的认证系统,其中所述候选电路使用来自所述种子集合中的所述种子从所述公共值集合中所选择的一个公共值的所述索引值导出所述秘密值。
23.根据权利要求17所述的认证系统,其中所述验证器电路通过发送所述公共值集合中所选择的一个公共值来向所述候选电路发送针对与所述公共值集合中所选择的一个公共值相对应的所述秘密值的所述请求。
24.根据权利要求17所述的认证系统,其中所述候选电路被配置为在由所述验证器电路选择所述公共值集合中的一个公共值之前,向所述验证器电路发送针对所述公共值集合的索引,由所述验证器电路选择所述公共值集合中的一个公共值通过选择所述索引中的值来执行。
25.根据权利要求17所述的认证系统,其中所述候选电路被配置为存储每个导出的秘密值。
26.一种方法,包括:
选择公共值集合中的一个公共值并且发送针对与所述公共值集合中所选择的一个公共值相对应的秘密值的请求;
使用来自以破坏性方式存储的种子集合的种子从所述公共值集合中所选择的一个公共值中导出所述秘密值,使得每次使用种子都会破坏这个种子,所述种子集合的数目小于所述公共值集合的数目;以及
使用单向函数来确定所述秘密值是否与所述公共值集合中所选择的一个公共值匹配,并且基于匹配的所述确定来生成肯定认证。
27.根据权利要求26所述的方法,其中所述公共值集合中所选择的一个公共值被随机地选择。
28.根据权利要求26所述的方法,其中所述公共值集合中所选择的一个公共值被顺序地选择。
29.根据权利要求26所述的方法,其中针对与所述公共值集合中所选择的一个公共值相对应的所述秘密值的所述请求通过发送与所述公共值集合中所选择的一个公共值相对应的索引值来发送。
30.根据权利要求29所述的方法,其中使用所述种子集合的所述种子来从所述公共值集合中所选择的一个公共值的所述索引值导出所述秘密值。
31.根据权利要求26所述的方法,其中针对与所述公共值集合中所选择的一个公共值相对应的所述秘密值的所述请求通过发送所述公共值集合中所选择的一个公共值来发送。
32.根据权利要求26所述的方法,其中选择所述公共值集合中的一个公共值通过选择与所述公共值集合相对应的索引中的值来执行。
33.根据权利要求26所述的方法,其中所述种子集合的数目小于所述公共值集合的数目。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1853818A FR3080927B1 (fr) | 2018-05-03 | 2018-05-03 | Authentification d'un circuit electronique |
FR1853818 | 2018-05-03 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110445613A true CN110445613A (zh) | 2019-11-12 |
Family
ID=62528734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910362312.XA Pending CN110445613A (zh) | 2018-05-03 | 2019-04-30 | 电子电路的认证 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10970384B2 (zh) |
EP (1) | EP3564841A1 (zh) |
CN (1) | CN110445613A (zh) |
FR (1) | FR3080927B1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120030464A1 (en) * | 2009-04-24 | 2012-02-02 | Nippon Telegraph And Telephone Corporation | Secret sharing system, sharing apparatus, share management apparatus, acquisition apparatus, processing methods thereof, secret sharing method, program, and recording medium |
CN104462931A (zh) * | 2013-09-25 | 2015-03-25 | 三星电子株式会社 | 消费者可更换单元监视器芯片及其认证成像装置和方法 |
US9037858B1 (en) * | 2013-03-12 | 2015-05-19 | Emc Corporation | Distributed cryptography using distinct value sets each comprising at least one obscured secret value |
US9770915B1 (en) * | 2016-10-27 | 2017-09-26 | Hewlett-Packard Development Company, L.P. | Replaceable item authentication |
US20170277459A1 (en) * | 2016-03-24 | 2017-09-28 | Texas Instruments Incorporated | Random number generation in ferroelectric random access memory (fram) |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI115686B (fi) * | 1997-08-27 | 2005-06-15 | Teliasonera Finland Oyj | Menetelmä palvelun käyttämiseksi tietoliikennejärjestelmässä ja tietoliikennejärjestelmä |
JP3899918B2 (ja) * | 2001-12-11 | 2007-03-28 | 株式会社日立製作所 | ログイン認証方法およびその実施システム並びにその処理プログラム |
US20030177385A1 (en) * | 2002-03-15 | 2003-09-18 | Price James H. | Reverse authentication key exchange |
CA2471055A1 (en) * | 2004-06-16 | 2005-12-16 | Qualtech Technical Sales Inc. | A network security enforcement system |
WO2006087799A1 (ja) * | 2005-02-18 | 2006-08-24 | Fujitsu Limited | 音声認証システム |
FR2893797A1 (fr) * | 2005-11-23 | 2007-05-25 | Proton World Internatinal Nv | Personnalisation d'une carte bancaire pour d'autres applications |
US8117453B2 (en) * | 2005-11-23 | 2012-02-14 | Proton World International N.V. | Customization of an electronic circuit |
US8428254B2 (en) * | 2009-03-31 | 2013-04-23 | Empire Technology Development Llc | Distributed generation of mutual secrets |
US8549314B2 (en) * | 2010-04-29 | 2013-10-01 | King Saud University | Password generation methods and systems |
US8640212B2 (en) * | 2010-05-27 | 2014-01-28 | Red Hat, Inc. | Securing passwords with CAPTCHA based hash when used over the web |
US9294281B2 (en) * | 2012-02-10 | 2016-03-22 | Microsoft Technology Licensing, Llc | Utilization of a protected module to prevent offline dictionary attacks |
US9405912B2 (en) * | 2013-11-14 | 2016-08-02 | Microsoft Technology Licensing, Llc | Hardware rooted attestation |
US10033724B2 (en) * | 2014-03-28 | 2018-07-24 | Ben Damian DONOHUE | System of composite passwords incorporating hints |
FR3052279B1 (fr) * | 2016-06-03 | 2019-06-21 | Proton World International N.V. | Authentification d'une carte par lecture sans contact |
FR3052280A1 (zh) * | 2016-06-03 | 2017-12-08 | Proton World Int Nv |
-
2018
- 2018-05-03 FR FR1853818A patent/FR3080927B1/fr active Active
-
2019
- 2019-04-29 EP EP19171706.5A patent/EP3564841A1/fr not_active Withdrawn
- 2019-04-30 CN CN201910362312.XA patent/CN110445613A/zh active Pending
- 2019-05-01 US US16/400,495 patent/US10970384B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120030464A1 (en) * | 2009-04-24 | 2012-02-02 | Nippon Telegraph And Telephone Corporation | Secret sharing system, sharing apparatus, share management apparatus, acquisition apparatus, processing methods thereof, secret sharing method, program, and recording medium |
US9037858B1 (en) * | 2013-03-12 | 2015-05-19 | Emc Corporation | Distributed cryptography using distinct value sets each comprising at least one obscured secret value |
CN104462931A (zh) * | 2013-09-25 | 2015-03-25 | 三星电子株式会社 | 消费者可更换单元监视器芯片及其认证成像装置和方法 |
US20170277459A1 (en) * | 2016-03-24 | 2017-09-28 | Texas Instruments Incorporated | Random number generation in ferroelectric random access memory (fram) |
US9770915B1 (en) * | 2016-10-27 | 2017-09-26 | Hewlett-Packard Development Company, L.P. | Replaceable item authentication |
Also Published As
Publication number | Publication date |
---|---|
EP3564841A1 (fr) | 2019-11-06 |
US10970384B2 (en) | 2021-04-06 |
FR3080927A1 (fr) | 2019-11-08 |
FR3080927B1 (fr) | 2024-02-02 |
US20190340351A1 (en) | 2019-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Schulz et al. | Short paper: Lightweight remote attestation using physical functions | |
US20220224550A1 (en) | Verification of identity using a secret key | |
US11218330B2 (en) | Generating an identity for a computing device using a physical unclonable function | |
EP2965254B1 (en) | Systems and methods for maintaining integrity and secrecy in untrusted computing platforms | |
KR101795457B1 (ko) | 보안 기능이 강화된 디바이스의 초기화 방법 및 디바이스의 펌웨어 업데이트 방법 | |
CN101194229B (zh) | 更新数据指令的方法和设备 | |
EP3949255A1 (en) | Verifying identity of an emergency vehicle during operation | |
US10211979B2 (en) | Systems and methods securing an autonomous device | |
KR20080020621A (ko) | 무결성 보호된 보안 저장의 실행 | |
CN104782076A (zh) | 使用puf用于检验认证、尤其是用于防止对ic或控制设备的功能的未获得授权的访问 | |
Mustapa et al. | Hardware-oriented authentication for advanced metering infrastructure | |
KR100939725B1 (ko) | 모바일 단말기 인증 방법 | |
Moriyama et al. | PUF-based RFID authentication secure and private under memory leakage | |
CN106789024A (zh) | 一种远程解锁方法、装置和系统 | |
CN104868998A (zh) | 一种向电子设备供应加密数据的系统、设备和方法 | |
CN109302442B (zh) | 一种数据存储证明方法及相关设备 | |
KR101769861B1 (ko) | 패스워드 노출 없는 hsm 스마트 카드를 이용한 사용자 바이오 인증 방법 및 시스템 | |
CN110445613A (zh) | 电子电路的认证 | |
CN112020718A (zh) | 电子装置的完整性检查 | |
KR101221728B1 (ko) | 그래픽 otp 인증을 위한 인증처리서버 및 그 방법 | |
JP6074125B2 (ja) | 無線端末のネットロック方法及びシステム | |
CN107682147B (zh) | 用于智能卡芯片操作系统文件的安全管理方法及系统 | |
CN112532573A (zh) | 一种认证关联性的认证方法以及安全装置 | |
KR101017014B1 (ko) | 스마트 칩 매체를 이용한 게임 접속 시스템 및 그 방법 | |
CN102158339B (zh) | 密码增强的自动黑名单管理和执行的系统和方法 |
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 |