CN104468094A - 加密密钥提供方法、半导体集成电路及加密密钥管理设备 - Google Patents

加密密钥提供方法、半导体集成电路及加密密钥管理设备 Download PDF

Info

Publication number
CN104468094A
CN104468094A CN201410493896.1A CN201410493896A CN104468094A CN 104468094 A CN104468094 A CN 104468094A CN 201410493896 A CN201410493896 A CN 201410493896A CN 104468094 A CN104468094 A CN 104468094A
Authority
CN
China
Prior art keywords
equipment
data
unique
encryption key
hash function
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.)
Granted
Application number
CN201410493896.1A
Other languages
English (en)
Other versions
CN104468094B (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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Publication of CN104468094A publication Critical patent/CN104468094A/zh
Application granted granted Critical
Publication of CN104468094B publication Critical patent/CN104468094B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • 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
    • H04L9/3236Cryptographic 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
    • 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
    • H04L9/3236Cryptographic 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
    • H04L9/3239Cryptographic 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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及加密密钥提供方法、半导体集成电路及加密密钥管理设备。使用密码的第一设备通过PUF,生成设备唯一数据,并且第二设备根据所生成的设备唯一数据,生成一对助手数据和设备唯一ID。设备唯一数据具有生成环境所导致的波动,并将波动视为设备唯一ID的错误,助手数据充当用于纠正错误的校正数据。第二设备根据设备唯一ID和加密密钥生成散列函数。第二设备首先将助手数据和散列函数中的一个写入到第一设备,在通过写入来认证第一设备之后,在第一设备中写入助手数据和散列函数中的另一个。通过解密加密密钥,第一设备被允许使用密码。

Description

加密密钥提供方法、半导体集成电路及加密密钥管理设备
对相关申请的交叉引用
包括说明书、附图以及摘要的于2013年9月24日提出的日本专利申请No.2013-196532的公开以引用的方式全文并入本文中。
技术领域
本发明涉及加密密钥提供方法、半导体集成电路及加密密钥管理设备。具体而言,本发明可以适用于针对使用物理不可克隆设备的唯一数据的所生成的加密密钥的不正当的获取具有阻止能力(resistanceproperty)的加密密钥提供方法、半导体集成电路及加密密钥管理设备。
背景技术
近年来,报告了针对安装在车辆中的电气单元(电子控制单元:ECU)的各种攻击的情况,诸如不正当的访问和不正当的冒充。在车载微计算机的相关技术中,在没有采取防止电子窃听的措施的情况下,用于加密与解密的密钥本身被写入;因此,易于盗窃加密密钥。显然,从安全性的角度来看,这样的不正当的行为(act)会导致严重的问题。对于具有针对这样的不正当的行为的高安全性的车载微计算机的需要越来越大。另一方面,车载微计算机中的故障和缺陷将对人的生命产生影响。因此,对故障和缺陷的分析是必需的。如果在微计算机上全部使用防窜改(tamper-resistance)技术以防止不正当的行为,则微计算机将具有高安全性,就可以防止不正当的行为。另一方面,车辆制造商、ECU制造商以及芯片制造商难以对故障和缺陷进行分析,给他们造成不便。
因此,研究使用利用物理不可克隆功能(PUF)生成的设备所特有的标识代码(或设备唯一ID)的安全技术。在使用PUF的技术中,例如,将通过设备唯一ID(标识)加密的散列函数写入ROM(只读存储器)的区域,并且利用通过设备唯一ID解密的散列函数,来解密数据。因此,确保了安全性。
例如,在SRAM(静态随机存取存储器)通电时,根据初始值导出物理不可克隆功能(PUF)。SRAM的初始值由于制造变化(manufacturing variation)而波动;因此,通过取足够大的比特数,它可以充当每一个设备的唯一值。另一方面,有可重复性的需求:从相同设备生成的设备唯一ID应该具有相同值,即使它被生成许多次也是如此。这是因为有这样的可能性:如果从本来相同的设备生成不同的设备唯一ID,则它可能被当做仿造品。然而,SRAM的初始值以及许多PUF可能取决于生成它们时所处的环境而具有波动,即,设备所处的环境温度的差异,电源电压等等。
专利文献1公开了能够生成初始唯一代码的半导体器件,该初始唯一代码是设备所特有的值,并包括随机比特差错。此半导体器件纠正初始唯一代码中所包括的错误,生成固定的设备唯一ID(设备唯一ID),并使用它来解密机密信息。在错误校正中,参考对应于固定的设备唯一ID的校正数据。
(专利文献)
(专利文献1)日本未经审查的专利申请公开No.2013-003431。
发明内容
由本发明人对专利文献1中所进行的研究揭示了下列新问题的存在。
对包括可以利用PUF来生成设备唯一ID的半导体器件的设备,从诸如从外部耦合的服务器之类的外部设备(加密密钥管理设备)写入对应于设备唯一ID的加密密钥;由此,可以构建使用加密密钥的密码系统并防止设备遭受各种攻击,诸如对设备的不正当的访问以及不正当的冒充。例如,当应用于安装在车辆中的ECU之间的加密通信时,外部设备(例如,服务器)通过利用使用PUF所生成的设备唯一ID来加密要保密的密钥信息,生成散列函数,并将散列函数存储在ECU中,具体而言,存储在ECU中实现的MCU(微控制器单元)中。然而,散列函数在MCU的出厂时并未写入,而是可以在ECU或车辆组装之后写入,或当车辆在修配厂修理时写入,等等。结果,可能在那时会发生欺骗加密密钥管理设备的不当的情况。
在这样的系统中,当在MCU中正确地写入规定的散列函数时,MCU被视为无缺陷的物品(item),而当散列函数写入失败时,MCU被视为有缺陷的物品。从价格的支付目标(payment target of theprice)中排除有缺陷的MCU。可以考虑这样的系统:通过下载等获取利用散列函数加密的内容,并且所述加密的内容只有在正确地写入规定的散列函数之后才允许被使用。由于只有在正确地写入散列函数之后才对它进行收费,因此,如果存在恶意的用户则有这样的可能性:尽管正确地写入了散列函数,通过向加密密钥管理设备报告虚假的写入失败,发生逃避支付并允许使用内容的不当情况。如此,结果是存在这样的安全性缺陷:允许对于加密密钥的不正当的获取。
下面将说明对这样的问题的解决方案。通过阅读下面的本发明说明书的描述以及附图,本发明的其他问题和新特点将变得清楚。
根据一个实施例,解决方案如下所示。
即,它是一种方法,用于将加密密钥从第二设备提供到使用密码的第一设备,所述第二设备管理密码的加密密钥,并按如下方式配置。第一设备生成通过制造变化唯一地定义的设备唯一数据,以及第二设备根据由第一设备所生成的设备唯一数据,生成一对助手数据(helperdata)和设备唯一ID。这里,设备唯一数据具有生成环境所导致的波动,并将波动视为设备唯一ID的错误,助手数据充当用于纠正错误的校正数据。在设备唯一数据中所生成的波动通过使用对应的助手数据被吸收,设备唯一ID变为没有错误(波动)的并单独地为第一设备所定义的其所特有的代码。第二设备根据设备唯一ID和加密密钥生成散列函数。助手数据和散列函数两者都被从第二设备写入到第一设备,并且第一设备解密加密密钥,允许使用密码。第二设备将助手数据和散列函数中的第一个写入到第一设备。在确认写入正常地执行之后,第二设备将助手数据和散列函数中的另一个写入到第一设备。
下面简要说明了通过一个实施例获取的效果。
即,在允许在第一设备中使用加密密钥之前,可以利用通过制造变化为第一设备单独地定义的其所特有的设备唯一ID,来执行认证;因此,可以防止对于加密密钥的不正当的获取。
附图说明
图1是示出了根据实施例1的加密密钥提供方法的顺序图;
图2是示出了根据实施例2的加密密钥提供系统的数据流图;
图3是示出了根据实施例2的加密密钥提供方法的顺序图;
图4是示出了根据实施例3的加密密钥提供系统的数据流图;
图5是示出了根据实施例3的加密密钥提供方法的顺序图;
图6是示出了根据实施例4的加密密钥提供系统的数据流图;
图7是示出了根据实施例4的加密密钥提供方法的顺序图;
图8是示出了应用于车辆的电系统的加密密钥提供系统的数据流图;以及
图9是示出了应用于网络终端的加密密钥提供系统的数据流图。
具体实施方式
1.实施例的概述
首先,将说明在本申请中所公开的本发明的典型的实施例的概述。在典型的实施例的概述说明中以括号引用的附图的数字符号只例示数字符号被附加到的组件的概念中所包括的内容。
(1)<在通过助手数据和散列函数的其中之一进行认证之后,提供助手数据和散列函数中的另一个>
用于从第二设备(30)向使用密码的第一设备(20,21)提供加密密钥(HF1)的加密密钥提供方法按如下方式配置,其中所述第二设备(30)管理密码的加密密钥。
第一设备生成通过制造变化唯一地定义的设备唯一数据(UD)。
第二设备基于设备唯一数据(UD)生成一对助手数据(HD)和设备唯一ID(UC)。设备唯一ID(UC)是单独为第一设备所定义的其所特有的代码,通过使用对应的助手数据(HD),吸收生成环境所导致的设备唯一数据(UD)的波动。可以根据一个设备唯一数据(UD)生成多组助手数据(HD1,HD2)和设备唯一ID(UC1,UC2)。
第二设备根据设备唯一ID和加密密钥生成散列函数(HF2)。
第一设备基于散列函数和设备唯一ID,解密加密密钥。
加密密钥提供方法包括下列步骤:
第一步骤,第一设备生成设备唯一数据(UD)并将它提供到第二设备;
第二步骤,第二设备根据所提供的设备唯一数据,生成一对助手数据(HD)和为第一设备唯一地定义的设备唯一ID(UC);
第三步骤,第二设备根据所生成的设备唯一ID和加密密钥生成散列函数(HF2);
第四步骤,从第二设备向第一设备传输助手数据和散列函数中的一个;
第五步骤,第一设备基于在第四步骤接收到的助手数据和散列函数中的一个,将响应数据传输到第二设备;
第六步骤,第二设备通过确认在第五步骤接收到的响应数据的有效性,来认证第一设备;
第七步骤,在第六步骤认证第一设备之后,第二设备将助手数据和散列函数中的另一个传输到第一设备;以及
第八步骤,第一设备基于由本身所生成的设备唯一数据和在第四步骤或第六步骤中接收到的助手数据和散列函数,解密加密密钥。
利用上文所描述的过程,在允许在第一设备(20,21)中使用加密密钥(HF1)之前,可以利用通过制造变化为第一设备单独地定义的其所特有的设备唯一ID(UC),来执行认证;因此,可以防止对于加密密钥的不正当的获取。
(2)<通过助手数据的认证>
具体而言,根据段落(1)的加密密钥提供方法按如下方式配置。
在第四步骤,第二设备将助手数据传输到第一设备。
在第五步骤,第一设备根据接收到的助手数据再现设备唯一ID(UC),基于再现的设备唯一ID创建响应数据,并将响应数据传输到第二设备。
在第六步骤,通过将响应数据与期望值数据进行比较,第二设备来确认响应数据的有效性,其中期望值数据是基于在第二步骤所生成的设备唯一ID(UC)的。
在第七步骤,在第六步骤中认证第一设备之后,第二设备将散列函数(HF2)传输到第一设备。
利用上文所描述的过程,可以在认证之后(即,在确认已经正常地建立通信路径之后),将散列函数作为加密密钥信息来传输,因此可以防止对于加密密钥的不正当的获取。
(3)<两组设备唯一ID和助手数据>
具体而言,根据段落(2)的加密密钥提供方法按如下方式配置。
在第二步骤,根据所提供的设备唯一数据,第二设备生成为第一设备唯一定义的第一设备唯一ID(UC1)和用于生成第一设备唯一ID的第一助手数据(HD1)。根据所提供的设备唯一数据,第二设备生成不同于第一设备唯一ID的第二设备唯一ID(UC2)和用于生成第二设备唯一ID的第二助手数据(HD2)。
在第三步骤,第二设备根据第二设备唯一ID和加密密钥,生成散列函数(HF2)。
在第五步骤,第一设备根据接收到的第一助手数据再现第一设备唯一ID(UC1),基于再现的第一设备唯一ID创建响应数据,并将响应数据传输到第二设备。
在第六步骤,第二设备通过将响应数据与期望值数据进行比较,来确认响应数据的有效性,其中期望值数据是基于在第二步骤所生成的第一设备唯一ID(UC1)的。
在第七步骤,在第六步骤中认证第一设备之后,第二设备将第二助手数据进一步传输到第一设备。
在第八步骤,第一设备基于由其本身所生成的设备唯一数据(UD),以及在第七步骤接收到的第二助手数据,生成第二设备唯一ID(UC2),并根据再现的第二设备唯一ID和在第七步骤中接收到的散列函数,解密加密密钥(HF1)。
利用上文所描述的过程,可以给用于认证的设备唯一ID(UC1)和用于保护加密密钥的设备唯一ID(UC2)设置互相不同的值;因此,可以提高安全性。
(4)<制作响应的摘要>
具体而言,根据段落(3)的加密密钥提供方法按如下方式配置。
在第五步骤,第一设备利用不同于散列函数的另一散列函数,创建再现的第一设备唯一ID的摘要(digest)(H(UC1))作为响应数据。
在第六步骤,第二设备利用与另一散列函数相同的散列函数,创建在第二步骤所生成的第一设备唯一ID的摘要(H(UC1))作为期望值数据,并通过将响应数据与期望值数据进行比较,确认响应数据的有效性。
利用上文所描述的过程,可以保护在认证时传送的设备唯一ID(UC1);因此,可以进一步提高安全性。
(5)通过HF2=助手数据2+UC2加密的加密密钥
具体而言,根据段落3的加密密钥提供方法按如下方式配置。
在第七步骤,第二设备组合并编码(scramble)散列函数和第二助手数据,并将编码的数据传输到第一设备。
在第八步骤,第一设备通过解码被编码的数据,解密散列函数和第二助手数据。
利用上文所描述的过程,可以保护在写入密钥信息时传送的散列函数(HF2)和助手数据(HD2);因此,可以进一步提高安全性。
(6)<通过散列函数的认证>
具体而言,根据段落(1)的加密密钥提供方法按如下方式配置。
在第四步骤,第二设备将散列函数(HF2)传输到第一设备。
在第五步骤,第一设备基于接收到的散列函数创建响应数据,并将响应数据传输到第二设备。
在第六步骤,第二设备通过将响应数据与期望值数据进行比较,来确认响应数据的有效性,其中期望值数据是基于在第三步骤中所生成的散列函数的。
在第七步骤,在第六步骤中认证第一设备之后,第二设备将助手数据(HD)传输到第一设备。
利用上文所描述的过程,可以在认证之后(即,在确认已经正常地建立通信路径之后),传输用于生成设备唯一ID(UC)的助手数据(HD);因此,可以防止对于加密密钥的不正当的获取。
(7)<配备有PUF生成电路的LSI(通过助手数据的认证)>
半导体集成电路(21)配置有:唯一数据生成单元(1),其用于生成通过制造变化唯一地定义的设备唯一数据;以及加密密钥解密单元(6),其用于通过使用由外部设备基于设备唯一数据所生成的并从外部设备提供的加密密钥信息,解密加密密钥。半导体集成电路按如下方式配置。
半导体集成电路通过唯一数据生成单元来生成设备唯一数据(UC),并将设备唯一数据提供到外部设备。
外部设备从半导体集成电路接收设备唯一数据,并根据接收到的设备唯一数据生成助手数据(HD)和设备唯一ID(UC)。设备唯一ID(UC)是单独定义的半导体集成电路所特有的代码,通过使用对应的助手数据(HD)吸收生成环境所导致的设备唯一数据(UD)的波动。外部设备将助手数据传输到半导体集成电路。
半导体集成电路接收助手数据,根据接收到的助手数据和设备唯一数据(2)生成对应的设备唯一ID(UC),根据所生成的设备唯一ID(4_1)生成响应数据(H(UC)),并将响应数据传输到外部设备。
外部设备接收响应数据,并将接收到的响应数据与期望值数据(H(UC))进行比较,其中期望值数据是根据由外部设备本身所生成的设备唯一ID(4_2,5)而产生的。
当比较结果一致时,外部设备根据设备唯一ID和加密密钥(7)生成散列函数(HF2),并将散列函数传输到半导体集成电路。
半导体集成电路接收散列函数,并根据由其本身所生成的设备唯一ID和接收到的散列函数(6),解密加密密钥。
根据上文所描述的配置,在允许在半导体集成电路(21)中使用加密密钥之前,可以利用通过制造变化单独地定义的半导体集成电路所特有的设备唯一ID(UC),来执行认证;因此,可以防止对于加密密钥的不正当的获取。
(8)<两组设备唯一ID和助手数据>
具体而言,根据段落(7)的半导体集成电路按如下方式配置。
外部设备根据接收到的设备唯一数据(3),生成第一和第二助手数据(HD1,HD2)和第一和第二设备唯一ID(UC1,UC2),并且外部设备将第一助手数据传输到半导体集成电路。
半导体集成电路接收第一助手数据,根据接收到的第一助手数据(HD1)和设备唯一数据(2_1)生成对应的第一设备唯一ID(UC1),基于所生成的第一设备唯一ID生成响应数据(H(UC1)),并将响应数据传输到外部设备。
外部设备接收响应数据,并将接收到的响应数据与期望值数据(H(UC1))进行比较,其中期望值数据是根据由外部设备其本身(5)所生成的第一设备唯一ID(UC1)生成的。
当比较结果一致时,外部设备根据第二设备唯一ID和加密密钥生成散列函数(HF2),并将第二助手数据和散列函数传输到半导体集成电路(7,8,9)。
半导体集成电路接收第二助手数据和散列函数,根据接收到的第二助手数据和设备唯一数据(10,2_2)生成第二设备唯一ID,并根据所生成的第二设备唯一ID和接收到的散列函数,解密加密密钥(HF1)。
根据上文所描述的配置,可以给用于认证的设备唯一ID(UC1)和用于保护加密密钥的设备唯一ID(UC2)设置相互不同的值;因此,可以提高安全性。
(9)<制作响应的摘要>
具体而言,根据段落(8)的半导体集成电路按如下方式配置。
半导体集成电路利用不同于散列函数(4_3)的另一散列函数,创建再现的第一设备唯一ID的摘要作为响应数据。
外部设备利用与另一散列函数(4_4)相同的散列函数,创建由其本身所生成的第一设备唯一ID的摘要,作为期望值数据,并将响应数据与期望值数据(5)进行比较。
根据上文所描述的配置,可以保护在认证时传送的设备唯一ID(UC1);因此,可以进一步提高安全性。
(10)<通过HF2=助手数据2+UC2加密的加密密钥>
外部设备通过组合并编码散列函数和第二助手数据(9),生成加密密钥再现数据({Enc(HF1),HD2}),并将加密密钥再现数据传输到半导体集成电路。
半导体集成电路接收加密密钥再现数据,并通过解码接收到的加密密钥再现数据(10),来解密散列函数和第二助手数据。
根据上文所描述的配置,可以保护在写入密钥信息时传送的散列函数(HF1)和助手数据(HD2);因此,可以进一步提高安全性。
(11)<读取器/写入器>
具体而言,根据段落(7)到段落(10)中的一个的半导体集成电路按如下方式配置。
半导体集成电路耦合到与外部设备进行通信的读取器/写入器(22),并通过读取器/写入器与外部设备执行数据的传输和接收。
根据上文所描述的配置,可以在实现之前的阶段中提供可以让加密密钥信息写入半导体集成电路(21)中的环境。
(12)<对于配备有与外部设备的接口的终端设备的实现>
具体而言,根据段落(7)到段落(10)中的一个的半导体集成电路按如下方式配置。
半导体集成电路在配备有与外部设备进行通信的接口(27)的终端设备(20)中实现,并通过终端设备与外部设备执行数据的传输和接收。
根据上文所描述的配置,可以在半导体集成电路(21)在终端设备(20)中实现的状态下,提供可以让加密密钥信息写入半导体集成电路(21)中的环境。
(13)<加密通信接口>
具体而言,根据段落(7)到段落(12)中的一个的半导体集成电路按如下方式配置。
半导体集成电路进一步配备有加密电路和使用解密的加密密钥的解密电路;以及加密通信接口(25)。
根据上文所描述的配置,可以提供可以使用由外部设备写入的加密密钥来执行加密通信的半导体集成电路。
(14)<加密内容的解密>
具体而言,根据段落(7)到段落(12)中的一个的半导体集成电路按如下方式配置。
半导体集成电路进一步配备有使用解密的加密密钥的密码解密电路(28)。半导体集成电路可以访问用于存储使用与加密密钥相同的加密密钥加密的数据的非易失性存储器(29),并可以将存储在非易失性存储器中的数据提取(fetch)到密码解密电路。
根据上文所描述的配置,可以提供这样的半导体集成电路(21),该半导体集成电路(21)可以通过将加密密钥信息写入到半导体集成电路中,将存储在非易失性存储器(29)中的加密的数据(内容)变成可用(或激活)状态。
(15)<加密密钥管理设备(利用助手数据的认证)>
加密密钥管理设备(30)耦合到终端设备(20,21),终端设备(20,21)配备有用于生成通过制造变化唯一地定义的设备唯一数据(UD)的唯一数据生成单元(1),以及根据加密密钥信息来解密加密密钥(HF1)的加密密钥解密单元(6)。加密密钥管理设备根据设备唯一数据生成加密密钥信息,并且将加密密钥信息提供到终端设备。加密密钥管理设备按如下方式配置。
终端设备通过唯一数据生成单元(1),来生成设备唯一数据(UD),并将设备唯一数据提供到加密密钥管理设备。
加密密钥管理设备从终端设备接收设备唯一数据,并根据接收到的设备唯一数据(UD)生成助手数据(HD)和设备唯一ID(UC)。设备唯一ID(UC)是单独定义的终端设备所特有的代码,通过使用对应的助手数据(HD)吸收生成环境所导致的设备唯一数据(UD)的波动。加密密钥管理设备将助手数据传输到终端设备。
终端设备接收助手数据,根据接收到的助手数据(HD)和设备唯一数据(UD)(2)生成对应的设备唯一ID(UC),根据所生成的设备唯一ID(4_1,4_3)生成响应数据(H(UC)),并将响应数据传输到加密密钥管理设备。
加密密钥管理设备接收响应数据,将接收到的响应数据(H(UC))与所生成的期望值数据(H(UC))进行比较,其中期望值数据是根据由加密密钥管理设备其本身所生成的设备唯一ID(4_2,5)的。
当比较结果一致时,加密密钥管理设备根据设备唯一ID和加密密钥(7)生成散列函数(HF2),并将散列函数传输到终端设备。
终端设备接收散列函数,并根据由其本身所生成的设备唯一ID(UC)和接收到的散列函数(HF2),解密加密密钥(HF1)。
根据上文所描述的配置,在允许在终端设备(20)中使用加密密钥之前,加密密钥管理设备(30)可以利用通过制造变化单独定义的终端设备所特有的设备唯一ID(UC),来执行认证;因此,可以防止对于加密密钥的不正当的获取。
(16)<两组设备唯一ID和助手数据>
具体而言,根据段落(15)的加密密钥管理设备按如下方式配置。
加密密钥管理设备根据接收到的设备唯一数据(UD)(3),生成第一和第二助手数据(HD1,HD2)和第一和第二设备唯一ID(UC1,UC2),并且加密密钥管理设备将第一助手数据传输到终端设备。
终端设备接收第一助手数据,根据接收到的第一助手数据(HD1)和设备唯一数据,生成对应的第一设备唯一ID(UC),基于所生成的第一设备唯一ID(UC)生成响应数据(H(UC)),并将响应数据传输到加密密钥管理设备。
加密密钥管理设备接收响应数据,并将接收到的响应数据(H(UC))与期望值数据(H(UC))进行比较,其中期望值数据(H(UC))是根据由其本身所生成的第一设备唯一ID(4_2,5)来生成的。
当比较结果一致时,加密密钥管理设备根据第二设备唯一ID和加密密钥(7,8)生成散列函数(HF2),并将第二助手数据和散列函数传输到终端设备。
终端设备接收第二助手数据和散列函数,根据接收到的第二助手数据(HD2)和设备唯一数据(UD)生成第二设备唯一ID(UC2),并根据所生成的第二设备唯一ID和接收到的散列函数(6),解密加密密钥。
根据上文所描述的配置,可以给用于认证的设备唯一ID(UC1)和用于保护加密密钥的设备唯一ID(UC2)设置相互不同的值;因此,可以提高安全性。
(17)制作响应的摘要
具体而言,根据段落(16)的加密密钥管理设备按如下方式配置。
终端设备利用不同于散列函数(4_1)的另一散列函数,创建再现的第一设备唯一ID(UC1)的摘要(H(UC1))作为响应数据。
加密密钥管理设备利用与另一散列函数相同的散列函数,创建由其本身所生成的第一设备唯一ID(UC)的摘要(H(UC1))作为期望值数据,并将响应数据与期望值数据({Enc(HF1),HD2})(5)进行比较。
根据上文所描述的配置,可以保护在认证时传送的设备唯一ID(UC1);因此,可以进一步提高安全性。
(18)<通过HF2=助手数据2+UC2加密的加密密钥>
具体而言,根据段落(16)的加密密钥管理设备按如下方式配置。
加密密钥管理设备通过组合并编码散列函数(HF2)和第二助手数据(HD2)(9),生成加密密钥再现数据,并将加密密钥再现数据传输到终端设备。
终端设备接收加密密钥再现数据,并通过解码接收到的加密密钥再现数据(10),来解密散列函数和第二助手数据。
根据上文所描述的配置,可以保护在写入密钥信息时传输的散列函数(HF2)和助手数据(HD2);因此,可以进一步提高安全性。
(19)<配备有PUF生成电路的LSI(通过散列函数的认证)>
半导体集成电路(21)配备有:用于生成通过制造变化单独定义的设备唯一数据(UD)的唯一数据生成单元(1);以及用于通过使用基于设备唯一数据由外部设备(30)所生成的并从外部设备提供的加密密钥信息,来解密加密密钥(HF1)的加密密钥解密单元(6)。半导体集成电路(21)按如下方式配置。
半导体集成电路通过唯一数据生成单元,来生成设备唯一数据(UD),并将设备唯一数据提供到外部设备。
外部设备从半导体集成电路接收设备唯一数据,并根据接收到的设备唯一数据生成助手数据(HD)和设备唯一ID(UC)。设备唯一ID(UC)是单独定义的半导体集成电路所特有的代码,通过使用对应的助手数据(HD),吸收生成环境所导致的设备唯一数据的波动。
外部设备根据设备唯一ID和加密密钥生成散列函数(HF2),并将散列函数传输到半导体集成电路。
半导体集成电路接收散列函数,根据接收到的散列函数(HF2)(4_5)生成响应数据,并将响应数据传输到外部设备。
外部设备接收响应数据,将接收到的响应数据与由其本身所生成的期望值数据进行比较(5),当比较结果一致时,外部设备将助手数据传输到半导体集成电路。
半导体集成电路接收助手数据,根据接收到的助手数据(HD)和设备唯一数据(UD)生成对应的设备唯一ID(UC),并根据所生成的设备唯一ID和接收到的散列函数(6)解密加密密钥(HF1)。
根据上文所描述的配置,在允许在半导体集成电路中使用加密密钥之前,可以利用通过制造变化单独定义的半导体集成电路所特有的设备唯一ID,来执行认证;因此,可以防止对于加密密钥的不正当的获取。
(20)<加密密钥管理设备(通过散列函数的认证)>
加密密钥管理设备(30)耦合到终端设备(20,21),终端设备(20,21)配备有用于生成通过制造变化唯一地定义的设备唯一数据(UD)的唯一数据生成单元(1),以及根据加密密钥信息来解密加密密钥(HF1)的加密密钥解密单元(6)。加密密钥管理设备根据设备唯一数据生成加密密钥信息,并将加密密钥信息提供到终端设备,并且按如下方式配置。
加密密钥管理设备从终端设备接收设备唯一数据(UD),并基于接收到的设备唯一数据(UD)生成助手数据(HD)和设备唯一ID(UC)。设备唯一ID(UC)是单独定义的终端设备所特有的代码,通过使用对应的助手数据(HD),吸收生成环境所导致的设备唯一数据(UD)的波动。
加密密钥管理设备根据设备唯一ID和加密密钥,生成散列函数(HF2),并将散列函数传输到终端设备。
终端设备接收散列函数,根据接收到的散列函数(HF2)生成响应数据,并将响应数据传输到加密密钥管理设备。
加密密钥管理设备接收响应数据,将接收到的响应数据与由其本身所生成的期望值数据进行比较(5),当比较结果一致时,加密密钥管理设备将助手数据(HD)传输到终端设备。
终端设备接收助手数据,根据接收到的助手数据(HD)和设备唯一数据(UD),生成对应的设备唯一ID(UC),并根据所生成的设备唯一ID和接收到的散列函数(6),解密加密密钥(HF1)。
根据上文所描述的配置,在允许在终端设备(20,21)中使用加密密钥之前,加密密钥管理设备(30)可以利用通过制造变化单独定义的终端设备所特有的的设备唯一ID(UC),来执行认证;因此,可以防止对于加密密钥的不正当的获取。
2.实施例的细节
将进一步详细地说明实施例。
(实施例1)
<在通过助手数据和散列函数中一个的认证之后,提供另一个>
根据实施例1的加密密钥提供方法将加密密钥HF1从第二设备30提供到使用密码的第一设备(20,21),其中第二设备30管理密码的加密密钥。第一设备,例如是MCU21,通过读取器/写入器22耦合到充当加密密钥管理设备(诸如服务器)的外部设备30。同样优选地,代替MCU21,利用MCU21实现的ECU通过经过OBD-II(机载诊断版本2(On-Board Diagnostics Version II))耦合的重新编程工具22,耦合到诸如服务器之类的外部设备30。进一步优选地,第一设备是利用机载(on-board)MCU21实现的终端设备20,通过在MCU21的内部或外部所提供的通信接口,通过因特网、LAN(局域网),及其他无线或有线通信线路,耦合到诸如服务器之类的外部设备30。另外优选地,第一设备(20,21)和第二设备30在单一封装中实现,或在相同衬底上实现。在该情况下,通信接口和通信路径实现得非常简单,或可以省略。图1示出了作为这些配置的代表性的情况的MCU21、读取器/写入器22,以及加密密钥管理设备30之间的通信的顺序图,其中,时间在垂直方向上示出。上文所描述的内容同样适用于下面将描述的图3,图5,以及图7。因此,在实施例2,实施例3,以及实施例4中将省略其说明。
第一设备(例如,MCU)21生成通过制造变化唯一地定义的设备唯一数据UD。可以通过使用例如物理不可克隆功能(PUF)来生成设备唯一数据UD。更具体地说,可以根据在通电时的SRAM的初始值等来定义设备唯一数据UD。设备唯一数据UD具有一定的波动,这取决于生成它时所处的环境,诸如设备的温度和电源电压。这被视为设备唯一数据UD中所包括的错误(比特错误)。
第二设备(诸如服务器之类的外部设备)30基于设备唯一数据UD,生成一对助手数据HD和设备唯一ID(UC)。设备唯一ID(UC)是单独定义的第一设备21所特有的代码,通过使用对应的助手数据HD吸收生成环境所导致的设备唯一数据UD的波动。可以根据一个设备唯一数据(UD)生成多组助手数据(HD1,HD2)和设备唯一ID(UC1,UC2)。
第二设备(诸如服务器之类的外部设备)30根据设备唯一ID(UC)和加密密钥HF1,生成散列函数HF2。
第一设备(例如,MCU)21根据散列函数HF2和设备唯一ID(UC),解密加密密钥HF1。
图1中所示出的加密密钥提供方法是MCU21、读取器/写入器22,以及加密密钥管理设备30(作为这些配置的代表性的情况)之间的通信的顺序图,其中,在垂直方向上示出了时间。
MCU21生成设备唯一数据UD,并通过读取器/写入器22,将唯一数据UD提供给加密密钥管理设备30(第一步骤)。假设读取器/写入器22和加密密钥管理设备30之间的用户认证已经完成,会话已经激活。基于该假设,进一步假设的是通过读取器/写入器22,从加密密钥管理设备30向MCU21发出设备唯一数据UD的读取命令。在MCU21和加密密钥管理设备30之间的通信中,读取器/写入器22始终介于在它们之间。然而,读取器/写入器22不会改变数据;因此,下列说明省略了关于读取器/写入器22的干预的描述。
加密密钥管理设备30根据MCU21所提供的设备唯一数据UD,生成一对助手数据HD和单独定义的MCU21所特有的设备唯一ID(UC)(第二步骤)。
加密密钥管理设备30根据所生成的设备唯一ID(UC)和加密密钥HF1,生成散列函数HF2(第三步骤)。例如,通过将加密密钥HF1视为消息,并通过使用设备唯一ID(UC)作为加密密钥,对加密密钥HF1执行加密,生成散列函数HF2。
加密密钥管理设备30将助手数据HD和散列函数HF2中的一个传输到MCU21(第四步骤)。
MCU21根据在第四步骤中接收到的助手数据HD或散列函数HF2,将响应数据传输到加密密钥管理设备30(第五步骤)。根据接收到的助手数据HD或散列函数HF2,生成响应数据。响应数据可以是任意格式,只要它可以在加密密钥管理设备30中被验证为传输源。
加密密钥管理设备30通过确认在第五步骤接收到的响应数据的有效性,来认证MCU21(第六步骤)。加密密钥管理设备30根据在第三步骤生成的设备唯一ID(UC),在认证(第六步骤)之前,生成用于验证响应数据的期望值数据。
在第六步骤中认证MCU21之后,加密密钥管理设备30将助手数据HD和散列函数HF2中的另一个传输到MCU21(第七步骤)。
MCU21根据由其本身所生成的设备唯一数据(UD),以及在第四步骤或第六步骤接收到的助手数据(HD)和散列函数(HF2),来解密加密密钥HF1(第八步骤)。
根据上文所描述的过程,在允许在第一设备(例如,MCU21)中使用加密密钥(HF1)之前,可以利用通过制造变化单独定义的第一设备(例如,MCU21)所特有的设备唯一ID(UC),来执行认证;因此,可以防止对于加密密钥的不正当的获取。
如上文所描述的,发现了下列问题:即,如果有恶意用户,则通过向加密密钥管理设备报告虚假的写入失败,即使正常地写入散列函数,也有逃避收费并允许使用第一设备(例如,MCU21)的不当的可能性。这是因为,当在第一设备(例如,MCU21)中正常地写入散列函数时,第一次执行收费。另一方面,在本实施例中,首先使用设备唯一ID(UC)来执行认证。因此,可以通过将成功的认证视为正常写入来执行收费。当认证不成功时,不提供用于再现加密密钥的散列函数HF2。当预先提供了为加密密钥信息的散列函数HF2时,不提供助手数据HD以防止对于加密密钥的使用,其中该助手数据HD是用于从加密密钥信息提取加密密钥的信息。认证成功但助手数据HD和散列函数HF2中的另一个的提供(第七步骤)不成功的情况是很少的。这样的情况应该作为设备故障,通信故障等等来处理。即使恶意用户造成这样的情况,也很难使用该情况来逃避收费等等。如此,可以防止对于加密密钥的不正当的获取。
(实施例2)
<通过助手数据的认证>
图2是示出了根据实施例2的加密密钥提供系统的数据流程图。使用密码的第一设备(20,21)和为密码管理加密密钥HF1的第二设备30彼此耦合。被示为“电路”的每一个区块都可以被配置成具有块的功能的独立电路,或者可以被配置成通过在诸如CPU之类的处理器中操作的软件实现的功能。多个电路块的功能可以通过一个电路来实现,或者被示为电路块的块的一部分的功能可以通过另一电路块来实现。如此,实现功能的电路或软件的配置是任意的。与上文所说明的实施例1的情况相同,第一设备是例如MCU21,并通过读取器/写入器22耦合到充当加密密钥管理设备的诸如服务器之类的外部设备30。可另选地,第一设备是利用机载MCU21实现的终端设备20,并通过在MCU21的内部或外部提供的通信接口,耦合到诸如服务器之类的外部设备(第二设备)30。虽然未具体地限制,但是,第一设备(20,21)和第二设备30之间的通信路径配置有一个系统,例如,带有在相应的设备中提供的通信接口。然而,在图2中省略了通信接口,并且示出了用于每个数据的传输和接收的单独线路。第一设备(20,21)和第二设备30之间的通信利用时间共享数据包,例如,通过通信接口(未示出)利用一个通信协议来执行。上文所描述的内容同样适用于下面将描述的图4以及图6。因此,在实施例3,以及实施例4中将省略其说明。
第一设备(20,21)配置有唯一数据生成单元(PUF)1、唯一ID生成电路2、摘要生成电路4_1,以及HF1解密电路6。唯一数据生成单元(PUF)1生成设备唯一数据UD。如上文所描述的,设备唯一数据UD包括生成环境所导致的波动,即,错误(比特错误)。将所生成的设备唯一数据UD传输到第二设备30,还将其提供给唯一ID生成电路2。唯一ID生成电路2根据PUF1所生成的设备唯一数据UD和由第二设备30所提供的助手数据HD,生成设备唯一ID(UC)。即使在由PUF1所生成的设备唯一数据UD中存在生成环境所导致的波动,该波动也被助手数据HD所吸收,即,错误(比特错误)被校正,设备唯一数据UD便变成高可重复性的数据。将设备唯一ID(UC)提供到摘要生成电路4_1和HF1解密电路6。摘要生成电路4_1使用规定的散列函数,根据设备唯一ID(UC),生成消息摘要(在下文中,简称为“摘要”)H(UC)。将所生成的摘要H(UC)传输到第二设备30。HF1解密电路6利用设备唯一ID(UC),解密从第二设备30传输的经加密的加密密钥HF1,并获取加密密钥HF1。
这些电路块可以分别作为独立的电路块内置在MCU21中,或作为一个加密算术加速器来实现。此外,这些电路块还可以部分地或完全地使用内置在MCU21中的CPU(中央处理单元),诸如闪存(注册商标)、SRAM等等之类的非易失性存储器,通过软件的功能来实现。唯一数据生成单元(PUF)1在被CPU用作工作区的SRAM通电时读取初始值,并将读取的初始值定义为设备唯一数据UD。
第二设备30配置有用于生成一对助手数据和设备唯一ID的生成电路3,摘要生成电路4_2、比较器电路5,以及HF2生成电路7。HF2生成电路7包括用于将HF1加密为加密密钥的加密电路8。生成电路3根据从第一设备(20,21)所提供的设备唯一数据UD,生成一对助手数据HD和设备唯一ID(UC)。对于包括生成环境导致的波动,即,错误(比特错误)的设备唯一数据UD,可以通过使用助手数据HD来吸收波动(纠正错误),并生成对应的设备唯一ID(UC)。具有该功能的电路的示例是第一设备(20,21)中所包括的唯一ID生成电路2。将由生成电路3所生成的助手数据HD传输到第一设备(20,21)的唯一ID生成电路2。将由生成电路3所生成的设备唯一ID(UC)提供到摘要生成电路4_2,以生成摘要H(UC)。将所生成的摘要H(UC)发送到比较器电路5,并将其与由第一设备(20,21)的摘要生成电路4_1所生成的摘要H(UC)进行比较。比较器电路5配置有,例如,CRC(循环冗余校验)电路。当比较器电路5的比较结果是两个摘要被发现是一致的时候,将使能信号输出到HF2生成电路7。当确认两个摘要一致时,HF2生成电路7将加密密钥HF1发送到加密电路8,并通过将设备唯一ID(UC)用为加密密钥进行加密而生成散列函数HF2,作为加密的加密密钥Enc(HF1)。将散列函数HF2传输到第一设备(20,21)的HF1解密电路6。
图3是示出了根据实施例2的加密密钥提供方法的顺序图。
读取器/写入器22的操作员设置IC卡并执行用户认证。例如,操作员输入用户ID和密码。将认证信息从读取器/写入器22传输到加密密钥管理设备30。加密密钥管理设备30根据传输的认证信息,进行认证,当操作员被认证为有效用户时,激活会话。在操作员被认证为有效用户之前,从读取器/写入器22到MCU21的访问,例如,对MCU21中的存储器和寄存器的读取被禁止。
当激活会话时,加密密钥管理设备30通过读取器/写入器22向MCU21发出设备唯一数据读取命令。作为响应,MCU21生成设备唯一数据(UD),并通过读取器/写入器22,将设备唯一数据(UD)传输到加密密钥管理设备30。在下文,MCU21和加密密钥管理设备30之间的通信都是通过读取器/写入器22执行的。然而,以下的说明在省略短语“通过读取器/写入器22”的情况下进行。加密密钥管理设备30根据传输的设备唯一数据(UD),生成一对助手数据HD和设备唯一ID(UC)。加密密钥管理设备30只将助手数据HD首先传输到MCU21。MCU21将传输的助手数据HD写入到非易失性存储器等等,并根据助手数据HD和在MCU21中所生成的设备唯一数据UD,生成设备唯一ID(UC)。校正设备唯一数据UD中所包括的错误(比特错误),并生成高可重复性的设备唯一ID(UC)。将所生成的设备唯一ID(UC)制成摘要,并将其作为消息摘要H(UC),传输到加密密钥管理设备30。加密密钥管理设备30根据以前生成的设备唯一ID(UC),预先生成摘要H(UC),作为用于验证响应数据的期望值数据。加密密钥管理设备30确认传输的摘要H(UC)和由其本身在内部生成的摘要H(UC)一致。当一致时,加密密钥管理设备30生成散列函数HF2,并将它传输到MCU21。MCU21将传输的散列函数HF2写入到非易失性存储器。在此时刻之后,MCU21被允许解密并使用加密密钥HF1。根据上文所描述的过程,完成加密密钥从加密密钥管理设备30向MCU21的提供。
为了使MCU21使用加密密钥HF1,助手数据HD和散列函数HF2两者都是必需的。这是因为,设备唯一ID(UC)是必需的,以便通过解密散列函数HF2获取HF1,并因为需要通过使用助手数据HD,吸收内部地生成的设备唯一数据UD中存在的波动,以便获取设备唯一ID(UC)。如已经说明的,如果助手数据HD和散列函数HF2两者同时传输,则会产生安全缺陷,逃避对于写入加密密钥的收费的不正当的行为将被允许。例如,当MCU21的用户和读取器/写入器22的操作员是恶意的,如果助手数据HD和散列函数HF2两者同时传输,则通过向加密密钥管理设备30报告虚假的写入失败,逃避对于写入加密密钥的收费是可能的,尽管可能从该时间将加密密钥HF1用于MCU21中。另一方面,根据图3中所示出的加密密钥提供方法,可以解决本问题。在MCU21使用加密密钥HF1所需的两个参数助手数据HD和散列函数HF2中,只有助手数据HD被首先写入MCU21中。在利用摘要H(UC)确认MCU21可以利用所提供的助手数据HD生成适当的设备唯一ID(UC)之后,散列函数HF2被作为另一个参数来传输。对摘要H(UC)的确认充当证明真正的MCU21的认证。摘要H(UC)对应于认证中的响应数据的回复。即使系统被配置为照原样回复设备唯一ID(UC),也在理论上解决了问题。然而,产生了另一个安全缺陷:设备唯一ID(UC)会由于其他攻击而被泄露。可以利用设备唯一ID(UC)的摘要作出回复,而不是照原样回复设备唯一ID(UC),来进一步提高安全性。
<应用于车辆的电系统的加密密钥提供系统>
图8是示出了应用于车辆的电系统的加密密钥提供系统的数据流图。
其中安装了根据本实施例的MCU21_1的ECU24_1,与其中安装了另一MCU21_2的ECU24_2通过车载LAN(局域网)26耦合。车载LAN26是,例如多个ECU耦合到的CAN(控制器区域网络)和FlexRay,它们相互进行通信。在图8中,为简明起见,只示出了两个ECU24_1和24_2。即使它是车载LAN26,其也有可能受到黑客等的攻击。例如,从外部接管CAN并且控制制动和灯的攻击案件在最近几年被报告出。为了通过提供阻止这样的攻击的性能从而提高安全性,采用了加密通信。MCU21_1和MCU21_2分别配备有内置的通信接口25_1和25_2,它们使用加密密钥HF1,执行消息的加密与解密。ECU24_1是车辆的门的ECU,ECU24_2是控制面板的ECU。当更换了门时,为了再次允许在控制面板和门之间有加密通信,需要将相同加密密钥HF1写入到更换的门的ECU24_1中。上文所描述的门的更换可能在与车辆制造厂、经销商等等相比具有更低的安全环境的修配厂中执行。因此,在不加密的情况下,提供加密密钥HF1(其是高保密性的密钥)是有危险的。因此,读取器/写入器22耦合到MCU21_1,并从加密密钥管理设备30写入加密密钥。MCU21_1和读取器/写入器22基于,例如OBD-II,与连接电缆23耦合。加密密钥管理设备30是诸如服务器之类的外部设备,并安装在安全环境中,并通过诸如因特网之类的网络31被读取器/写入器22访问。
MCU21_1配置有唯一数据生成单元(PUF)1_1,通过在上文所描述的实施例中所说明的加密密钥提供方法来写入加密密钥HF1。对MCU的认证使用由唯一数据生成单元(PUF)1_1所生成的设备唯一数据UD来执行,并应用根据实施例的加密密钥提供方法。因此,即使读取器/写入器22的操作员等是恶意用户,也可以安全地写入加密密钥HF1。安装在其他ECU上的MCU,例如,MCU21_2,可以类似地配置。
不仅实施例2,而且所有其他实施例1,3,以及4可以适用于应用在图8中所示出的车辆的电系统的加密密钥提供系统。
<应用于网络终端的加密密钥提供系统>
图9是示出了应用于网络终端的加密密钥提供系统的数据流图。
图9中所示出的网络终端20通过诸如因特网之类的网络31耦合到内容服务器30。网络终端20配置有MCU21、网络接口27,以及闪存29。MCU21配置有唯一数据生成单元(PUF)1,以及用于通过加密密钥HF1来解密密码的解密电路28。由PUF1所生成的设备唯一数据UD通过网络接口27,放在网络31中的数据包(packet)中,并传输到服务器30。服务器30将加密密钥HF1提供给MCU21,与上文所描述的加密密钥提供方法的情况相同。利用加密密钥HF1加密的内容存储在闪存29中。MCU21通过解密电路28来解密密码,并使用相关的内容。
网络终端20是,例如电子词典,当用户购买新内容时,应用本实施例来增强安全性。将购买新内容的用户通过网络31从内容服务器30下载内容,并将它们存储在自己的闪存29中。内容可以通过封装介质等等提供,而不通过网络。由于内容是利用加密密钥HF1加密的,因此,用户在获取加密密钥HF1之前是不能使用该内容的。当用户向内容服务器30表示出对于相关内容的购买意图时,响应于该意图,内容服务器30从MCU21读取设备唯一数据UD,并将加密密钥HF1提供到MCU21,与上文所描述的加密密钥提供方法的情况相同。用户只有在MCU21中写入加密密钥HF1之后才可以使用相关的内容。
如上文所描述的,对MCU21的认证是利用由唯一数据生成单元(PUF)1所生成的设备唯一数据UD执行的。因此,可以安全地写入加密密钥HF1。
不仅实施例2,而且所有其他实施例1,3,以及4可以适用于应用于图9中所示出的网络终端的加密密钥提供系统。
(实施例3)
<两组设备唯一ID和助手数据>
图4是示出了根据实施例3的加密密钥提供系统的数据流图。
与根据图2中所示出的实施例2的加密密钥提供系统的差异在于:给第一设备(20,21)提供了两个唯一ID生成电路2_1、2_2,以及HF2解密电路10。差异还在于:在第二设备30中,助手数据与设备唯一ID生成电路3生成两组助手数据HD1和设备唯一ID-1(UC1)以及助手数据HD2和设备唯一ID-2(UC2),而且HF2生成电路7进一步配备有合并电路9。助手数据HD1对应于设备唯一ID-1(UC1),助手数据HD2对应于设备唯一ID-2(UC2)。对于一段由唯一数据生成单元(PUF)1所生成的设备唯一数据UD,当使用助手数据HD1时,可以生成设备唯一ID-1(UC1),当使用助手数据HD2时,可以生成设备唯一ID-2(UC2)。唯一ID生成电路2_1和2_2分别具有上文所描述的功能。助手数据HD1和助手数据HD2,以及设备唯一ID-1(UC1)和设备唯一ID-2(UC2)分别具有不同的值。HF2生成电路7中所包括的合并电路9是组合加密的HF1(Enc(HF1))和助手数据HD2,并执行规定的编码的电路。HF2解密电路10是执行相反的处理(解码)并分离加密的HF1(Enc(HF1))和助手数据HD2的电路。配置的其他部分与实施例2的那些相同;因此,省略了其说明。
图5是示出了根据实施例3的加密密钥提供方法的顺序图。
从用户认证和会话激活直到响应于来自加密密钥管理设备30的设备唯一数据读取命令,MCU21生成设备唯一数据(UD)并通过读取器/写入器22将它传输到加密密钥管理设备30的顺序,与参考图3说明的实施例2的顺序相同,。
利用传输的设备唯一数据(UD),加密密钥管理设备30生成两对助手数据和设备唯一ID,即,一对相互对应的助手数据HD1和设备唯一ID-1(UC1),以及另一对相互对应的助手数据HD2和设备唯一ID-2(UC2)。加密密钥管理设备30首先只将助手数据HD1传输到MCU21。MCU21将传输的助手数据HD1写入到非易失性存储器等,并根据助手数据HD1和在MCU21中所生成的设备唯一数据UD,生成设备唯一ID-1(UC1)。通过摘要生成电路4_3,将所生成的设备唯一ID-1(UC1)制成摘要,并将其作为消息摘要H(UC1),传输到加密密钥管理设备30。加密密钥管理设备30根据以前生成的设备唯一ID-1(UC1),预先生成摘要H(UC1),作为用于验证响应数据的期望值数据。加密密钥管理设备30确认传输的摘要H(UC1)和由其本身在内部生成的摘要H(UC1)一致。当一致时,加密密钥管理设备30生成散列函数HF2,并将它传输到MCU21。散列函数HF2是加密HF1(Enc(HF1))与助手数据HD2被组合并且受到规定编码的数据,其中加密的HF1(Enc(HF1))利用设备唯一ID-2(UC2)。MCU21将传输的散列函数HF2存储到非易失性存储器。通过HF2解密电路10,MCU21将散列函数HF2分离为加密的HF1(Enc(HF1))和助手数据HD2。将助手数据HD2输入到唯一ID生成电路2_2,而唯一ID生成电路2_2根据设备唯一数据(UD)生成设备唯一ID-2(UC2)。利用所生成的设备唯一ID-2(UC2),HF1解密电路6解密加密的HF1(Enc(HF1)),以获取加密密钥HF1。在此时刻之后,MCU21被允许解密并使用加密密钥HF1。根据上文所描述的过程,完成加密密钥从加密密钥管理设备30向MCU21的提供。
也在本实施例中,与实施例2的情况相同,在助手数据HD和散列函数HF2中,首先只将助手数据HD传输到MCU21以认证MCU21,并在认证之后,传输作为另一参数的散列函数HF2,其中助手数据HD和散列函数HF2是MCU21使用加密密钥HF1所需的两个参数。根据上文所描述的过程,可以防止对于加密密钥的不正当的获取。
此外,还分离用于认证的设备唯一ID-1(UC1)和用于加密加密密钥HF1的设备唯一ID-2(UC2),因此,可以进一步提高安全性。
(实施例4)
<通过散列函数的认证>
在实施例2和实施例3中,在助手数据HD和散列函数HF2中,首先只将助手数据HD传输到MCU21以认证MCU21,并在认证之后,传输作为另一参数的散列函数HF2,其中助手数据HD和散列函数HF2是MCU21使用加密密钥HF1所需的两个参数。在本实施例4中,相反,包括加密状态下的关于加密密钥HF1的信息的散列函数HF2被首先写入MCU21中,在认证之后,传输作为另一参数的助手数据HD。根据本过程,类似地,可以防止对于加密密钥的不正当的获取。
图6是示出了根据实施例4的加密密钥提供系统的数据流图。
第一设备(20,21)配置有唯一数据生成单元(PUF)1、唯一ID生成电路2、摘要生成电路4_5,以及HF1解密电路6。将由PUF1所生成的设备唯一数据UD传输到第二设备30的助手数据和设备唯一ID生成电路3(生成一对助手数据和设备唯一ID),并提供给第一设备(20,21)的唯一ID生成电路2。摘要生成电路4_5利用规定的散列函数,生成对于由第二设备30传输的散列函数HF2的消息摘要H(HF2)。将所生成的摘要H(HF2)传输到第二设备30的比较器电路5。唯一ID生成电路2根据由PUF1所生成的设备唯一数据UD和从第二设备30所提供的助手数据HD,生成设备唯一ID(UC)。HF1解密电路6利用设备唯一ID(UC),解密从第二设备30传输的作为散列函数HF2的加密的加密密钥HF1,并获取加密密钥HF1。
第二设备30配置有用于生成一对助手数据和设备唯一ID的生成电路3,HF2生成电路7、摘要生成电路4_6、比较器电路5,以及传输使能电路11。生成电路30根据由第一设备(20,21)所提供的设备唯一数据UD,生成一对助手数据HD和设备唯一ID(UC)。将在生成电路3中所生成的设备唯一ID(UC)输出到HF2生成电路7,并生成作为加密的加密密钥Enc(HF1)的散列函数HF2。将散列函数HF2传输到第一设备(20,21),通过摘要生成电路4_5,作为响应数据,生成消息摘要H(HF2)。将在第二设备30中所生成的散列函数HF2提供到摘要生成电路4_6,以生成摘要H(HF2)。将所生成的摘要H(HF2)发送到比较器电路5,并将其与作为第一设备(20,21)的响应数据所生成的摘要H(HF2)进行比较。当比较器电路5的比较结果是:两个摘要被发现是一致的,将使能信号输出到传输使能电路11。当确认两个摘要一致时,传输使能电路11将助手数据HD传输到第一设备(20,21)的唯一ID生成电路2。如此,即使通过首先传输HF2来执行认证,也可能获得如在实施例2和3中那样的相同安全度。
图7是示出了根据实施例4的加密密钥提供方法的顺序图。
从用户认证和会话激活直到响应于来自加密密钥管理设备30的设备唯一数据读取命令,MCU21生成设备唯一数据(UD)并通过读取器/写入器22将它传输到加密密钥管理设备30的顺序,与参考图3说明的实施例2的序列顺序相同。
加密密钥管理设备30根据传输的设备唯一数据(UD),生成一对助手数据HD和设备唯一ID(UC)。此外,加密密钥管理设备30生成散列函数HF2,并将它传输到MCU21。MCU21将传输的散列函数HF2写入到非易失性存储器。MCU21通过摘要生成电路4_5,根据传输的散列函数HF2生成消息摘要H(HF2),并对加密密钥管理设备30作出响应。加密密钥管理设备30通过将作为响应数据的摘要H(HF2)与通过摘要生成电路由加密密钥管理设备30其自身生成的摘要H(HF2)进行比较,来确认摘要。当确认摘要的一致时,将助手数据HD从加密密钥管理设备30传输到MCU21。MCU21将助手数据HD写入到非易失性存储器。MCU21的唯一ID生成电路2根据本助手数据HD和在内部生成的设备唯一数据UD,生成设备唯一ID(UC)。将所生成的设备唯一ID(UC)输入到HF1解密电路6。传输的散列函数HF2已经被输入到HF1解密电路6。因此,HF1解密电路6可以通过利用输入的设备唯一ID(UC)解密散列函数HF2,来获取加密密钥。在此时刻之后,MCU21被允许解密并使用加密密钥HF1。根据上文所描述的过程,完成加密密钥从加密密钥管理设备30向MCU21的提供。
如上文所描述的,在本实施例中,在助手数据HD和散列函数HF2中,首先在MCU21中只写入散列函数HF2,其中助手数据HD和散列函数HF2是MCU21使用加密密钥HF1所需的两个参数。不同于实施例2和3,本实施例中的MCU21根据散列函数HF2生成摘要H(HF2)作为响应数据,并将它作为响应传输到加密密钥管理设备30。在确认此摘要H(HF2)的一致之后,加密密钥管理设备30传输作为另一参数的助手数据。对摘要H(HF2)的确认充当证明真正的MCU21的认证。由于MCU21只有在传输助手数据HD之后才被允许使用加密密钥HF1,因此,可以防止对于加密密钥的不正当的获取。
如上文所描述的,基于实施例具体描述了本发明人完成的发明。然而,无论如何强调都不过分,本发明不局限于实施例,并且在不偏离主旨的范围内,可以进行各种改变。
例如,第一设备(20,21)和第二设备30可以通过以具体形式的任何类型的实施例来实现。在优选的情况下,MCU21包括包围功能,并通过单个芯片形成。可替代地,仍然优选的是MCU21被包含在用于实现另一功能的电路的一部分内。

Claims (18)

1.一种加密密钥提供方法,用于将加密密钥从第二设备提供到使用密码的第一设备,所述第二设备管理所述密码的所述加密密钥,
其中,所述第一设备生成由制造变化唯一定义的设备唯一数据,
其中,所述第二设备基于所述设备唯一数据,生成一对助手数据和设备唯一ID,所述设备唯一ID是单独定义的所述第一设备所特有的代码,通过使用对应的助手数据,吸收生成环境所导致的所述设备唯一数据的波动,
其中,所述第二设备根据所述设备唯一ID和所述加密密钥生成散列函数,
其中,所述第一设备基于所述散列函数和所述设备唯一ID,解密所述加密密钥,以及
其中,所述加密密钥提供方法包括:
第一步骤,所述第一设备生成所述设备唯一数据,并将所述设备唯一数据提供到所述第二设备;
第二步骤,所述第二设备根据所提供的所述设备唯一数据,生成一对助手数据和为所述第一设备唯一地定义的设备唯一ID;
第三步骤,所述第二设备根据所生成的所述设备唯一ID和所述加密密钥生成散列函数;
第四步骤,从所述第二设备向所述第一设备传输所述助手数据和所述散列函数中的一个;
第五步骤,所述第一设备基于在所述第四步骤接收到的所述助手数据和所述散列函数中的一个,将响应数据传输到所述第二设备;
第六步骤,所述第二设备通过确认在所述第五步骤接收到的所述响应数据的有效性,来认证所述第一设备;
第七步骤,在所述第六步骤认证所述第一设备之后,所述第二设备将所述助手数据和所述散列函数中的另一个传输到所述第一设备;以及
第八步骤,所述第一设备基于由其本身所生成的所述设备唯一数据和在所述第四步骤或所述第六步骤中接收到的所述助手数据和所述散列函数,解密所述加密密钥。
2.根据权利要求1所述的加密密钥提供方法,
其中,在所述第四步骤,所述第二设备将所述助手数据传输到所述第一设备,
其中,在所述第五步骤,所述第一设备根据接收到的助手数据再现所述设备唯一ID,基于再现的设备唯一ID,创建所述响应数据,并将所述响应数据传输到所述第二设备,
其中,在所述第六步骤,所述第二设备通过将所述响应数据与期望值数据进行比较,来确认所述响应数据的所述有效性,其中所述期望值数据是基于在所述第二步骤生成的所述设备唯一ID的;并且
其中,在所述第七步骤,在所述第六步骤中认证所述第一设备之后,所述第二设备将所述散列函数传输到所述第一设备。
3.根据权利要求2所述的加密密钥提供方法,
其中,在所述第二步骤,根据所提供的设备唯一数据,所述第二设备生成为所述第一设备唯一地定义的第一设备唯一ID和用于生成所述第一设备唯一ID的第一助手数据,以及不同于所述第一设备唯一ID的第二设备唯一ID和用于生成所述第二设备唯一ID的第二助手数据,
其中,在所述第三步骤,所述第二设备根据所述第二设备唯一ID和所述加密密钥,生成散列函数,
其中,在所述第四步骤,所述第二设备将所述第一助手数据传输到所述第一设备,
其中,在所述第五步骤,所述第一设备根据所述接收到的第一助手数据再现所述设备唯一ID,基于再现的第一设备唯一ID,创建所述响应数据,并将所述响应数据传输到所述第二设备,
其中,在所述第六步骤,所述第二设备通过将所述响应数据与基于在所述第二步骤所生成的所述第一设备唯一ID的所述期望值数据进行比较,来确认所述响应数据的所述有效性。
其中,在所述第七步骤,在所述第六步骤中认证所述第一设备之后,所述第二设备将所述第二助手数据进一步传输到所述第一设备,以及
其中,在所述第八步骤,所述第一设备基于由其本身所生成的所述设备唯一数据,以及在第所述七步骤接收到的所述第二助手数据,生成所述第二设备唯一ID,并根据再现的第二设备唯一ID和在所述第七步骤中接收到的散列函数,解密所述加密密钥。
4.根据权利要求3所述的加密密钥提供方法,
其中,在所述第五步骤,所述第一设备利用不同于所述散列函数的另一散列函数,创建所述再现的第一设备唯一ID的摘要,作为所述响应数据,以及
其中,在所述第六步骤,所述第二设备利用与所述另一散列函数相同的散列函数,创建在所述第二步骤所生成的所述第一设备唯一ID的摘要,作为所述期望值数据,并通过将所述响应数据与所述期望值数据进行比较,确认所述响应数据的所述有效性。
5.根据权利要求3所述的加密密钥提供方法,
其中,在所述第七步骤,所述第二设备组合并编码所述散列函数和所述第二助手数据,并将所编码的数据传输到所述第一设备,以及
其中,在所述第八步骤,所述第一设备通过解码所述编码的数据,解密所述散列函数和所述第二助手数据。
6.根据权利要求1所述的加密密钥提供方法,
其中,在所述第四步骤,所述第二设备将所述散列函数传输到所述第一设备,
其中,在所述第五步骤,所述第一设备基于所述接收到的散列函数,创建所述响应数据,并将所述响应数据传输到所述第二设备,
其中,在所述第六步骤,所述第二设备通过将所述响应数据与基于在所述第三步骤中所生成的所述散列函数的所述期望值数据进行比较,来确认所述响应数据的所述有效性,以及
其中,在所述第七步骤,在所述第六步骤中认证所述第一设备之后,所述第二设备将所述助手数据传输到所述第一设备。
7.一种半导体集成电路,包括:
唯一数据生成单元,所述唯一数据生成单元可操作以生成由制造变化唯一定义的设备唯一数据;以及
加密密钥解密单元,所述加密密钥解密单元可操作以通过使用由外部设备基于所述设备唯一数据所生成的并从所述外部设备提供的加密密钥信息,来解密加密密钥,
其中,所述半导体集成电路通过所述唯一数据生成单元,来生成所述设备唯一数据,并将所述设备唯一数据提供到所述外部设备,
其中,所述外部设备从所述半导体集成电路接收所述设备唯一数据,并根据所接收到的设备唯一数据,生成助手数据和设备唯一ID,所述设备唯一ID是单独定义的所述半导体集成电路所特有的代码,通过使用所述对应的助手数据,吸收所述生成环境所导致的所述设备唯一数据的波动,并且所述外部设备将所述助手数据传输到所述半导体集成电路,
其中,所述半导体集成电路接收所述助手数据,根据所接收到的助手数据和所述设备唯一数据,生成对应的设备唯一ID,基于所生成的设备唯一ID生成响应数据,并将所述响应数据传输到所述外部设备,
其中,所述外部设备接收所述响应数据,将所接收到的响应数据与根据由其本身所生成的所述设备唯一ID生成的期望值数据进行比较,
其中,当所述比较结果一致时,所述外部设备根据所述设备唯一ID和所述加密密钥生成散列函数,并将所述散列函数传输到所述半导体集成电路,以及
其中,所述半导体集成电路接收所述散列函数,并根据由其本身所生成的所述设备唯一ID和所接收到的散列函数,来解密所述加密密钥。
8.根据权利要求7所述的半导体集成电路,
其中,所述外部设备根据所接收到的设备唯一数据,生成第一和第二助手数据以及第一和第二设备唯一ID,所述外部设备将所述第一助手数据传输到所述半导体集成电路,
其中,所述半导体集成电路接收所述第一助手数据,根据所接收到的第一助手数据和所述设备唯一数据生成对应的第一设备唯一ID,基于所生成的第一设备唯一ID生成响应数据,并将所述响应数据传输到所述外部设备,
其中,所述外部设备接收所述响应数据,将所接收到的响应数据与根据由其本身所生成的所述第一设备唯一ID生成的所述期望值数据进行比较,
其中,当所述比较结果一致时,所述外部设备根据所述第二设备唯一ID和所述加密密钥生成散列函数,并将所述第二助手数据和所述散列函数传输到所述半导体集成电路,以及
其中,所述半导体集成电路接收所述第二助手数据和所述散列函数,根据所接收到的第二助手数据和所述设备唯一数据生成第二设备唯一ID,并根据所述所生成的第二设备唯一ID和所接收到的散列函数,解密所述加密密钥。
9.根据权利要求8所述的半导体集成电路,
其中,所述半导体集成电路利用不同于所述散列函数的另一散列函数,创建所再现的第一设备唯一ID的摘要作为所述响应数据,以及
其中,所述外部设备利用与所述另一散列函数相同的散列函数,创建由其本身所生成的所述第一设备唯一ID的摘要,作为所述期望值数据,并将所述响应数据与所述期望值数据进行比较。
10.根据权利要求8所述的半导体集成电路,
其中,所述外部设备通过组合并编码所述散列函数和所述第二助手数据,生成加密密钥再现数据,并将所述加密密钥再现数据传输到所述半导体集成电路,以及
其中,所述半导体集成电路接收所述加密密钥再现数据,并通过解码所接收到的加密密钥再现数据,来解密所述散列函数和所述第二助手数据。
11.根据权利要求7所述的半导体集成电路,
其中,所述半导体集成电路耦合到能够与所述外部设备进行通信的读取器/写入器,并通过所述读取器/写入器与所述外部设备执行数据的传输和接收。
12.根据权利要求7所述的半导体集成电路,
其中,所述半导体集成电路在配备有能够与所述外部设备进行通信的接口的终端设备中实现,并通过所述终端设备,与所述外部设备执行数据的传输和接收。
13.根据权利要求7所述的半导体集成电路,进一步包括:
加密电路和使用所解密的加密密钥的解密电路;以及
加密通信接口。
14.根据权利要求7所述的半导体集成电路,进一步包括:
使用所解密的加密密钥的密码解密电路,
其中,所述半导体集成电路访问用于存储使用与所述加密密钥相同的加密密钥加密的数据的非易失性存储器,并将存储在所述非易失性存储器中的所述数据提取到所述密码解密电路。
15.一种加密密钥管理设备,耦合到终端设备,所述加密密钥管理设备包括:唯一数据生成单元,用于生成由制造变化唯一地定义的设备唯一数据;以及加密密钥解密单元,用于从加密密钥信息解密加密密钥,所述加密密钥管理设备可操作以根据所述设备唯一数据,生成所述加密密钥信息,并将所述加密密钥信息提供到所述终端设备,
其中,所述终端设备通过所述唯一数据生成单元来生成所述设备唯一数据,并将所述设备唯一数据提供到所述加密密钥管理设备,
其中,所述加密密钥管理设备从所述终端设备接收所述设备唯一数据,并根据所接收到的设备唯一数据生成助手数据和设备唯一ID,所述设备唯一ID是单独定义的所述终端设备所特有的代码,通过使用所述对应的助手数据,吸收生成环境所导致的所述设备唯一数据的波动,所述加密密钥管理设备将所述助手数据传输到所述终端设备,
其中,所述终端设备接收所述助手数据,根据所接收到的助手数据和所述设备唯一数据生成对应的设备唯一ID,基于所生成的设备唯一ID生成响应数据,并将所述响应数据传输到所述加密密钥管理设备,
其中,所述加密密钥管理设备接收所述响应数据,并且将所接收到的响应数据与根据由其本身所生成的所述设备唯一ID生成的期望值数据进行比较,
其中,当所述比较结果一致时,所述加密密钥管理设备根据所述设备唯一ID和所述加密密钥生成散列函数,并将所述散列函数传输到所述终端设备,以及
其中,所述终端设备接收所述散列函数,并根据由其本身所生成的所述设备唯一ID和所述接收到的散列函数,来解密所述加密密钥。
16.根据权利要求15所述的加密密钥管理设备,
其中,所述加密密钥管理设备根据所接收到的设备唯一数据,生成第一和第二助手数据以及第一和第二设备唯一ID,所述加密密钥管理设备将所述第一助手数据传输到所述终端设备,
其中,所述终端设备接收所述第一助手数据,根据所接收到的第一助手数据和所述设备唯一数据生成对应的第一设备唯一ID,根据所生成的第一设备唯一ID生成响应数据,并将所述响应数据传输到所述加密密钥管理设备,
其中,所述加密密钥管理设备接收所述响应数据,将所接收到的响应数据与根据由其本身所生成的所述第一设备唯一ID生成的所述期望值数据进行比较,
其中,当所述比较结果一致时,所述加密密钥管理设备根据所述第二设备唯一ID和所述加密密钥生成散列函数,并将所述第二助手数据和所述散列函数传输到所述终端设备,以及
其中,所述终端设备接收所述第二助手数据和所述散列函数,并根据所接收到的第二助手数据和所述设备唯一数据生成第二设备唯一ID,并根据由其本身所生成的所述第二设备唯一ID和所接收到的散列函数,解密所述加密密钥。
17.根据权利要求16所述的加密密钥管理设备,
其中,所述终端设备利用不同于所述散列函数的另一散列函数,创建所再现的第一设备唯一ID的摘要作为所述响应数据,以及
其中,所述加密密钥管理设备利用与所述另一散列函数相同的散列函数,创建由其本身所生成的所述第一设备唯一ID的摘要,作为所述期望值数据,并将所述响应数据与所述期望值数据进行比较。
18.根据权利要求16所述的加密密钥管理设备,
其中,所述加密密钥管理设备通过组合并编码所述散列函数和所述第二助手数据,生成加密密钥再现数据,并将所述加密密钥再现数据传输到所述终端设备,以及
其中,所述终端设备接收所述加密密钥再现数据,并通过解码所接收到的加密密钥再现数据,来解密所述散列函数和所述第二助手数据。
CN201410493896.1A 2013-09-24 2014-09-24 加密密钥提供方法、半导体集成电路及加密密钥管理设备 Active CN104468094B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-196532 2013-09-24
JP2013196532A JP2015065495A (ja) 2013-09-24 2013-09-24 暗号鍵供給方法、半導体集積回路および暗号鍵管理装置

Publications (2)

Publication Number Publication Date
CN104468094A true CN104468094A (zh) 2015-03-25
CN104468094B CN104468094B (zh) 2018-09-14

Family

ID=52690954

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410493896.1A Active CN104468094B (zh) 2013-09-24 2014-09-24 加密密钥提供方法、半导体集成电路及加密密钥管理设备

Country Status (4)

Country Link
US (1) US9325496B2 (zh)
JP (1) JP2015065495A (zh)
CN (1) CN104468094B (zh)
TW (1) TW201532417A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104836669A (zh) * 2015-05-08 2015-08-12 东南大学 一种基于sram puf的安全认证方法及一种终端、认证系统
CN106778205A (zh) * 2015-10-28 2017-05-31 德州仪器公司 运用物理不可克隆函数的无数据库验证
CN107493172A (zh) * 2016-06-13 2017-12-19 上海复旦微电子集团股份有限公司 无线射频认证系统及认证方法
CN107646130A (zh) * 2015-05-27 2018-01-30 耐瑞唯信有限公司 用于生成电子电路固有的值的方法、生成该值的电子电路以及用于使用这样的值的方法
CN109428720A (zh) * 2017-08-24 2019-03-05 上海复旦微电子集团股份有限公司 一种数据加密方法、解密方法、加密系统及解密系统
CN109428712A (zh) * 2017-08-24 2019-03-05 上海复旦微电子集团股份有限公司 数据加、解密方法及数据加、解密系统
CN111131130A (zh) * 2018-10-30 2020-05-08 北京忆芯科技有限公司 密钥管理方法及系统
CN112272094A (zh) * 2020-10-23 2021-01-26 国网江苏省电力有限公司信息通信分公司 基于puf和cpk算法的物联网设备身份认证方法、系统及存储介质
CN112448941A (zh) * 2019-09-05 2021-03-05 英飞凌科技股份有限公司 认证系统和用于认证微控制器的方法
US11477013B2 (en) 2019-11-29 2022-10-18 Alipay (Hangzhou) Information Technology Co., Ltd. Methods and devices for cryptographic key management based on blockchain system
CN117714055A (zh) * 2024-02-05 2024-03-15 合肥工业大学 一种基于身份信息的车内网络通信方法

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105722067B (zh) * 2014-12-02 2019-08-13 阿里巴巴集团控股有限公司 移动终端上数据加/解密方法及装置
JP6173411B2 (ja) 2014-12-12 2017-08-02 Kddi株式会社 管理装置、車両、管理システム、管理方法、及びコンピュータプログラム
WO2016093368A1 (ja) * 2014-12-12 2016-06-16 Kddi株式会社 管理装置、鍵生成装置、車両、メンテナンスツール、管理システム、管理方法、及びコンピュータプログラム
WO2016190936A1 (en) * 2015-03-09 2016-12-01 Massachusetts Institute Of Technology Waveguide with dielectric light reflectors
US10735200B2 (en) * 2015-03-27 2020-08-04 Comcast Cable Communications, Llc Methods and systems for key generation
US10069625B2 (en) 2015-09-22 2018-09-04 Quanta Computer Inc. System and method for automatic key generation for self-encrypting drives
US10256969B1 (en) * 2015-10-23 2019-04-09 The Heil Co. Scrambling data for use with vehicle communication protocol
JP6190443B2 (ja) 2015-12-28 2017-08-30 Kddi株式会社 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
WO2017123631A1 (en) * 2016-01-11 2017-07-20 Stc.Unm A privacy-preserving, mutual puf-based authentication protocol
US10262164B2 (en) 2016-01-15 2019-04-16 Blockchain Asics Llc Cryptographic ASIC including circuitry-encoded transformation function
US10454677B1 (en) * 2016-02-24 2019-10-22 United Services Automobile Associate (USAA) Cryptographic key generation from biometric data
US10097348B2 (en) * 2016-03-24 2018-10-09 Samsung Electronics Co., Ltd. Device bound encrypted data
CN107493253B (zh) * 2016-06-13 2020-09-22 上海复旦微电子集团股份有限公司 无线射频设备、服务器及无线射频通信系统
JP6471130B2 (ja) * 2016-09-20 2019-02-13 ウィンボンド エレクトロニクス コーポレーション 半導体装置およびセキュリティシステム
US11522725B2 (en) * 2017-03-29 2022-12-06 Board Of Regents, The University Of Texas System Reducing amount of helper data in silicon physical unclonable functions via lossy compression without production-time error characterization
JP6882678B2 (ja) * 2017-06-30 2021-06-02 富士通株式会社 衝突検出システムおよび衝突検出方法
EP3471334B1 (en) * 2017-10-10 2023-07-26 Nxp B.V. Method for configuring a transponder, transponder and base station
US10372943B1 (en) 2018-03-20 2019-08-06 Blockchain Asics Llc Cryptographic ASIC with combined transformation and one-way functions
US10404454B1 (en) 2018-04-25 2019-09-03 Blockchain Asics Llc Cryptographic ASIC for derivative key hierarchy
TWI663601B (zh) * 2018-07-23 2019-06-21 華邦電子股份有限公司 半導體裝置
KR102503373B1 (ko) * 2018-09-12 2023-02-24 삼성전자주식회사 인증 채굴 회로, 이를 포함하는 전자 시스템 및 블록체인 네트워크의 형성 방법
US11240211B2 (en) * 2019-09-12 2022-02-01 Richard Benson System and method to leverage EDR, ECU, CAN and OBD data from vehicles by means of blockchain technology

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120321077A1 (en) * 2011-06-20 2012-12-20 Renesas Electronics Corporation Cryptographic communication system and cryptographic communication method
US20120324241A1 (en) * 2011-06-20 2012-12-20 Renesas Electronics Corporation Semiconductor device
CN102843234A (zh) * 2011-06-20 2012-12-26 瑞萨电子株式会社 半导体装置以及将数据写入到半导体装置的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001211153A (ja) * 2000-01-25 2001-08-03 Murata Mach Ltd 秘密鍵生成方法
US7139918B2 (en) * 2002-01-31 2006-11-21 International Business Machines Corporation Multiple secure socket layer keyfiles for client login support
US6993132B2 (en) * 2002-12-03 2006-01-31 Matsushita Electric Industrial Co., Ltd. System and method for reducing fraud in a digital cable network
KR20110071707A (ko) * 2009-12-21 2011-06-29 삼성전자주식회사 동영상 컨텐트 제공 방법 및 그 장치, 동영상 컨텐트 재생 방법 및 그 장치
US8972715B2 (en) * 2012-07-13 2015-03-03 Securerf Corporation Cryptographic hash function

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120321077A1 (en) * 2011-06-20 2012-12-20 Renesas Electronics Corporation Cryptographic communication system and cryptographic communication method
US20120324241A1 (en) * 2011-06-20 2012-12-20 Renesas Electronics Corporation Semiconductor device
CN102843234A (zh) * 2011-06-20 2012-12-26 瑞萨电子株式会社 半导体装置以及将数据写入到半导体装置的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
翁丽萍: "基于单向哈希链的Ad Hoc网络认证和密钥管理研究", 《中国优秀硕士学位论文全文数据库》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104836669B (zh) * 2015-05-08 2018-04-06 东南大学 一种基于sram puf的安全认证方法及一种终端、认证系统
CN104836669A (zh) * 2015-05-08 2015-08-12 东南大学 一种基于sram puf的安全认证方法及一种终端、认证系统
CN107646130A (zh) * 2015-05-27 2018-01-30 耐瑞唯信有限公司 用于生成电子电路固有的值的方法、生成该值的电子电路以及用于使用这样的值的方法
CN106778205A (zh) * 2015-10-28 2017-05-31 德州仪器公司 运用物理不可克隆函数的无数据库验证
CN107493172B (zh) * 2016-06-13 2020-07-17 上海复旦微电子集团股份有限公司 无线射频认证系统及认证方法
CN107493172A (zh) * 2016-06-13 2017-12-19 上海复旦微电子集团股份有限公司 无线射频认证系统及认证方法
CN109428720B (zh) * 2017-08-24 2021-09-21 上海复旦微电子集团股份有限公司 一种数据加密方法、解密方法、加密系统及解密系统
CN109428712A (zh) * 2017-08-24 2019-03-05 上海复旦微电子集团股份有限公司 数据加、解密方法及数据加、解密系统
CN109428720A (zh) * 2017-08-24 2019-03-05 上海复旦微电子集团股份有限公司 一种数据加密方法、解密方法、加密系统及解密系统
CN109428712B (zh) * 2017-08-24 2022-01-07 上海复旦微电子集团股份有限公司 数据加、解密方法及数据加、解密系统
CN111131130A (zh) * 2018-10-30 2020-05-08 北京忆芯科技有限公司 密钥管理方法及系统
CN111131130B (zh) * 2018-10-30 2022-04-22 北京忆芯科技有限公司 密钥管理方法及系统
CN112448941A (zh) * 2019-09-05 2021-03-05 英飞凌科技股份有限公司 认证系统和用于认证微控制器的方法
CN112448941B (zh) * 2019-09-05 2022-12-13 英飞凌科技股份有限公司 认证系统和用于认证微控制器的方法
US11477013B2 (en) 2019-11-29 2022-10-18 Alipay (Hangzhou) Information Technology Co., Ltd. Methods and devices for cryptographic key management based on blockchain system
CN112272094A (zh) * 2020-10-23 2021-01-26 国网江苏省电力有限公司信息通信分公司 基于puf和cpk算法的物联网设备身份认证方法、系统及存储介质
CN117714055A (zh) * 2024-02-05 2024-03-15 合肥工业大学 一种基于身份信息的车内网络通信方法
CN117714055B (zh) * 2024-02-05 2024-04-12 合肥工业大学 一种基于身份信息的车内网络通信方法

Also Published As

Publication number Publication date
CN104468094B (zh) 2018-09-14
US20150086016A1 (en) 2015-03-26
JP2015065495A (ja) 2015-04-09
TW201532417A (zh) 2015-08-16
US9325496B2 (en) 2016-04-26

Similar Documents

Publication Publication Date Title
CN104468094A (zh) 加密密钥提供方法、半导体集成电路及加密密钥管理设备
KR100670005B1 (ko) 모바일 플랫폼을 위한 메모리의 무결성을 원격으로 확인하는 확인장치 및 그 시스템 그리고 무결성 확인 방법
CN107566407B (zh) 一种基于USBkey的双向认证数据安全传输与存储方法
CN102595213B (zh) 可信电视终端安全认证方法和系统
CN102063592B (zh) 一种可信平台及其对硬件设备的控制方法
CN101176329B (zh) 通信协议和电子通信系统--特别是认证控制系统--及相应的方法
US9479329B2 (en) Motor vehicle control unit having a cryptographic device
US20170063853A1 (en) Data cipher and decipher based on device and data authentication
CN107306184A (zh) 以安全代码验证进行的消息认证
CN106357400A (zh) 建立tbox终端和tsp平台之间通道的方法以及系统
CN102457373A (zh) 手持设备双向验证系统及方法
CN114267100B (zh) 开锁认证方法、装置、安全芯片及电子钥匙管理系统
CN103269271A (zh) 一种备份电子签名令牌中私钥的方法和系统
CN108418834A (zh) 一种物联网设备身份验证方法
CN115314253B (zh) 数据处理方法、装置、系统、设备及作业机械
CN106506149A (zh) 一种tbox终端和tsp平台之间密钥生成方法以及系统
CN101510238B (zh) 一种文档库安全访问方法及系统
CN105191332B (zh) 用于在未压缩的视频数据中嵌入水印的方法和设备
CN113591109B (zh) 可信执行环境与云端通信的方法及系统
CN102916810A (zh) 传感器认证方法、系统和装置
CN103138923A (zh) 一种节点间认证方法、装置及系统
US10949527B2 (en) Semiconductor device, authentication system, and authentication method
CN103378966A (zh) 安全动态片上密钥编程
CN112182551B (zh) Plc设备身份认证系统和plc设备身份认证方法
US11546176B2 (en) System and method for authentication and cryptographic ignition of remote devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
CB02 Change of applicant information

Address after: Tokyo, Japan

Applicant after: Renesas Electronics Corporation

Address before: Kanagawa, Japan

Applicant before: Renesas Electronics Corporation

COR Change of bibliographic data
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant