CN112448941B - 认证***和用于认证微控制器的方法 - Google Patents
认证***和用于认证微控制器的方法 Download PDFInfo
- Publication number
- CN112448941B CN112448941B CN202010863187.3A CN202010863187A CN112448941B CN 112448941 B CN112448941 B CN 112448941B CN 202010863187 A CN202010863187 A CN 202010863187A CN 112448941 B CN112448941 B CN 112448941B
- Authority
- CN
- China
- Prior art keywords
- microcontroller
- controller
- public key
- key
- tamper
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0825—Key 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 asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- 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/3247—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 involving digital signatures
-
- 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/3263—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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/84—Vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Medical Informatics (AREA)
- Lock And Its Accessories (AREA)
- Storage Device Security (AREA)
Abstract
公开了一种认证***和用于认证微控制器的方法。该认证***包括具有唯一标识符(ID)和第一密钥对的微控制器,该第一密钥对包括微控制器私密密钥和微控制器公共密钥。微控制器被配置成存储唯一ID、第一密钥对、唯一ID的数字签名以及微控制器公共密钥的由第二密钥对的外部私密密钥来签名的数字证书,该数字签名使用第二密钥对的外部私密密钥来被生成。第二密钥对包括外部私密密钥和外部公共密钥。该认证***还包括控制器,该控制器被配置成使用外部公共密钥来对唯一ID执行第一真实性验证检查,并且使用外部公共密钥来对微控制器公共密钥执行第二真实性验证检查。
Description
技术领域
本公开内容通常涉及认证微控制器的一个或更多个方面。
背景技术
鉴于现代车辆的自动化和半导体内容的增加,机动车辆中的电子***的功能安全是重要的主题。期望部署在***中的安全关键部件具有可靠且安全的功能。
除了功能安全以外,网络安全已经成为车辆电子***中的重要方面。从电子产品设计的开始就不可避免地包括功能安全和机动车辆网络安全二者。功能安全已经达到成熟水平,但是网络安全相对较新。可能很快要求***件既安全又可靠。
密码术实现了机密性、真实性和数据完整性,并且将在功能安全、实时约束和能量消耗起重要作用的机动车辆半导体领域中变得更加突出。
对于车辆部件、网络和安全的后端通信中的安全设置,加密密钥的分发和管理起重要作用。沿不同实体建立信任成为确保车辆功能的基本前提。实体可以是电子控制单元(ECU)内的通信端点或ECU内的微控制器单元(MCU),或者可以是车辆外部的在例如因特网服务器或移动消费装置处的通信端点。实体由多个不同的供应商和销售商开发。
考虑到安全性概念依赖于初始加密密钥的可信赖性(即,机密性、真实性和完整性),因此将该初始加密密钥注入到车辆中——这形成信任的根源——是至关重要的步骤。也就是说,从该初始密钥得到其他密钥,这些其他密钥随后用于确保车辆功能并沿着MCU建立信任关系。另外,例如,如果部件已经被构建在复杂的***中,则在车辆制造过程中注入密钥可能导致很大的工作。另一方面,对于有准备的公司,在其生产期间将密钥注入单个芯片中会容易得多。
因此,可能需要一种能够部署用于加密功能的密钥材料的改进***。
发明内容
一个或更多个实施方式涉及一种认证***,该认证***包括具有唯一标识符(ID)和第一密钥对的微控制器,该第一密钥对包括微控制器私密密钥和微控制器公共密钥。微控制器被配置成存储唯一ID、第一密钥对、唯一ID的数字签名以及由第二密钥对的外部私密密钥来签名的微控制器公共密钥的数字证书,该数字签名使用第二密钥对的外部私密密钥来生成。第二密钥对包括外部私密密钥和外部公共密钥。认证***还包括控制器,该控制器被配置成使用外部公共密钥对唯一ID执行第一真实性验证检查,并使用外部公共密钥对微控制器公共密钥执行第二真实性验证检查。
一个或更多个实施方式涉及一种认证微控制器的方面的方法,该微控制器具有唯一标识符(ID)和第一密钥对,该第一密钥对包括微控制器私密密钥和微控制器公共密钥,其中,该微控制器存储唯一ID、第一密钥对、唯一ID的数字签名以及由第二密钥对的外部私密密钥来签名的微控制器公共密钥的数字证书,该数字签名使用第二密钥对的外部私密密钥来生成,并且其中,第二密钥对包括外部私密密钥和外部公共密钥。该方法包括通过控制器使用外部公共密钥对唯一ID执行第一真实性验证检查;以及通过控制器使用外部公共密钥对微控制器公共密钥执行第二真实性验证检查。
附图说明
本文参照附图对实施方式进行描述。
图1是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***100的框图;
图2是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***200的框图;
图3是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***300的框图;
图4是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***400的框图;以及
图5是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***500的框图。
具体实施方式
在下文中,阐述了多个细节以提供对示例性实施方式的更透彻的说明。然而,对于本领域技术人员来说明显的是,可以在没有这些具体细节的情况下实践这些实施方式。在其他实例中,众所周知的结构和装置以框图形式或以示意图示出而不是详细示出,以避免模糊实施方式。另外,除非另有特别说明,否则下文描述的不同实施方式的特征可以彼此组合。例如,除非相反地指出,否则关于实施方式之一描述的变型或修改也可以应用于其他实施方式。可以经由使用图中的虚线和方框来说明能够被激活和去激活的元件或可选元件。
此外,在以下描述中用等同或相似的附图标记表示等同或相似的元件或者具有等同或相似功能的元件。由于在附图中相同或功能等同的元件被给予相同的附图标记,因此可以省略对设置有相同附图标记的元件的重复描述。因此,对具有相同或相似附图标记的元件提供的描述是可相互交换的。
除非另外指出,否则附图中所示或本文所描述的元件之间的连接或耦接可以是基于有线的连接或光学(即光纤链路)连接或者无线连接。此外,这样的连接或耦接可以是直接的或间接的,只要基本上保持连接或耦接的通用目的即可。例如,通用目的可以是传送某种信号或传送某种信息。
将理解的是,除非例如出于技术原因另外明确或暗含地陈述,否则在说明书或权利要求中公开的多个动作、过程、操作、步骤或功能的公开内容可以不被理解为按特定的顺序。因此,除非这样的动作或功能由于技术原因是不可互换的,否则多个动作或功能的公开内容不会将这些动作或功能限制为特定顺序。此外,在一些示例中,单个动作、功能、过程、操作或步骤可以分别包括或者可以分别被分解为多个子动作、子功能、子过程、子操作或子步骤。除非明确排除,否则可以包括这样的子动作并且这样的子动作是该单个动作的公开内容的一部分。
应当理解,术语“微处理器”、“处理器”、“处理器核”、“处理单元”和“处理电路”在本公开内容中可以可互换地使用。处理器可以包括用于处理、存储和/或分发数据和信息的专用硬件。两个或更多个处理器也可以组合以执行处理功能,并且可以被认为是一个处理器。
实施方式涉及可信平台模块(TPM),该可信平台模块(TPM)除了机动车辆微控制器之外,还提供防篡改和安全认证的加密密钥生成和存储能力以及软件堆栈。TPM是一种安全的加密处理器,其是被设计成通过集成的加密密钥来保护硬件的专用微控制器从而实现附加的安全功能。具体地,TPM是具有由可信计算组(TCG)定义的固定功能集的防篡改芯片,并且可以被称为分立的防篡改安全控制器。TPM可以用作用于车辆的中央信任锚,并且因此可以承载关于机动车辆微控制器的真实性信息。
如本文中所使用的安全元件是指安全(即,防篡改)的存储装置。TPM和安全元件二者都是防篡改的硬件装置。
逻辑块可以包括一个或更多个处理器和/或被配置成接收和处理一个或更多个输入以生成输出的其他逻辑电路。特别地,逻辑块可以是任何计算装置,例如处理器、中央处理单元(CPU)、TPM、加密引擎、计算***等。
实施方式涉及电子控制单元(ECU)和车辆通信网络(例如,控制器区域网络(CAN)、具有灵活数据速率的CAN(CAN-FD)、CANXL、以太网(ETH)、快速***部件互连(PCIe)或另一总线标准)。ECU是机动车辆电子部件中的控制车辆中的一个或更多个电气***或子***的任何嵌入式***。因此,ECU可以被称为控制器。此外,控制器不必一定是ECU,而可以是执行真实性验证检查并基于其执行控制功能的任何装置。
每个ECU至少包括微控制器(即,微控制器单元(MCU))、存储器、各种输入(例如,电源电压、数字输入和/或模拟输入)和输出(例如,继电器驱动器输出、H桥驱动器输出、喷射器驱动器输出和/或逻辑输出)以及通信链路。因此,ECU是车载机动车辆网络的节点,而那些网络的边缘是通信网络(例如,CAN、CAN FD、ETH、PCIe等)。
ECU类型的非穷举列表包括引擎控制模块(ECM)、引擎控制单元、变速器控制单元、变速器控制模块(TCM)、制动控制模块(BCM或EBCM)、中央控制模块(CCM)、中央定时模块(CTM)、通用电子模块(GEM)、车身控制模块(BCM)、悬架控制模块(SCM)、门控制单元(DCU)、电动助力转向控制单元(PSCU)、人机界面(HMI)、座椅控制单元、速度控制单元(SCU)、远程信息控制单元、中央网关(GW)、域控制器(DC)、信息娱乐主机(IHU)、多媒体主机(MMU)以及电池管理***(BMS)。有时,引擎控制单元和变速器控制单元的功能被组合成称为动力传动控制模块(PCM)的单个ECU。另外,BCM可以被配置成控制防抱死制动***(ABS)、电子稳定性控制(ESC)和/或动态稳定性控制(DSC)。
实施方式涉及也称为公共密钥密码术的非对称密码术,其使用公共密钥和私密密钥来加密和解密数据以及使用公共密钥和私密密钥用于数据的签名和/或验证。密钥被选择成已经配对在一起但不相同(不对称)的大量数字。对中的一个密钥可以与每个人共享;它被称为公共密钥。该对中的另一个密钥保持私密;它被称为私密密钥。不能从公共密钥得到私密密钥。密钥中的任何一个都可以用于对消息进行加密;与用于对消息进行加密的密钥相对的密钥用于解密。例如,可以使用接收者的公共密钥对消息进行加密,但是只能用接收者的私密密钥对该经加密的消息进行解密。
加密哈希函数或哈希算法是可以用于将任意大小的数据映射到固定大小的数据(即,生成哈希)的任何函数或数学算法。哈希是根据数学算法和任意大小的消息(例如电子邮件、文档、图片、软件或其他类型的数据)生成的固定长度的数字和/或字母的字符串。由哈希函数返回的值称为哈希值、哈希码、摘要或简单的哈希。哈希函数是确定性的,使得相同的输入总是产生相同的哈希输出。这意味着生成的字符串表示要被哈希处理的文件,并且是单向函数,因此在数学上难以找到具有相同哈希值的两个不同输入。通常使用的哈希算法包括SHA-1、SHA-2和SHA-3,但是本文描述的实施方式不限于此。
例如,可以确保消息在传送之前免受未经授权的修改。当要传送安全消息时,生成预期消息的哈希,并使用传送者的私密密钥对预期消息的哈希进行签名,并将预期消息的哈希与消息一起发送。当接收到消息和经签名的哈希时,接收者对该哈希进行解密。然后,接收者根据消息创建另一哈希。如果在被验证时两个哈希相同,则可以说明消息尚未被修改,因此已经发生了安全的传输。传送者和接收者二者都必须使用相同的哈希函数或算法。在一些情况下,传送者可以向接收者发送算法或算法标识符以及消息的哈希值。该哈希过程阻碍了未经授权的终端用户更改消息。因此,哈希处理的目的是验证所传送的消息的完整性,但是如果使用密钥,则哈希处理也可以用于认证。
数字签名是指用于验证消息、软件或数字文档的真实性的一组算法和加密保护。数字签名通过证明数字消息、软件或文档自其被签名时起未被有意地或无意地修改来工作。数字签名通过生成消息或文档的对应/相关的唯一哈希并使用发送者的私密密钥对该唯一哈希进行签名来实现此。生成的哈希是与消息、软件或文档对应的唯一哈希,并且更改其任何部分将完全更改哈希。
一旦完成,就对消息或数字文档进行数字签名并将其发送至接受者。接受者然后生成他/她自己的消息或数字文档的哈希。接受者将生成的哈希与发送者的经解密的哈希进行比较;如果它们匹配,则验证消息或数字文档并认证发送者。
数字签名可以基于非对称密码术,并且可以提供对电子文档、交易或消息的来源、身份和状态的证据保证,以及确认签名者的知情同意。在此,使用发送者的私密密钥对消息进行签名,并且可以由有权访问发送者的公共密钥的任何人验证消息。
具体地,为了创建数字签名,签名软件创建要签名的电子数据的所谓的加密哈希值。该值是利用某种加密哈希函数,即,将任意长度的输入数据转换成固定大小的位串的数学算法来计算的。该所得的加密哈希值也被称为“消息摘要”。在数学上,它是单向函数。即,实际上不可能反转的功能。然后,使用用户的私密密钥对哈希进行签名,以返回以一定可靠性对哈希数据唯一的值。经签名的哈希可选地与其他信息例如哈希算法一起形成数字签名。
应理解,哈希函数可以为两个不同的字符串提供相同的哈希值,这被称为哈希冲突,当谈到具有一定可靠性的唯一性时,应该参考这一点。当引入加密哈希函数时,“良好”(已证明)的哈希函数实际上应该是无冲突的,并且假定在所描述的实施方式中使用这样的哈希函数。
哈希值的唯一性的这种可靠性使其他人能够使用签名者的公共密钥验证经签名的哈希以验证源自签名者的数据的完整性,如将在下面说明的:说始发者想要指示作为始发者提供的原始数据的一些数据。为此,始发者可以计算关于该数据的哈希值,并对哈希值进行签名。因此,忽略潜在的哈希冲突,第三方可以通过重新计算关于数据的哈希并通过使用发起者的公共密钥验证签名来使用经签名的哈希验证数据。
如果经解密的哈希与通过相同的哈希算法创建的同一数据的第二计算的哈希匹配,则指示该数据自其被签名起尚未改变。再次,忽略哈希冲突,如果两个哈希不匹配,则已经以某种方式篡改了数据(指示完整性失败),或者使用与由签名者呈现的公共密钥不对应的私密密钥创建了签名(指示认证失败)。
该签名验证算法(VERS)指示发送者有权访问私密密钥,因此可能是与公共密钥相关联的人。这也指示消息尚未被篡改,因为签名在数学上绑定到原始创建的消息,并且即使与原始消息相似,对几乎任何其他消息验证也将失败。
经加密的明文消息可以被称为密文。密文是使用被称为密码的算法对明文执行加密的结果。密文也被称为经加密或经编码的信息,因为它包含人或计算机在没有用于对其进行解密的正确密码的情况下无法解释的(即,它显示为一组随机字符)的形式的原始明文。
作为加密的逆的解密是将密文转换成可解释的明文的过程。如上所述,消息连同其哈希值可以加密(例如,作为密文)或不加密地进行传送。
实施方式可以涉及询问-响应认证,询问-响应认证是协议的族,其中一方提出问题(即,“询问”),并且另一方必须提供有效答案(即,“响应”)以被认证。
通用符号H=HASH(D)表示通过经由哈希函数/算法HASH对数据D进行哈希处理而获得的哈希值H。
通用符号{SK,PK}表示由私密密钥SK和公共密钥PK构成的密钥对。密钥对可以是使用私密密钥SK对数字证书进行签名的认证中心(CA)的密钥对。
通用符号C=ENCPK(P)表示通过利用加密算法ENC对明文P进行加密而获得的密文C,加密算法ENC使用密钥对{SK,PK}的公共密钥PK。
通用符号P=DECSK(C)表示通过利用解密算法DEC对密文C进行解密而获得的明文P,解密算法DEC使用密钥对{SK,PK}的私密密钥SK。
通用符号S=SIGNSK(D)表示利用签名算法SIGN生成的数据D的签名S,签名算法SIGN使用密钥对{SK,PK}的私密密钥SK。
通用符号VERS(PK,S,D)表示使用公共密钥PK、使用密钥对{SK,PK}的SK生成的签名S和数据D执行的签名验证算法(VERS)。签名验证算法(VERS)接受或拒绝签名/消息的真实性。
通用符号CA=CertSK{PK-A}表示由密钥对{SK,PK}的私密密钥SK签名的公共密钥PK-A的证书CA。
通用符号VERC(PK,CA,PK-A)表示使用密钥对{SK,PK}的公共密钥PK、公共密钥PK-A的证书CA和公共密钥PK-A执行的证书验证算法(VERC)。证书验证算法(VERC)接受或拒绝公共密钥PK-A的真实性。
通用符号R=SIGNSK-A(CV)表示对唯一询问值CV的响应R,其中特定于装置的私密密钥SK-A用于利用签名算法SIGN来对唯一询问值CV进行签名。因此,响应R是使用装置密钥对{SK-A,PK-A}的私密密钥SK生成的询问数据CV的签名。询问值CV可以是随机生成的信息,例如由随机数生成器生成的随机整数或随机位串。
通用符号VERR(PK-A,R,CV)表示使用特定于装置的公共密钥PK-A、使用SK-A生成的签名R和询问值CV执行的询问-响应认证验证算法(VERR)。签名验证算法(VERR)接受或拒绝询问值CV的真实性。
通用符号ID表示装置的硬件标识符。
实施方式还涉及用于为ECU的加密功能部署密钥材料(例如,私密密钥和/或公共密钥)的方法,ECU是机动车辆网络中的节点,而边缘是通信网络。这样的通信网络包括例如CAN、CAN-FD和以太网。特别地,实施方式涉及在微控制器与安全元件之间建立安全通道。
由于存储在安全元件中的加密私密密钥的“仅限使用(use-only)”特性,因此不能读出密钥,也不能查看或检查密钥。然而,一个或更多个密钥可能有意或无意地被盗用、泄露或修改(例如,经由软件),而无法认证密钥。因此,实施方式还涉及通过确定微控制器是真正的(例如,未篡改的、非伪造的)装置来认证机动车辆微控制器。这通过验证其对应的特定于装置的密钥(对)是否正在被使用(即,正确的密钥对正在被使用)来实现,该对应的特定于装置的密钥(对)对应于某个硬件标识符并且在生产期间已经被注入。
当将硬件标识符集成到密钥的计算中从而将给定密钥“绑定”到某个硬件装置例如微控制器时,该密钥被认为对应于硬件标识符(例如,芯片唯一ID或序列号)。另外,在验证密钥时,基本假设是,如果密钥是真正的密钥,则微控制器也必须是真正的微控制器。
图1是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***100的框图。可信认证***100包括外部安全元件1、具有硬件标识符ID-A的机动车辆微控制器(MCU)2和TPM 3。
外部安全元件1还可以被称为硬件安全模块(HSM)。另外,作为防篡改的硬件装置的TPM 3不限于TPM。例如,防篡改硬件装置3可以是安全服务器,并且更具体地,是安全在线服务器。安全服务器是受到高度保护的服务器,其安全级别可能至少与TPM的安全级别相同或与TPM的安全级别相比相当高。因此,监督安全在线服务器的在线服务可以经由安全服务器提供本文描述的TPM/防篡改硬件装置3的功能。替选地,防篡改硬件装置3可以是另一ECU(例如,中央网关)。
在第一步骤中,外部安全元件1在内部生成机动车辆微控制器签名密钥对{SK,PK},其中私密密钥SK被存储并受到高度保护(例如,达到评估保证级别6+(EAL6+))。
在第二步骤中,微控制器2生成其密钥对{SK-A,PK-A},其中,SK-A是“仅使用”私密密钥。
在第三步骤中,微控制器的标识符ID-A的签名SMCU(即SMCU=SIGNSK(ID-A))和微控制器的公共密钥PK-A的证书CMCU(即CMCU=CERTSK(PK-A))由安全元件1提供并存储在微控制器2中。此处,可能涉及公共密钥基础结构(PKI),或者fab中的安全元件1也充当CA,并经由自签名创建证书。即,安全元件1将对应信息添加到公共密钥PK-A,这使其成为证书(即,主题->HW标识符、公共密钥、哈希/指纹、有效性等)并对其进行签名,而在在这种情况下,SE的签名==CA的签名。
注意,安全元件1的私密密钥SK从不离开安全元件1,并且微控制器2的私密密钥SK-A从不离开微控制器2。然而,安全元件1将其公共密钥PK发送至TPM 3。此外,可以使用另一MCU代替安全元件1。在这种情况下,可以将用于签名的私密密钥SK安全地存储在另一MCU中。
在TPM方面,在第四步骤中,使用用于密钥背书的种子来初始化TPM。在第五步骤中,将安全元件1的公共密钥PK***TPM 3中。最后,在第六步骤中,TPM 3根据要求以安全的方式将安全元件1的公共密钥PK传递给请求实体。即,TPM 3仅在接收到触发传送的请求时才传送诸如公共密钥PK的信息。以这种方式,TPM 3提供了真实的PK。
还应注意,安全元件1可以实现计数器,该计数器对SMCU或CMCU的生成频率进行计数,并且还可以将其生成限制为特定次数。
图2是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***200的框图。类似于图1中所示的***100,可信认证***200包括外部安全元件1、具有硬件标识符ID-A的机动车辆微控制器(MCU)2和TPM 3。
特别地,安全元件1存储密钥对{SK,PK},并将其公共密钥PK发送至TPM 3以用于安全存储。另外,MCU 2存储其标识符ID-A,并且生成并存储其自己的特定于装置的密钥对{SK-A,PK-A}。MCU 2将其标识符ID-A和其公共密钥PK-A发送至安全元件1。继而,安全元件1使用其私密密钥SK生成微控制器标识符ID-A的签名SMCU(即SMCU=SIGNSK(ID-A))。安全元件还从CA或从像CA一样作用的自签名获得微控制器公共密钥PK-A的证书CMCU(即CMCU=CERTSK(PK-A))。然后,安全元件1将签名SMCU和证书CMCU发送至MCU 2,签名SMCU和证书CMCU存储在MCU2中。
图3是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***300的框图。可信认证***300包括具有硬件标识符ID-A的机动车辆微控制器(MCU)2、TPM 3和ECU 4(即控制器)。MCU 2和TPM 3已经执行了图2所示的交换。因此,TPM 3存储公共密钥PK,并且MCU 2存储其ID-A、特定于装置的密钥对{SK-A,PK-A}、签名SMCU和证书CMCU。TPM 3被认为利用由TPM特征集提供的功能例如“密封”“绑定”到MCU 2。通过提供相同的PK,TPM 3可以绑定到许多ECU。
ECU 4被配置成通过认证MCU 2的标识符ID-A来认证MCU 2。具体地,在步骤零中,ECU 4从可信实体例如TPM 3接收公共密钥PK。具体地,TPM 3在从ECU 4接收到请求时发送公共密钥PK。TPM 3本身在没有事先请求的情况下不发送任何内容。即,TPM 3仅将密钥用作对对应请求的响应。
在步骤1中,ECU 4接收签名SMCU和标识符ID-A,该ID-A代表传送的数据,并且对MCU2是唯一的。
最后,在步骤2中,ECU 4使用从TPM 3接收的公共密钥PK、签名SMCU和标识符ID-A执行签名验证算法VERS(PK,SMCU,ID-A),并确定接受还是拒绝签名/消息的真实性,并最终确定接受还是拒绝标识符ID-A的真实性。
结果,ECU 4被配置成使用签名SMCU通过验证MCU 2的标识符ID-A的真实性来验证MCU 2的真实性。为此,ECU 4使用公共密钥PK,其中用于签名验证算法的所需公共密钥PK由可信实体TPM 3(即,被ECU 4信任的实体)提供。TPM 3是可信实体,ECU 4具有与TPM 3建立的信任根。公共密钥PK是用于生成签名SMCU的私密密钥SK的对应物。相比之下,ECU 4不被认为与MCU 2具有信任根或者与MCU 2具有比与TPM 3的信任根低的信任根。
不成功的验证操作指示MCU 2的认证失败。在认证失败的情况下,ECU 4可以向***和/或用户发信号通知认证错误。此外,可以分别记录认证失败,并将日志安全地存储在TPM中或由TPM保护。这样,可以利用作为车辆中的不太可能被对手篡改的可信端点的TPM来远程查询该信息。以这种方式,即使在对手获得了对ECU的完全控制的假设下,也可以检测到破解***的尝试。
还应注意,公共密钥PK可以在生产时存储在MCU 2上,并且然后被传送到TPM 3并在车辆行驶时使用。
该技术可以用于阻止一个或更多个攻击路径,一个或更多个攻击路径包括从原始MCU 2复制ID-A并对其进行伪造的攻击者,操纵ID-A从MCU 2到ECU 4的传送的攻击者,或者物理上操纵ID-A的存储的攻击者。
ECU 4可以被配置成在每次车辆启动时根据用户的要求或者以预定的时间间隔定期地或在预定次数的车辆启动之后执行认证验证检查。
图4是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***400的框图。可信认证***400包括具有硬件标识符ID-A的机动车辆微控制器(MCU)2、TPM 3和ECU 4。MCU 2和TPM 3已经执行了图2所示的交换。因此,TPM 3存储公共密钥PK,并且MCU 2存储ID-A、特定于装置的密钥对{SK-A,PK-A}、签名SMCU和证书CMCU。TPM 3被认为利用由TPM特征集提供的功能例如“密封”“绑定”到MCU 2。特别地,可信认证***400类似于图3所示的可信认证***300,除了使用微控制器的公共密钥PK-A的证书CMCU代替微控制器的标识符ID-A的签名SMCU。
在步骤零中,ECU 4从可信实体例如TPM 3接收公共密钥PK。具体地,TPM 3在从ECU4接收到请求时发送公共密钥PK。在步骤1中,ECU 4接收证书CMCU和代表传送的数据的微控制器的公共密钥PK-A。最后,ECU 4使用从TPM 3接收的公共密钥PK(即发送者的可信公共密钥)、证书CMCU和微控制器的公共密钥PK-A来执行证书验证算法VERC(PK,CMCU,PK-A),并确定是接受还是拒绝签名/消息的真实性。
对于证书验证算法,ECU 4使用证书CMCU随附的MCU 2的公共密钥PK-A来检查数字签名。另外,ECU 4验证发布证书的认证中心是合法且可信赖的。为此,ECU 4从TPM 3获取认证中心的公共密钥PK。因此,公共密钥PK用作根认证中心的公共密钥。
结果,ECU 4被配置成使用证书CMCU来验证MCU 2的公共密钥PK-A的真实性。为此,ECU 4使用公共密钥PK,其中用于证书验证算法的所需公共密钥PK由可信实体TPM 3(即,被ECU 4信任的实体)提供。TPM 3是可信实体,ECU 4具有与TPM 3建立的信任根。公共密钥PK是用于对公共密钥PK-A进行签名以生成证书CMCU的私密密钥SK的对应物。
不成功的验证操作指示公共密钥PK-A的认证失败。在认证失败的情况下,ECU 4可以向***和/或用户发信号通知认证错误。
总之,使用私密密钥SK对公共密钥PK-A进行签名以生成证书CMCU,并且由防篡改且经认证的装置(即TPM 3)或其他可信机动车辆MCU(未显示)提供公共密钥PK对应物。
还应注意,公共密钥PK可以在生产时存储在MCU 2上,并且然后被传送到TPM 3并在车辆行驶时使用。
该技术可以用于阻止一个或更多个攻击路径,一个或更多个攻击路径包括在“模仿”MCU 2时分发公共密钥的攻击者(即中间人攻击)、通过例如***其自己的密钥来操纵PK-A在MCU 2处的存储的攻击者,或者将恶意软件***MCU 2并提供伪造的公共密钥的攻击者。
ECU 4可以被配置成在每次车辆启动时根据用户的要求或者以预定的时间间隔定期地或在预定次数的车辆启动之后执行认证验证检查。
图5是根据一个或更多个实施方式的用于机动车辆微控制器的可信认证***500的框图。可信认证***500包括具有硬件标识符ID-A的机动车辆微控制器(MCU)2、TPM 3和ECU 4。MCU 2和TPM 3已经执行了图2所示的交换。因此,TPM 3存储公共密钥PK,并且MCU 2存储ID-A、特定于装置的密钥对{SK-A,PK-A}、签名SMCU和证书CMCU。TPM 3被认为利用由TPM特征集提供的功能例如“密封”“绑定”到MCU 2。
可信认证***500类似于图3所示的可信认证***300,除了询问(challenge)-响应认证用于认证由ECU 4生成并由ECU 4传送至MCU 2的询问值CV。
特别地,在步骤0中,MCU 2将其公共密钥PK-A发送至安全地存储PK-A的TPM 3。可以在生产期间经由安全(例如,加密的)通信来安全地进行该传送。在步骤1中,在来自ECU 4的请求之后,TPM 3将公共密钥PK-A发送至ECU 4。在步骤2中,ECU 4生成询问值CV,并将询问发送至包括询问值CV的MCU 2。在步骤3中,响应于接收到询问,MCU 2使用其私密密钥SK-A对询问值CV进行签名,并且将经签名的响应R发送回ECU 4。也可以是MCU 2响应于从ECU 4接收到询问来执行步骤0,并且TPM 3响应于从MCU 2接收到公共密钥PK-A来执行步骤1。在步骤4中,响应于接收到经签名的响应R,ECU 4使用特定于装置的公共密钥PK-A、使用SK-A生成的签名R和询问值CV,经由算法VERR执行询问响应认证。签名验证算法(VERR)接受或拒绝询问值CV的真实性。
结果,ECU 4被配置成使用询问值CV的签名来通过验证ECU 4已知的询问值CV的真实性来验证MCU 2的真实性。为此,ECU 4使用公共密钥PK-A,其中用于签名验证算法的所需公共密钥PK-A由可信实体TPM 3(即,被ECU 4信任的实体)提供。TPM 3是可信实体,ECU 4具有与TPM 3建立的信任根。公共密钥PK-A是用于生成询问值CV的签名R的私密密钥SK-A的对应物。
不成功的验证操作指示MCU 2的认证失败。在认证失败的情况下,ECU 4可以向***和/或用户发信号通知认证错误。
ECU 4被配置成以任何组合执行图3至图5所示的认证方案,并且可以顺序地或根据预定条件例如上述条件被满足来执行这些认证检查。ECU 4的目的是检测MCU的未经授权的更改或篡改。假定查询MCU的真实性的ECU未被盗用。
注意,在可信认证***300、400和500中的每一个中,在变化的外部环境例如极端温度范围下,所需的加密数据(例如,PK-A、ID-A等)的传送可能容易出现错误。由于车辆在其整个生命周期中暴露于多种不同的条件,因此可能它们会面临由这样的情况而导致的错误。类似地,加密计算(例如,ERS(PK,S,D)、VERC(PK,CA,PK-A)、VERR(PK-A,R,C)等)可能被破坏,从而导致错误。
即使对应于公共密钥的装置是真实的,这也导致对真实性检查的否定验证。
如果安全关键的实时操作(例如,制动、转向等)受到影响,则即使在否定验证的情况下,也可能期望执行那些操作。例如,即使在相关MCU的认证中存在可能的错误情况下,也不希望在车辆操作期间停用制动、转向或一些其他安全关键的车辆功能。注意,与例如付款应用相比,存在差异:一次否定验证会导致不同的反应,包括拒绝交易或阻止伙伴。
为了避免这样的情况,可以经由纠错码来重复或保护对应加密数据的传送。加密计算(即,真实性验证检查)也可以由ECU 4总共执行“n”次,并且然后基于“m”个肯定验证的预定义阈值次数,ECU 4可以确定总体验证为肯定。此处,m和n是整数,并且m≤n。
例如,对于特定车辆功能的特征激活,***可以要求m=n=1。例如,可以在车辆启动时执行该验证测试。在这种情况下,执行一次(即,n=1)真实性验证检查,并且返回一次(即,m=1)肯定结果,这指示真实性验证检查成功。结果,特定的车辆功能被激活。另一方面,如果真实性验证检查不成功(即,m=0),则直到对负责执行特定车辆功能的相关MCU 2执行附加检查和/或分析之后,特定车辆功能才被激活。
在另一示例中,这时对于导航数据,***可能要求大多数真实性验证检查是肯定的,但不是全部,以使功能被批准。例如,n=3,m=2可能足以返回总体肯定的验证。在此,基于“多数表决”接受导航数据。可以在车辆的运行期间定期执行该验证测试。另一方面,如果大多数时候真实性验证检查不成功,则直到对负责执行特定车辆功能的相关MCU2执行附加检查和/或分析之后,特定车辆功能才被激活。
在另一示例中,这时次对于制动信号、转向信号或一些其他安全关键的车辆功能,***可以允许安全关键的车辆功能独立于安全检查而运行。即,无论真实性验证检查是否成功,安全关键的车辆功能均保持激活。例如,m=1,n=0。在这种情况下,仍将执行制动或一些其他安全关键的车辆功能,但是可以触发其他动作,例如,对负责执行特定安全关键的车辆功能的相关MCU 2执行附加检查和/或分析。
因此,ECU 4被配置成多次执行一个或更多个验证检查(例如,图3至图5中描述的一种或更多种类型的验证检查)作为多个真实性验证检查,将来自多个真实性验证检查的成功认证的次数与预定义阈值次数进行比较,如果成功认证的次数满足预定义阈值次数,则确定肯定的总体验证结果,并且如果成功认证的次数不满足预定义阈值次数,则确定否定的总体验证结果。ECU 4还可以响应于确定肯定的总体验证结果来确定微控制器的功能的使用是安全的,并且响应于确定否定的总体验证结果来确定微控制器的功能的使用是不安全的或潜在地不安全的。被视为不安全或潜在不安全的微控制器可以被停用、不使用或被标记以由ECU 4进行进一步检查。
尽管本文描述的实施方式涉及车辆***和机动车辆微控制器,但是应该理解,本文描述的概念可以类似地扩展到任何微控制器***,包括在期望建立信任根的工业应用和物联网(IoT)中使用的那些微控制器***。
另外,尽管已经在设备的上下文中描述了一些方面,但是清楚的是,这些方面还表示对对应方法的描述,其中,块或装置对应于方法步骤或方法步骤的特征。类似地,在方法步骤的上下文中描述的方面还表示对对应块或对应设备的项或特征的描述。方法步骤中的一些或全部可以由(或使用)硬件设备来执行,所述硬件设备例如微处理器、可编程计算机或电子电路。在一些实施方式中,这样的设备可以执行一些一个或更多个方法步骤。
取决于特定实现要求,本文提供的实施方式可以用硬件和/或软件来实现。可以使用其上存储有电可读控制信号的计算机可读数字存储介质,例如DVD、蓝光、CD、RAM、ROM、PROM、EPROM、EEPROM或FLASH存储器来执行该实现,该计算机可读数字存储介质与可编程计算机***协作(或能够与可编程计算机***协作)使得相应的方法被执行。
可以由一个或更多个处理器执行指令,所述一个或更多个处理器例如一个或更多个中央处理单元(CPU)、数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门(或逻辑)阵列(FPGA)或其他等效集成或离散逻辑电路。因此,如本文所使用的,术语“处理器”是指任何前述结构或适于实施本文所描述的技术的任何其他结构。另外,在一些方面,本文描述的功能可以在专用硬件和/或软件模块内提供。此外,这些技术可以在一个或更多个电路或逻辑元件中完全实现。
上述示例性实施方式仅仅是说明性的。应当理解,本文描述的布置和细节的修改和变化对于本领域的其他技术人员将是明显的。因此,旨在仅受即将公开的专利权利要求书的范围的限制,而不受借助于本文中的实施方式的描述和说明而呈现的具体细节的限制。
Claims (38)
1.一种认证***,包括:
具有唯一标识符ID和第一密钥对的微控制器,所述第一密钥对包括微控制器私密密钥和微控制器公共密钥,
其中,所述微控制器被配置成存储所述唯一ID、所述第一密钥对、所述唯一ID的数字签名以及所述微控制器公共密钥的由第二密钥对的外部私密密钥来签名的数字证书,所述数字签名使用所述第二密钥对的外部私密密钥来被生成,并且其中,所述第二密钥对包括所述外部私密密钥和外部公共密钥;以及
控制器,其被配置成使用所述外部公共密钥来对所述唯一ID执行第一真实性验证检查,并且使用所述外部公共密钥来对所述微控制器公共密钥执行第二真实性验证检查。
2.根据权利要求1所述的认证***,还包括:
与所述控制器具有信任根的防篡改硬件装置,其中,所述防篡改硬件装置被配置成安全地存储所述外部公共密钥并且将所述外部公共密钥提供给所述控制器。
3.根据权利要求1所述的认证***,其中,对于所述第一真实性验证检查,所述微控制器被配置成将所述唯一ID和所述唯一ID的数字签名传送至所述控制器。
4.根据权利要求3所述的认证***,其中,对于所述第一真实性验证检查,所述控制器被配置成实施使用所述外部公共密钥、所述唯一ID的数字签名和所述唯一ID的签名验证算法,并且基于所述签名验证算法验证所述唯一ID的真实性。
5.根据权利要求1所述的认证***,其中,对于所述第二真实性验证检查,所述微控制器被配置成将所述微控制器公共密钥和所述微控制器公共密钥的数字证书传送至所述控制器。
6.根据权利要求5所述的认证***,其中,对于所述第二真实性验证检查,所述控制器被配置成实施使用所述外部公共密钥、所述微控制器公共密钥的数字证书和所述微控制器公共密钥的证书验证算法,并且基于所述证书验证算法验证所述微控制器公共密钥的真实性。
7.根据权利要求1所述的认证***,其中:
所述控制器被配置成向所述微控制器发起询问-响应认证,其中,所述控制器被配置成在所述询问-响应认证期间生成询问值并且将所述询问值传送至所述微控制器,
所述微控制器被配置成响应于接收到所述询问值而使用所述微控制器私密密钥来对所述询问值进行签名,并且将经签名的询问值作为询问响应传送至所述控制器,以及
所述控制器被配置成响应于接收到所述询问响应而通过用所生成的询问值验证所述经签名的询问值来认证所述微控制器。
8.根据权利要求7所述的认证***,还包括:
与所述控制器具有信任根的防篡改硬件装置,其中,所述防篡改硬件装置被配置成安全地存储所述微控制器公共密钥并且将所述微控制器公共密钥提供给所述控制器,
其中,所述控制器被配置成从所述防篡改硬件装置接收所述微控制器公共密钥,并且使用所述微控制器公共密钥来用所生成的询问值验证所述经签名的询问值。
9.根据权利要求8所述的认证***,其中,所述微控制器被配置成响应于从所述控制器接收到所述询问值,将所述微控制器公共密钥传送至所述防篡改硬件装置。
10.根据权利要求1所述的认证***,其中,所述微控制器被配置成生成所述第一密钥对。
11.根据权利要求1所述的认证***,其中,所述第二密钥对在所述微控制器的外部被生成。
12.根据权利要求1所述的认证***,还包括:
防篡改硬件装置,其被配置成生成所述第二密钥对、使用所述唯一ID和所述外部私密密钥来生成所述数字签名、获得从所述微控制器公共密钥和所述外部私密密钥得到的所述数字证书、并且将所述数字签名和所述数字证书传送至所述微控制器。
13.根据权利要求12所述的认证***,其中,所述防篡改硬件装置是可信平台模块。
14.根据权利要求12所述的认证***,其中,所述防篡改硬件装置是安全服务器。
15.根据权利要求1所述的认证***,还包括:
与所述控制器具有信任根的第一防篡改硬件装置,其中,所述第一防篡改硬件装置被配置成安全地存储所述外部公共密钥并且将所述外部公共密钥提供给所述控制器;以及
第二防篡改硬件装置,其被配置成生成所述第二密钥对、使用所述唯一ID和所述外部私密密钥生成所述数字签名、获得从所述微控制器公共密钥和所述外部私密密钥得到的所述数字证书、并且将所述数字签名和所述数字证书传送至所述微控制器。
16.根据权利要求15所述的认证***,其中,所述第二防篡改硬件装置被配置成将所述外部公共密钥传送至所述第一防篡改硬件装置。
17.根据权利要求1所述的认证***,其中,所述微控制器是专用的机动车辆微控制器。
18.根据权利要求2所述的认证***,其中,所述防篡改硬件装置是可信平台模块。
19.根据权利要求1所述的认证***,其中,所述微控制器私密密钥是仅限使用的私密密钥。
20.根据权利要求2所述的认证***,其中,所述微控制器、所述控制器和所述防篡改硬件装置是分开的硬件装置。
21.根据权利要求1所述的认证***,其中,所述控制器被配置成多次执行所述第一真实性验证检查作为多个第一真实性验证检查、将来自所述多个第一真实性验证检查的成功认证的次数与预定义阈值次数进行比较、如果所述成功认证的次数达到所述预定义阈值次数则确定肯定的总体验证结果、并且如果所述成功认证的次数没有达到所述预定义阈值次数则确定否定的总体验证结果。
22.根据权利要求21所述的认证***,其中,所述控制器被配置成响应于确定所述肯定的总体验证结果而确定所述微控制器的功能的使用是安全的,并且响应于确定所述否定的总体验证结果而确定所述微控制器的功能的使用是不安全的。
23.根据权利要求1所述的认证***,其中,所述控制器被配置成多次执行所述第二真实性验证检查作为多个第二真实性验证检查、将来自所述多个第二真实性验证检查的成功认证的次数与预定义阈值次数进行比较 、如果所述成功认证的次数达到所述预定义阈值次数则确定肯定的总体验证结果、并且如果所述成功认证的次数没有达到所述预定义阈值次数则确定否定的总体验证结果。
24.根据权利要求23所述的认证***,其中,所述控制器被配置成响应于确定所述肯定的总体验证结果而确定所述微控制器的功能的使用是安全的,并且响应于确定所述否定的总体验证结果而确定所述微控制器的功能的使用是不安全的。
25.一种用于认证微控制器的方法,所述微控制器具有唯一标识符ID和第一密钥对,所述第一密钥对包括微控制器私密密钥和微控制器公共密钥,其中,所述微控制器存储所述唯一ID、所述第一密钥对、所述唯一ID的数字签名以及所述微控制器公共密钥的由第二密钥对的外部私密密钥来签名的数字证书,所述数字签名使用所述第二密钥对的外部私密密钥来被生成,并且其中,所述第二密钥对包括所述外部私密密钥和外部公共密钥,所述方法包括:
通过控制器使用所述外部公共密钥来对所述唯一ID执行第一真实性验证检查;以及
通过所述控制器使用所述外部公共密钥来对所述微控制器公共密钥执行第二真实性验证检查。
26.根据权利要求25所述的方法,还包括:
通过防篡改硬件装置存储所述外部公共密钥,其中,所述防篡改硬件装置与所述控制器具有信任根;以及
将所述外部公共密钥从所述防篡改硬件装置传送至所述控制器,以执行所述第一真实性验证检查和所述第二真实性验证检查中的至少一个。
27.根据权利要求25所述的方法,还包括:
对于所述第一真实性验证检查:
通过所述微控制器将所述唯一ID和所述唯一ID的数字签名传送至所述控制器;以及
通过所述控制器实施使用所述外部公共密钥、所述唯一ID的数字签名和所述唯一ID的签名验证算法;以及
通过所述控制器基于所述签名验证算法来验证所述唯一ID的真实性。
28.根据权利要求25所述的方法,还包括:
对于所述第二真实性验证检查:
通过所述微控制器将所述微控制器公共密钥和所述微控制器公共密钥的数字证书传送至所述控制器;
通过所述控制器实施使用所述外部公共密钥、所述微控制器公共密钥的数字证书和所述微控制器公共密钥的证书验证算法;以及
通过所述控制器基于所述证书验证算法来验证所述微控制器公共密钥的真实性。
29.根据权利要求25所述的方法,还包括:
通过所述控制器执行与所述微控制器的询问-响应认证,其包括:
通过所述控制器生成询问值;
通过所述控制器将所述询问值传送至所述微控制器;
通过所述微控制器响应于接收到所述询问值而使用所述微控制器私密密钥对所述询问值进行签名;
通过所述微控制器将经签名的询问值作为询问响应传送至所述控制器;以及
通过所述控制器响应于接收到所述询问响应而通过用所生成的询问值验证所述经签名的询问值来认证所述微控制器。
30.根据权利要求29所述的方法,还包括:
通过防篡改硬件装置存储所述微控制器公共密钥,其中,所述防篡改硬件装置与所述控制器具有信任根;以及
通过所述防篡改硬件装置将所述微控制器公共密钥传送至所述控制器,
其中,认证所述微控制器包括:使用所述微控制器公共密钥来用所生成的询问值验证所述经签名的询问值。
31.根据权利要求30所述的方法,还包括:
通过所述微控制器响应于从所述控制器接收到所述询问值而将所述微控制器公共密钥传送至所述防篡改硬件装置。
32.根据权利要求25所述的方法,还包括:
通过所述控制器多次执行所述第一真实性验证检查作为多个第一真实性验证检查;
通过所述控制器将来自所述多个第一真实性验证检查的成功认证的次数与预定义阈值次数进行比较;
如果所述成功认证的次数达到所述预定义阈值次数,则通过所述控制器确定肯定的总体认证结果;以及
如果所述成功认证的次数没有达到所述预定义阈值次数,则通过所述控制器确定否定的总体验证结果。
33.根据权利要求32所述的方法,还包括:
通过所述控制器响应于确定所述肯定的总体验证结果而确定所述微控制器的功能的使用是安全的;以及
通过所述控制器响应于确定所述否定的总体验证结果而确定所述微控制器的功能的使用是不安全的。
34.根据权利要求25所述的方法,还包括:
通过所述控制器多次执行所述第二真实性验证检查作为多个第二真实性验证检查;
通过所述控制器将来自所述多个第二真实性验证检查的成功认证的次数与预定义阈值次数进行比较;
如果所述成功认证的次数达到所述预定义阈值次数,则通过所述控制器确定肯定的总体认证结果;以及
如果所述成功认证的次数没有达到所述预定义阈值次数,则通过所述控制器确定否定的总体验证结果。
35.根据权利要求34所述的方法,还包括:
通过所述控制器响应于确定所述肯定的总体验证结果而确定所述微控制器的功能的使用是安全的;以及
通过所述控制器响应于确定所述否定的总体验证结果而确定所述微控制器的功能的使用是不安全的。
36.根据权利要求25所述的方法,还包括:
通过防篡改硬件装置生成所述第二密钥对;
通过所述防篡改硬件装置使用所述唯一ID和所述外部私密密钥生成所述数字签名;
通过所述防篡改硬件装置获得从所述微控制器公共密钥和所述外部私密密钥得到的所述数字证书;以及
通过所述防篡改硬件装置将所述数字签名和所述数字证书传送至所述微控制器。
37.根据权利要求25所述的方法,还包括:
通过第一防篡改硬件装置安全地存储所述外部公共密钥,其中,所述第一防篡改硬件装置与所述控制器具有信任根;
通过所述第一防篡改硬件装置将所述外部公共密钥传送至所述控制器;
通过第二防篡改硬件装置生成所述第二密钥对;
通过所述第二防篡改硬件装置使用所述唯一ID和所述外部私密密钥生成所述数字签名;
通过所述第二防篡改硬件装置获得从所述微控制器公共密钥和所述外部私密密钥得到的所述数字证书;以及
通过所述第二防篡改硬件装置将所述数字签名和所述数字证书传送至所述微控制器。
38.根据权利要求37所述的方法,还包括:
通过所述第二防篡改硬件装置将所述外部公共密钥传送至所述第一防篡改硬件装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/561,311 | 2019-09-05 | ||
US16/561,311 US11177953B2 (en) | 2019-09-05 | 2019-09-05 | Trusted authentication of automotive microcontroller |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112448941A CN112448941A (zh) | 2021-03-05 |
CN112448941B true CN112448941B (zh) | 2022-12-13 |
Family
ID=74644416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010863187.3A Active CN112448941B (zh) | 2019-09-05 | 2020-08-25 | 认证***和用于认证微控制器的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11177953B2 (zh) |
CN (1) | CN112448941B (zh) |
DE (1) | DE102020121533A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4072064A4 (en) * | 2019-12-03 | 2023-12-06 | Keisuke Kido | ELECTRONIC SIGNATURE SYSTEM AND TAMPER-PROOF DEVICE |
EP3913880A1 (en) * | 2020-05-19 | 2021-11-24 | Continental Teves AG & Co. OHG | Method of and system for secure data export from an automotive engine control unit |
CN113315636B (zh) * | 2021-05-31 | 2022-02-25 | 暨南大学 | 一种用于汽车ecu间安全通信的密钥交换方法 |
GB2608802A (en) * | 2021-07-09 | 2023-01-18 | Continental Automotive Gmbh | A method and system for validating security of a vehicle |
WO2024036435A1 (zh) * | 2022-08-15 | 2024-02-22 | 华为技术有限公司 | 通信方法、装置和*** |
GB2622820A (en) * | 2022-09-28 | 2024-04-03 | Continental Automotive Tech Gmbh | Method and system for authenticating microcontroller using on-the-fly authentication key |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1996837A (zh) * | 2006-01-05 | 2007-07-11 | 恩益禧电子股份有限公司 | 微控制器和这些控制器之间的鉴别方法 |
CN104468094A (zh) * | 2013-09-24 | 2015-03-25 | 瑞萨电子株式会社 | 加密密钥提供方法、半导体集成电路及加密密钥管理设备 |
CN105683843A (zh) * | 2013-08-30 | 2016-06-15 | 惠普发展公司,有限责任合伙企业 | 经由定时质询响应的供给认证 |
CN107662411A (zh) * | 2016-07-29 | 2018-02-06 | 多佛欧洲有限责任公司 | 用于工业打印机的消耗性部件或可拆卸部件的高级保护*** |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10340861A1 (de) * | 2003-09-04 | 2005-04-07 | Infineon Technologies Ag | Prozessorschaltung und Verfahren zum Zuordnen eines Logikchips zu einem Speicherchip |
US8165297B2 (en) * | 2003-11-21 | 2012-04-24 | Finisar Corporation | Transceiver with controller for authentication |
US8908870B2 (en) * | 2007-11-01 | 2014-12-09 | Infineon Technologies Ag | Method and system for transferring information to a device |
US8478973B2 (en) * | 2008-05-30 | 2013-07-02 | Infineon Technologies Ag | System and method for providing a secure application fragmentation environment |
US20110093714A1 (en) * | 2009-10-20 | 2011-04-21 | Infineon Technologies Ag | Systems and methods for asymmetric cryptographic accessory authentication |
US8621212B2 (en) * | 2009-12-22 | 2013-12-31 | Infineon Technologies Ag | Systems and methods for cryptographically enhanced automatic blacklist management and enforcement |
US8862882B2 (en) * | 2012-06-29 | 2014-10-14 | Intel Corporation | Systems and methods for authenticating devices by adding secure features to Wi-Fi tags |
US9197619B2 (en) * | 2012-09-06 | 2015-11-24 | Intel Corporation | Management of multiple devices registered to a user |
US9413738B2 (en) * | 2014-06-19 | 2016-08-09 | Microsoft Technology Licensing, Llc | Securing communications with enhanced media platforms |
US11048791B2 (en) * | 2016-08-03 | 2021-06-29 | Hewlett-Packard Development Company, L.P. | Digitally signed data |
US10375057B2 (en) * | 2017-01-27 | 2019-08-06 | Visa International Service Association | Systems and methods for certificate chain validation of secure elements |
FR3067829B1 (fr) * | 2017-06-20 | 2019-07-12 | Idemia Identity And Security | Procede d'authentification par defi-reponse d'un element securise (se) aupres d'un microcontroleur |
US10621350B2 (en) * | 2017-10-02 | 2020-04-14 | Microsoft Technology Licensing, Llc | System integrity using attestation for virtual trusted platform module |
-
2019
- 2019-09-05 US US16/561,311 patent/US11177953B2/en active Active
-
2020
- 2020-08-17 DE DE102020121533.9A patent/DE102020121533A1/de active Pending
- 2020-08-25 CN CN202010863187.3A patent/CN112448941B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1996837A (zh) * | 2006-01-05 | 2007-07-11 | 恩益禧电子股份有限公司 | 微控制器和这些控制器之间的鉴别方法 |
CN105683843A (zh) * | 2013-08-30 | 2016-06-15 | 惠普发展公司,有限责任合伙企业 | 经由定时质询响应的供给认证 |
CN104468094A (zh) * | 2013-09-24 | 2015-03-25 | 瑞萨电子株式会社 | 加密密钥提供方法、半导体集成电路及加密密钥管理设备 |
CN107662411A (zh) * | 2016-07-29 | 2018-02-06 | 多佛欧洲有限责任公司 | 用于工业打印机的消耗性部件或可拆卸部件的高级保护*** |
Also Published As
Publication number | Publication date |
---|---|
CN112448941A (zh) | 2021-03-05 |
DE102020121533A1 (de) | 2021-03-11 |
US20210075606A1 (en) | 2021-03-11 |
US11177953B2 (en) | 2021-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112448941B (zh) | 认证***和用于认证微控制器的方法 | |
US20210367753A1 (en) | Trusted measurement and control network authentication method based on double cryptographic values and chaotic encryption | |
US8526606B2 (en) | On-demand secure key generation in a vehicle-to-vehicle communication network | |
CN107094108B (zh) | 连接到数据总线的部件和在该部件中实现加密功能的方法 | |
US9847880B2 (en) | Techniques for ensuring authentication and integrity of communications | |
CN111491299B (zh) | 车辆通信网络中的数据消息认证***及认证方法 | |
CN108768652B (zh) | 一种可抗量子攻击的联盟区块链底层加密方法 | |
US20140075186A1 (en) | Multiple Access Key Fob | |
JP2010011400A (ja) | 共通鍵方式の暗号通信システム | |
JP2008507203A (ja) | ディストリビューションcdを使用した、署名されたグループにおけるダイレクトプルーフの秘密鍵を装置に伝達する方法 | |
US8688976B2 (en) | Method for issuing a digital certificate by a certification authority, arrangement for performing the method, and computer system of a certification authority | |
US20160182230A1 (en) | Secure token-based signature schemes using look-up tables | |
JP2001051596A (ja) | データ生成装置およびデータ検証装置ならびにその方法 | |
CN111769938B (zh) | 一种区块链传感器的密钥管理***、数据验证*** | |
CN101241528A (zh) | 终端接入可信pda的方法和接入*** | |
CN114710351A (zh) | 用于在通信过程中改进数据安全性的方法和*** | |
WO2020121460A1 (ja) | 照合システム、クライアントおよびサーバ | |
CN112396735A (zh) | 网联汽车数字钥匙安全认证方法及装置 | |
CN114598533B (zh) | 一种区块链侧链跨链身份可信认证及数据加密传输方法 | |
CN116633530A (zh) | 量子密钥传输方法、装置及*** | |
CN112703500A (zh) | 在低功率模式期间保护存储在IoT装置的存储器中的数据 | |
CN102487321B (zh) | 一种签密方法和*** | |
JP5393594B2 (ja) | 効率的相互認証方法,プログラム,及び装置 | |
CN112995213A (zh) | 一种安全认证方法及其应用装置 | |
CN114329522A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |