CN103685214B - 用于汽车电子控制单元的安全访问方法 - Google Patents
用于汽车电子控制单元的安全访问方法 Download PDFInfo
- Publication number
- CN103685214B CN103685214B CN201210446257.0A CN201210446257A CN103685214B CN 103685214 B CN103685214 B CN 103685214B CN 201210446257 A CN201210446257 A CN 201210446257A CN 103685214 B CN103685214 B CN 103685214B
- Authority
- CN
- China
- Prior art keywords
- controller
- value
- ecu
- inquiry
- control unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- 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
-
- 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/2103—Challenge-response
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Lock And Its Accessories (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种用于采用机制来解锁车辆ECU的系统和方法。ECU存储识别特定的ECU的独特的ECU识别值,安全服务器存储ECU识别值和独特的ECU安全密钥值,其中,识别值识别服务器中的安全密钥值,并且,安全服务器存储对于很多ECU来说独特的ECU识别值和独特的安全密钥值。希望访问ECU以便软件重新编程或维护的维护工具从ECU请求ECU识别值和询问,并将ECU识别值和询问发送给安全服务器,然后,安全服务器识别与ECU识别值相关联的安全密钥值和询问的响应。然后,安全服务器将响应发送给维护工具,维护工具将其提供给ECU以便解锁ECU来编程。
Description
技术领域
本发明总体涉及一种用于安全访问或解锁车辆上的电子控制单元(ECU)的系统和方法,更具体而言,涉及一种用于安全访问或解锁车辆上的ECU的系统和方法,其中,该系统包括从ECU接收ECU识别值和安全询问的远程安全服务器,并且该服务器使用ECU识别值来识别用于ECU的ECU安全密钥值,以便提供对询问的响应。
背景技术
很多现代车辆包括电子控制单元(ECU),或控制器,其控制车辆系统的操作,诸如动力系、气候控制系统、信息娱乐系统、车身系统、底盘系统、以及其它系统。这种控制器需要为特殊目的设计的软件,以便执行控制功能。随着这些控制器的数量以及复杂性增加,以及恶意软件开发者所带来的增长的威胁,现在比以往更重要的是认证安装在汽车控制器上的软件文件的来源和内容。在车辆控制器中使用未经适当证实的软件或者更糟的是恶意设计的软件的后果包括车辆或其系统的未曾预料的行为,失去车辆上的防盗特征,对诸如里程表等构件的潜在篡改,以及失去其它车辆特征和功能。
由于各种原因,车辆上的ECU必须偶尔进行维护或更新,其中,维护设施需要访问ECU,下载诊断故障代码或其它错误、对ECU重新编程,或者执行一些其它操作以便处理车辆问题。然而,为了安全,重要的是,仅认证的人员能够访问车辆上的ECU来执行维护操作,因为未经认证的使用者可能执行恶意或不当的活动,其不利地影响车辆操作。换句话说,重要的是,未经认证的使用者不能够访问车辆ECU来以可能是恶意的或损害车辆的软件来对ECU进行编程。因此,需要具有安全的技术来解锁ECU,以便编程、维护和其它操作。
使用某种类型的询问/响应机制,可以使车辆ECU解锁,用于安全敏感的诊断操作,询问/响应机制有时称为‘种子和密钥’,其中,种子代表询问,密钥代表响应。例如,试图访问ECU的维护工具将造成ECU发出询问消息,诸如某种类型的问题,其被预编程在ECU上,工具必须以适当的响应来回答该询问,该适当的响应也被预编程在ECU上,如果回答正确将使得ECU允许工具访问它。诊断标准识别该过程如何实施。例如,ISO14229限定了允许使用询问/响应机制解锁设备的安全访问服务。
以上所述类型的询问/响应机制通常有两个分类。第一分类包括固定的询问,其中询问以及因此其期望的响应都是固定的。在这种实施方式中,ECU简单地存储询问和响应,其中,不需要设备自身能够计算对于给定询问的响应。这种系统的一个缺点在于一旦响应被知道,则其永远被知道,今天解锁ECU的相同响应在明天也将解锁相同的ECU。因此,由这种类型的询问/响应机制所提供的安全是有限的。
第二分类包括可变的响应,其中,每个ECU解锁操作造成ECU发出不同的询问。这通常通过使要解锁的设备具有计算所给询问的响应的能力而实现。在很多实施方式中,其采用允许计算所给询问的响应的保密算法的形式。其优点在于防止响应在稍晚的时间被使用,但缺点在于,系统的安全依赖于算法的保密性。如果所有的设备使用相同的算法,则必须嵌入每个ECU中的算法的暴露将降低系统的整体安全性。
发明内容
根据本发明的教导,公开了用于解锁车辆ECU以便允许文件安装到ECU上的系统和方法。ECU存储识别特定的ECU的独特的ECU识别值,安全服务器存储ECU识别值和独特的ECU安全密钥值,其中,识别值识别服务器中的安全密钥值,并且,安全服务器存储对于很多ECU来说独特的ECU识别值和独特的安全密钥值。希望访问ECU以便软件重新编程或维护的维护工具从ECU请求ECU识别值和询问,并将ECU识别值和询问发送给安全服务器,然后,安全服务器识别与ECU识别值相关联的安全密钥值和询问的响应。然后,安全服务器将响应发送给维护工具,维护工具将其提供给ECU以便解锁ECU来编程。下一次ECU被维护时,其提供安全服务器将能够正确地响应的不同的询问,因为它知道ECU安全密钥值。
此外,本发明还涉及以下技术方案。
1. 一种允许访问车辆上的电子控制单元(ECU)的方法,所述方法包括:
在ECU的存储器中存储识别ECU的ECU识别值;
在远程安全数据库中存储所述ECU识别值以及与所述ECU识别值相关联的ECU安全密钥值;
由维护工具从ECU请求所述ECU识别值;
响应于所述请求,在ECU中产生询问;
从ECU向所述维护工具发送所述ECU识别值和所述询问;
从所述维护工具向所述安全数据库发送所述ECU识别值和所述询问;
识别对应于所述ECU识别值的EUC安全密钥值;
基于所述ECU安全密钥值在所述数据库中产生消息,该消息包括对所述询问的响应;
从所述数据库向所述维护工具发送所述消息;
从所述维护工具向所述ECU发送所述消息;以及
如果所述询问的响应被ECU所接受,则允许访问ECU。
2. 如技术方案1所述的方法,其中,在所述数据库中产生消息包括使用对所述ECU安全密钥值进行加密的安全消息认证码来提供认证器。
3. 如技术方案1所述的方法,其中,除了所述ECU识别值被用于识别所述ECU安全密钥值之外,在所述ECU识别值和所述ECU安全密钥值之间没有其它关系。
4. 如技术方案1所述的方法,其中,所述ECU识别值和所述ECU安全密钥值通过保密密钥来关联,其中,所述ECU安全密钥值使用所述ECU识别值和所述保密密钥来计算。
5. 如技术方案4所述的方法,其中,所述ECU安全密钥使用安全加密消息认证码来计算。
6. 如技术方案4所述的方法,其中,所述ECU安全密钥值在预配服务器处进行计算。
7. 如技术方案1所述的方法,其中,将所述ECU识别值和所述询问发送给所述安全数据库以及将所述ECU识别值和所述询问从所述维护工具发送给所述安全数据库包括使用通信链路,该通信链路选自短消息、因特网、网页访问、SMS文本消息、智能手机、电子邮件、语音响应系统和电话连接。
8. 如技术方案1所述的方法,其中,在ECU中产生询问包括计算随机或伪随机的比特值。
9. 如技术方案1所述的方法,其中,在ECU中产生询问包括每次所述ECU识别值被请求时产生不同的询问。
10. 一种允许访问控制器的方法,所述方法包括:
在控制器的存储器中存储识别控制器的控制器识别值;
在远程安全数据库中存储所述控制器识别值以及与所述控制器识别值相关联的控制器安全密钥值;
由维护工具从控制器请求所述控制器识别值和询问;
响应于所述请求,在控制器中产生询问,其中,在控制器中产生询问包括每次所述控制器识别值被请求时产生不同的询问,并且其中,在控制器中产生询问包括计算随机或伪随机的比特值;
从控制器向所述维护工具发送所述控制器识别值和所述询问;
从所述维护工具向所述安全数据库发送所述控制器识别值和所述询问;
识别对应于所述控制器识别值的控制器安全密钥值;
基于所述控制器安全密钥值在所述数据库中产生消息,该消息包括对所述询问的响应;
从所述数据库向所述维护工具发送所述消息;
从所述维护工具向所述控制器发送所述消息;以及
如果所述询问的响应被控制器所接受,则允许访问控制器。
11. 如技术方案10所述的方法,其中,在所述数据库中产生消息包括使用对所述控制器安全密钥值进行加密的安全消息认证码来提供认证器。
12. 如技术方案10所述的方法,其中,除了所述控制器识别值被用于识别所述控制器安全密钥值之外,在所述控制器识别值和所述控制器安全密钥值之间没有其它关系。
13. 如技术方案10所述的方法,其中,所述控制器识别值和所述控制器安全密钥值通过保密密钥来关联,其中,所述控制器安全密钥值使用所述控制器识别值和所述安全密钥来计算。
14. 一种允许访问控制器的系统,所述系统包括:
在控制器的存储器中存储识别控制器的控制器识别值的装置;
在远程安全数据库中存储所述控制器识别值以及与所述控制器识别值相关联的控制器安全密钥值的装置;
由维护工具从控制器请求所述控制器识别值和询问的装置;
响应于所述请求在控制器中产生询问的装置;
从控制器向所述维护工具发送所述控制器识别值和所述询问的装置;
从所述维护工具向所述安全数据库发送所述控制器识别值和所述询问的装置;
识别对应于所述控制器识别值的控制器安全密钥值的装置;
基于所述控制器安全密钥值在所述数据库中产生消息的装置,该消息包括对所述询问的回答;
从所述数据库向所述维护工具发送所述消息的装置;
从所述维护工具向所述控制器发送所述消息装置;以及
如果所述询问的响应被控制器所接受则允许访问控制器的装置。
15. 如技术方案14所述的系统,其中,在所述数据库中产生消息的装置使用对所述控制器安全密钥值进行加密的安全消息认证码来提供认证器。
16. 如技术方案14所述的系统,其中,除了所述控制器识别值被用于识别所述控制器安全密钥值之外,在所述控制器识别值和所述控制器安全密钥值之间没有其它关系。
17. 如技术方案14所述的系统,其中,所述控制器识别值和所述控制器安全密钥值通过保密密钥来关联,其中,所述控制器安全密钥值使用所述控制器识别值和所述安全密钥来计算。
18. 如技术方案14所述的系统,其中,在ECU中产生询问的装置计算随机或伪随机的比特值。
19. 如技术方案14所述的系统,其中,在ECU中产生询问的装置在每次所述ECU识别值被请求时产生不同的询问。
本发明的其它特征将从结合附图的以下描述和权利要求变得清楚。
附图说明
图1是包括车辆ECU的车辆的示意图;以及
图2是使用远程安全数据库来解锁ECU的流程图。
具体实施方式
以下描述的本发明的实施例涉及用于解锁或访问安全车辆ECU的系统和方法,其在本质上仅为示例性的,绝非意图限制本发明或其应用或用途。例如,本发明具有访问车辆ECU的具体应用。然而,本领域技术人员应当理解的是,本发明的技术可具有访问其它控制器的应用。
本发明提出允许安全访问车辆ECU以便安装软件的方法。该方法与相关国际标准中限定的安全访问方法兼容,诸如ISO14229,并且比已经提出的其它方法提供更好的安全性。本发明的总体思想是提供ECU专用的安全密钥,ECU和制造商都知道该安全密钥。该安全密钥用于加密的认证算法,例如消息认证码(MAC),以产生询问/响应系统。要解锁的ECU提供独特的ID,该独特的ID用于在限定的数据库中查询安全密钥,该限定的数据库例如由车辆制造商所提供,并且制造商能够使用该密钥产生对于ECU所提供的询问的有效响应。ECU内的加密算法可以被公开而不会降低系统的安全性,因为安全性依赖于安全密钥,而该安全密钥对于各个ECU是不同的。
试图解锁ECU的维护设施需要与远程位置的安全服务器通信。该通信可以通过直接连接到因特网来实现,或者通过各种其它通信机制,诸如短消息、网页访问、SMS文本消息、电话语音响应系统等。需要在ECU和安全服务器之间交换的较小量的信息使该通信变得容易。所提出的改进利用第二加密算法从ECU的独特识别信息而得到ECU专用的安全密钥,从而使得实现数据库的功能更简单,该第二加密算法将安全密钥与ID直接关联,即,密钥是ID的加密函数,不需要产生安全密钥数据库。
图1是车辆10的示意图,该车辆10包括ECU12,其用于表示车辆10上的一个或多个ECU,不限制车辆的类型、ECU12的类型、ECU12的目的等。如以下所讨论的,本发明描述了一种解锁ECU12的技术,使得能够通过利用维护工具14的维护设施进行编程或维护软件文件的安装。根据本发明,相同车辆上的每个ECU或不同车辆上的每个ECU将具有其自身的ECU识别值和安全码或密钥。如以下详细所述,维护工具14从ECU12获得ECU识别值和询问,并将它们发送给远程的设施或安全服务器16,该远程的设施或安全服务器16还存储系统中的所有ECU的识别值和安全密钥。服务器16从工具14接收ECU识别值和询问,从识别值识别ECU安全密钥,并且从安全密钥识别存储在服务器16上的对询问的响应。服务器16将响应发送给工具14,工具14将其提供给ECU12,如果正确,则允许工具14访问ECU12。
为了解锁车辆ECU所提出的询问响应机制没有以上所述的缺点。基本上,车辆10中的每个不同的ECU使用不同的算法。结果,一个ECU或其它设备的成功的反向工程仅影响该设备的安全性,而不影响系统中的其它设备。然而,该过程已经被修改,更符合为了诊断操作而安全解锁的要求。
如所述的,用于解锁ECU而使用询问/响应机制要求能够认证操作的实体,即,安全服务器16。安全服务器16拥有认证所有的ECU所需要的所有信息,因此,安全服务器16的安全性(物理上和信息技术上)对于系统是非常重要的。在理想的实施方式中,安全服务器16将定位在安全数据中心,并且访问服务器16需要通过非常小心地控制的网络连接。存在“便携”安全服务器,即使仅用于开发或维护操作,也将使安全服务器16及因此系统整体的安全性受到威胁,因此应该避免。
每个ECU12具有ECU专用的识别值IDECU,该值对于ECU12是独特的,即,相同类型的ECU中的任何两个不同的ECU将具有不同的IDECU值。存储该值的存储器不需要被保护而不能够诊断读取,但应该被保护而不能够诊断写入。应该存在一机制允许当ECU12处于锁定的安全状态时该信息可以从ECU12获取,例如使用ISO14229的ReadDataByIdentifier服务通过非安全的DID读取来获取。应该注意,很多的ECU已经提供通过DID可跟踪的信息,包括序列号信息。如果对于每个ECU12是独特的,则可跟踪信息可以用于该IDECU值。
每个ECU12还具有ECU专用的保密密钥值KECU,该值对于每个ECU12是专用的,即,相同类型的ECU12中的任何两个不同的ECU将具有不同的KECU值。存储KECU值的存储器必须被保护不能进行读取或写入存储器的诊断操作,并且应该不具有允许该信息被读取或更改的诊断服务。
操作系统的实体对于每个产生的ECU12保持IDECU、KECU值对的数据库。该数据库必须以安全的方式实现,因为数据库的暴露将损害系统的安全性。该数据库必须支持查询功能,即,给定IDECU值,则返回相应的ECU专用值KECU。
IDECU和KECU值都是在完成车辆制造之前被编程到ECU12中,例如,通过ECU制造商或作为ECU12所安装的车辆的组装操作的一部分。结果,要装配的每个ECU12将具有独特的一组IDECU、KECU值,并且安全服务器16必须支持对于所有装配车辆的IDECU和KECU值的查询。
图2是示出了用于以上所述方式解锁ECU12的一个过程的流程图40。过程的一些步骤由ECU12执行,一些由维护技术人员所使用的工具14来执行,一些由可访问IDECU、KECU对数据库的安全服务器16来执行。
在框42中,工具14利用例如ISO14229的ReadDataByIdentifier服务来查询ECU12,以便获得ECU专用的IDECU值,ECU12通过提供其IDECU值来响应查询。然后,在框44,通过从ECU12请求所希望解锁的源类型的种子,例如编程或I/O控制,工具14开始ISO14229的SecurityAccess服务请求。这可以通过使用ECU12中的RequestSeed或RequestSeed_IO_Control子函数来是实现。
在框46,ECU12计算随机或伪随机的32比特值Ci,作为ISO14229的SecurityAccess过程中的种子。应该注意,选择32比特值作为种子是一种非限制性示例,可以采用任何适当的种子。如果KECU值被调节以产生不可预测的伪随机值,则每次过程被初始化,该值必须被改变,不应该是可以预测的,并且必须不能够泄露任何关于KECU值的任何有用信息。存在很多已知技术来产生这种随机值,并且在汽车领域其被很好地实践,因为其用作防盗系统中的询问。2006年4月25日授权给Forest等人的题目为“Motor Vehicle Engine ImmobilizerSecurity System and Method”的美国专利7034654公开了技术的一个示例,其将伪随机和真随机信息组合以产生用于Ci的值,该专利受让给本申请的受让人,并且通过引用而结合在本文中。然后,在框48,ECU12响应ISO14229的SecurityAccess RequestSeed请求,在ISO14229的SecurityAccess的响应消息中将Ci值作为种子值提供给工具14。
然后,在框50,工具14准备好包含IDECU和Ci值的消息,并且将其发送给服务器16。然后,在框52,服务器16使用对安全数据库的访问来查询对应于所提供的IDECU值的KECU值。注意,KECU值永远不离开安全服务器16。然后,在框54,如果需要的话,服务器16产生消息MSGi,该消息包括连结了其它预先限定的填充数据PAD以及连结了IDECU值的Ci值。换句话说:
MSGi = Ci | IDECU | PAD (1)
在框56,服务器16使用本领域技术人员熟知的由KECU值加密的安全消息认证码(MAC)来计算认证器Ai,如下:
Ai = MAC(MSGi, KECU) (2)
认证器Ai(其大小由MAC算法的细节来决定)的长度被减小到32比特,例如通过仅保留认证器Ai的最不重要的32比特。减小的长度值作为响应,记为Ri,如下:
Ri= Reduce_to_32_bits(Ai) (3)
然后,在框58,服务器16准备好包含响应Ri的消息,并且将其发送给工具14,如下所述。在框60,通过利用子函数SendKey将另一SecurityAccess消息发送给ECU12,使用响应Ri作为SecurityAccess过程所要求的32比特密钥,工具14继续ISO14229过程。在框62,ECU12从工具14接收ISO14229密钥值,并且执行与服务器16所进行的计算类似的计算,以便计算出Ri值,如下:
MSGi = Ci | IDECU | PAD (4)
Ai = MAC(MSGi, KECU) (5)
Ri= Reduce_to_32_bits(Ai) (6)
在判决框64中,ECU12将在ISO14229安全访问过程中接收到的密钥与所计算出的Ri值进行比较。如果两个值精确地匹配,则在框66,ECU12执行安全解锁操作。如果两个值有任何的不同,则在框68,ECU12将不执行安全解锁。在框70中,取决于比较的结果,ECU12还发送适当的ISO14229响应消息。
在框50和58的过程要求工具14和服务器16之间的通信,其可以是任何适当的通信。例如,最方便的机制可以是,工具14和服务器16可以都直接地连接到网络,诸如通过因特网。可以使用若干其它更间接的通信方法。由于在框50和58中的过程中发送的信息是相对紧凑的,即,其大小可以由人工以较低的错误可能性来较容易地处理,因此,如果直接的连接不可行,则也可以使用多种间接的机制。一些示例可以包括将信息显示在工具14上,然后允许技术人员将显示的数据输入到基于网络的至服务器16的接口中,其中,服务器16将所得到的Ri值显示在网页上,并且技术人员将响应键入工具14中。该过程的变型可以包括使用语音响应系统,使用SMS消息,使用在类似智能电话设备上的应用,使用电子邮件等等。
不管机制如何,假定与服务器16的交互具有某种类型的有效访问控制机制,即,限制谁能够获得解锁的能力。由于提供这种服务的公司可能将对于提供访问收费,因此,也可能的是,这种机制已经在使用了。此外,重要的是,服务器16保持处理的安全日志,即,谁执行了处理,它们什么时候被执行的,目标ECU等。这些日志可以用于检测破坏系统的企图,并且如果破坏确实发生了,用于识别谁或者什么受到了影响。
以上所述的安全服务器16的更为困难的方面之一是保持IDECU、KECU对的数据库并且提供快速访问来查询由IDECU值索引的KECU值。在之前的描述中,在IDECU值和KECU值之间没有关系,即,它们可以各被视为随机数。然而,从操作角度来看,如果在KECU值和IDECU值之间具有固定的关系,该关系允许从ID确定密钥,则可以省去对数据库的需要。这可以有很多方式来实现。一个非限制性示例的实施方式可以是,通过加密操作将两个值关联起来,其允许拥有密钥的某个人在给定IDECU值的情况下确定KECU值。这可以使用安全加密MAC函数来实现,该函数利用单独的保密密钥KMANUF来加密,其将用于对给定的IDECU值产生KECU值,其方式类似于以下:
MSGECU = ( IDECU | PAD ) (7)
KECU = MAC(MSGECU, KMANUF) (8)
此处,PAD代表预先限定的填充数据,如果需要满足MAC函数的输入要求的话。并且,注意,保密密钥KMANUF不同于系统中的每个KECU值,并且没有要求将保密密钥KMANUF放置在任何ECU12或维护工具14中,即,当被预配时,ECU12简单地设置有利用保密密钥KMANUF所产生的IDECU、KECU对。
以上所述的机制将对于每个IDECU值计算独特的KECU值,并且加密MAC的安全性使得不具有保密密钥KMANUF的黑客难以确定给定的IDECU值的KECU值。当这种关系存在于KECU和IDECU值之间时,将IDECU和KECU对关联起来的数据库可以被使用由安全服务器16所提供的IDECU值进行的KECU值的在线计算取代。
重要的是要认识到,这种系统的安全性很大程度上依赖于保密密钥KMANUF的安全性。理想的是,保密密钥KMANUF将永不离开安全服务器16,并且安全服务器16将被用于产生预配ECU所需要的IDECU、KECU对的序列。如果需要,可以具有预配服务器(provisioningserver,未示出),该预配服务器产生初始预配ECU以便与安全服务器16分开所需要的对,该安全服务器16重新获得给定IDECU值的KECU值。这可以允许例如将预配服务器放置在制造地点,以及将安全服务器16放置在安全数据中心。
还应该注意,不需要要求所有的ECU使用相同的保密密钥KMANUF值来建立起IDECU、KECU对之间的关系。对于不同的ECU类型使用不同的KMANUF值将允许例如产生仅能够预配单个类型的ECU12的预配服务器。对于预配服务器的损害将仅损害该类型的ECU,即,将不会允许解锁使用不同的保密密钥KMANUF值的其它ECU。清楚的是,这种实施方式还将要求一些其它信息,例如,ECU类型,以便允许安全服务器16确定用来重新获得该ECU类型的KECU值的保密密钥KMANUF的正确值。
本领域技术人员很容易理解,为描述本发明而在此处讨论的若干和各种步骤和过程可能涉及通过计算机、处理器或使用电现象操纵和/或转换数据的其他电子计算设备执行的操作。那些计算机和电子设备可采用各种易失的和/或非易失的内存,该内存包括其上存有可执行程序的非临时性计算机可读介质,该程序包括能够由计算机或处理器执行的各种代码和可执行指令,在这里内存和/或计算机可读介质可以包括所有形式和类型的内存和其它计算机可读介质。
前述论述仅公开和描述了本发明的示例性实施例。本发明技术人员将从该论述以及附图和权利要求容易地懂得,在不偏离以下权利要求限定的本发明的精神和范围的情况下,可以做出各种改变,变换和变形。
Claims (19)
1.一种允许访问车辆上的电子控制单元的方法,所述方法包括:
在电子控制单元的存储器中存储识别电子控制单元的电子控制单元识别值;
在远程安全数据库中存储所述电子控制单元识别值以及与所述电子控制单元识别值相关联的电子控制单元安全密钥值;
由维护工具从电子控制单元请求所述电子控制单元识别值;
响应于所述请求,在电子控制单元中产生询问;
从电子控制单元向所述维护工具发送所述电子控制单元识别值和所述询问;
从所述维护工具向所述远程安全数据库发送所述电子控制单元识别值和所述询问;
识别对应于所述电子控制单元识别值的电子控制单元安全密钥值;
基于所述电子控制单元安全密钥值在所述远程安全数据库中产生消息,该消息包括对所述询问的响应;
从所述远程安全数据库向所述维护工具发送所述消息;
从所述维护工具向所述电子控制单元发送所述消息;以及
如果所述询问的响应被电子控制单元所接受,则允许访问电子控制单元。
2.如权利要求1所述的方法,其中,在所述远程安全数据库中产生消息包括使用对所述电子控制单元安全密钥值进行加密的安全消息认证码来提供认证器。
3.如权利要求1所述的方法,其中,除了所述电子控制单元识别值被用于识别所述电子控制单元安全密钥值之外,在所述电子控制单元识别值和所述电子控制单元安全密钥值之间没有其它关系。
4.如权利要求1所述的方法,其中,所述电子控制单元识别值和所述电子控制单元安全密钥值通过保密密钥来关联,其中,所述电子控制单元安全密钥值使用所述电子控制单元识别值和所述保密密钥来计算。
5.如权利要求4所述的方法,其中,所述保密密钥使用安全加密消息认证码来计算。
6.如权利要求4所述的方法,其中,所述保密密钥在预配服务器处进行计算。
7.如权利要求1所述的方法,其中,将所述电子控制单元识别值和所述询问发送给所述远程安全数据库以及将所述电子控制单元识别值和所述询问从所述维护工具发送给所述远程安全数据库包括使用通信链路,该通信链路选自短消息、因特网、网页访问、SMS文本消息、智能手机、电子邮件、语音响应系统或电话连接。
8.如权利要求1所述的方法,其中,在电子控制单元中产生询问包括计算随机或伪随机的比特值。
9.如权利要求1所述的方法,其中,在电子控制单元中产生询问包括每次所述电子控制单元识别值被请求时产生不同的询问。
10.一种允许访问控制器的方法,所述方法包括:
在控制器的存储器中存储识别控制器的控制器识别值;
在远程安全数据库中存储所述控制器识别值以及与所述控制器识别值相关联的控制器安全密钥值;
由维护工具从控制器请求所述控制器识别值和询问;
响应于所述请求,在控制器中产生询问,其中,在控制器中产生询问包括每次所述控制器识别值被请求时产生不同的询问,并且其中,在控制器中产生询问包括计算随机或伪随机的比特值;
从控制器向所述维护工具发送所述控制器识别值和所述询问;
从所述维护工具向所述远程安全数据库发送所述控制器识别值和所述询问;
识别对应于所述控制器识别值的控制器安全密钥值;
基于所述控制器安全密钥值在所述远程安全数据库中产生消息,该消息包括对所述询问的响应;
从所述远程安全数据库向所述维护工具发送所述消息;
从所述维护工具向所述控制器发送所述消息;以及
如果所述询问的响应被控制器所接受,则允许访问控制器。
11.如权利要求10所述的方法,其中,在所述远程安全数据库中产生消息包括使用对所述控制器安全密钥值进行加密的安全消息认证码来提供认证器。
12.如权利要求10所述的方法,其中,除了所述控制器识别值被用于识别所述控制器安全密钥值之外,在所述控制器识别值和所述控制器安全密钥值之间没有其它关系。
13.如权利要求10所述的方法,其中,所述控制器识别值和所述控制器安全密钥值通过保密密钥来关联,其中,所述控制器安全密钥值使用所述控制器识别值和所述保密密钥来计算。
14.一种允许访问控制器的系统,所述系统包括:
在控制器的存储器中存储识别控制器的控制器识别值的装置;
在远程安全数据库中存储所述控制器识别值以及与所述控制器识别值相关联的控制器安全密钥值的装置;
由维护工具从控制器请求所述控制器识别值和询问的装置;
响应于所述请求在控制器中产生询问的装置;
从控制器向所述维护工具发送所述控制器识别值和所述询问的装置;
从所述维护工具向所述远程安全数据库发送所述控制器识别值和所述询问的装置;
识别对应于所述控制器识别值的控制器安全密钥值的装置;
基于所述控制器安全密钥值在所述远程安全数据库中产生消息的装置,该消息包括对所述询问的回答;
从所述远程安全数据库向所述维护工具发送所述消息的装置;
从所述维护工具向所述控制器发送所述消息的装置;以及
如果所述询问的回答被控制器所接受则允许访问控制器的装置。
15.如权利要求14所述的系统,其中,在所述远程安全数据库中产生消息的装置使用对所述控制器安全密钥值进行加密的安全消息认证码来提供认证器。
16.如权利要求14所述的系统,其中,除了所述控制器识别值被用于识别所述控制器安全密钥值之外,在所述控制器识别值和所述控制器安全密钥值之间没有其它关系。
17.如权利要求14所述的系统,其中,所述控制器识别值和所述控制器安全密钥值通过保密密钥来关联,其中,所述控制器安全密钥值使用所述控制器识别值和所述保密密钥来计算。
18.如权利要求14所述的系统,其中,在控制器中产生询问的装置计算随机或伪随机的比特值。
19.如权利要求14所述的系统,其中,在控制器中产生询问的装置在每次所述控制器识别值被请求时产生不同的询问。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161552984P | 2011-10-28 | 2011-10-28 | |
US13/627897 | 2012-09-26 | ||
US13/627,897 US9280653B2 (en) | 2011-10-28 | 2012-09-26 | Security access method for automotive electronic control units |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103685214A CN103685214A (zh) | 2014-03-26 |
CN103685214B true CN103685214B (zh) | 2017-03-01 |
Family
ID=48173890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210446257.0A Active CN103685214B (zh) | 2011-10-28 | 2012-11-09 | 用于汽车电子控制单元的安全访问方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9280653B2 (zh) |
CN (1) | CN103685214B (zh) |
DE (1) | DE102012110499B9 (zh) |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013101508A1 (de) * | 2012-02-20 | 2013-08-22 | Denso Corporation | Datenkommunikationsauthentifizierungssystem für ein Fahrzeug, Netzkopplungsvorrichtung für ein Fahrzeug, Datenkommunikationssystem für ein Fahrzeug und Datenkommunikationsvorrichtung für ein Fahrzeug |
CN103631192B (zh) * | 2013-11-29 | 2017-12-05 | 上汽通用五菱汽车股份有限公司 | 临时授权型的汽车ecu安全认证方法及系统 |
DE102013225755A1 (de) | 2013-12-12 | 2015-06-18 | Robert Bosch Gmbh | Verfahren zur zeitbeschränkten Freigabe eines Zugriffs eines externen Geräts auf Daten in einem Fahrzeug sowie Vorrichtung hierzu |
DE102014200116A1 (de) * | 2014-01-08 | 2015-07-09 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Freigabe von Funktionen eines Steuergerätes |
CN106030600B (zh) | 2014-02-28 | 2018-10-16 | 日立汽车系统株式会社 | 认证系统、车载控制装置 |
US9792440B1 (en) * | 2014-04-17 | 2017-10-17 | Symantec Corporation | Secure boot for vehicular systems |
US9477843B2 (en) * | 2014-06-11 | 2016-10-25 | GM Global Technology Operations LLC | Inhibiting access to sensitive vehicle diagnostic data |
CN104134047B (zh) * | 2014-07-01 | 2018-01-02 | 潍柴动力股份有限公司 | 实现ecu的安全访问方法、ecu及上位机 |
CN106464557B (zh) * | 2014-07-10 | 2020-04-24 | 松下电器(美国)知识产权公司 | 车载网络系统、电子控制单元、接收方法以及发送方法 |
US10211990B2 (en) * | 2014-07-25 | 2019-02-19 | GM Global Technology Operations LLC | Authenticating messages sent over a vehicle bus that include message authentication codes |
US20160099806A1 (en) * | 2014-10-07 | 2016-04-07 | GM Global Technology Operations LLC | Distributing secret keys for managing access to ecus |
US9854442B2 (en) * | 2014-11-17 | 2017-12-26 | GM Global Technology Operations LLC | Electronic control unit network security |
DE102014224208A1 (de) * | 2014-11-27 | 2016-06-02 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Kontrolle zumindest eines Datenabrufs von einem Steuergerät einesFahrzeugs sowie Verfahren und Vorrichtung zum Abrufen von Daten von einem Steuergerät eines Fahrzeugs |
CN105763403A (zh) * | 2014-12-15 | 2016-07-13 | 中华汽车工业股份有限公司 | 车载控制局域网络系统 |
KR101647113B1 (ko) | 2015-02-24 | 2016-08-09 | 현대자동차주식회사 | 텔레매틱스 단말, 데이터 센터, 각각의 제어 방법 및 데이터 서비스 시스템 |
US11201736B2 (en) * | 2015-08-05 | 2021-12-14 | Kddi Corporation | Management device, management system, key generation device, key generation system, key management system, vehicle, management method, key generation method, and computer program |
US10166993B2 (en) | 2015-08-05 | 2019-01-01 | Ford Global Technologies, Llc | Customer driving mode for vehicles |
JP6178390B2 (ja) * | 2015-08-05 | 2017-08-09 | Kddi株式会社 | 管理装置、管理システム、車両、管理方法、及びコンピュータプログラム |
CN105966352B (zh) * | 2015-10-21 | 2018-06-12 | 乐卡汽车智能科技(北京)有限公司 | 一种远程控制方法及装置 |
US10200371B2 (en) | 2015-11-09 | 2019-02-05 | Silvercar, Inc. | Vehicle access systems and methods |
KR20170082770A (ko) * | 2016-01-07 | 2017-07-17 | 현대자동차주식회사 | 전자제어장치(electronic control unit, ECU) 리프로그래밍의 경우 보조배터리 심방전 방지 방법 및 장치 |
DE102016104290A1 (de) | 2016-03-09 | 2017-09-14 | Dr. Ing. H.C. F. Porsche Aktiengesellschaft | Verwaltungssteuergerät für ein Fahrzeug |
WO2018007015A1 (de) * | 2016-07-04 | 2018-01-11 | Sew-Eurodrive Gmbh & Co. Kg | Sicherheitseinrichtung und verfahren zum betreiben eines systems |
CN106161441B (zh) * | 2016-07-05 | 2019-05-03 | 上汽通用汽车有限公司 | 一种用于车内局域网的安全诊断通信方法及系统 |
CN106230785A (zh) * | 2016-07-20 | 2016-12-14 | 南京铱迅信息技术股份有限公司 | 一种无私钥的https拒绝服务攻击的防御方法 |
CN110024324B (zh) | 2016-09-23 | 2022-09-20 | 苹果公司 | 网络通信业务的安全传送装置 |
KR101887974B1 (ko) * | 2016-12-01 | 2018-08-13 | 현대오트론 주식회사 | 엔진제어기의 안전부팅을 위한 시스템 및 방법 |
CN106814675A (zh) * | 2016-12-31 | 2017-06-09 | 华晨汽车集团控股有限公司 | 用于验证汽车诊断设备合法性的安全访问方法 |
WO2018127816A1 (en) * | 2017-01-03 | 2018-07-12 | Karamba Security | Mode-based controller security and malware prevention |
US10491392B2 (en) * | 2017-03-01 | 2019-11-26 | Ford Global Technologies, Llc | End-to-end vehicle secure ECU unlock in a semi-offline environment |
US10796500B2 (en) | 2017-08-01 | 2020-10-06 | Ford Global Technologies, Llc | Electronic communication modules provisioning for smart connectivity |
CN109391466A (zh) * | 2017-08-10 | 2019-02-26 | 比亚迪股份有限公司 | 汽车电子控制单元的安全访问方法、装置及系统 |
US10701102B2 (en) * | 2017-10-03 | 2020-06-30 | George Mason University | Hardware module-based authentication in intra-vehicle networks |
JP7037748B2 (ja) * | 2018-01-26 | 2022-03-17 | トヨタ自動車株式会社 | 電子制御ユニット及び接続認証方法 |
US11178158B2 (en) * | 2018-01-29 | 2021-11-16 | Nagravision S.A. | Secure communication between in-vehicle electronic control units |
CN111417908A (zh) * | 2018-06-01 | 2020-07-14 | 深圳市元征软件开发有限公司 | 一种ecu识别器及其识别方法、系统、设备、介质 |
US10802902B2 (en) * | 2018-10-23 | 2020-10-13 | GM Global Technology Operations LLC | Notification of controller fault using message authentication code |
US11252567B2 (en) * | 2018-12-21 | 2022-02-15 | Intel Corporation | Methods and apparatus for detecting attacks in V2X networks |
US11290437B2 (en) * | 2018-12-27 | 2022-03-29 | Beijing Voyager Technology Co., Ltd. | Trusted platform protection in an autonomous vehicle |
CN112084507A (zh) * | 2019-06-13 | 2020-12-15 | 罗伯特·博世有限公司 | 对电子控制单元进行安全访问的方法 |
US11397823B1 (en) | 2019-06-26 | 2022-07-26 | Amazon Technologies, Inc. | Remote hardware access service |
CN112448816B (zh) | 2019-08-31 | 2021-10-19 | 华为技术有限公司 | 一种身份验证方法及装置 |
US11710355B1 (en) | 2019-09-24 | 2023-07-25 | Amazon Technologies, Inc. | Vehicle fleet information service |
CN113098830B (zh) * | 2019-12-23 | 2022-05-17 | 华为技术有限公司 | 通信方法及相关产品 |
JP7322732B2 (ja) * | 2020-02-03 | 2023-08-08 | トヨタ自動車株式会社 | 認証システム |
US11314495B2 (en) | 2020-03-30 | 2022-04-26 | Amazon Technologies, Inc. | In-vehicle synthetic sensor orchestration and remote synthetic sensor service |
CN113497704A (zh) * | 2020-04-01 | 2021-10-12 | 罗伯特·博世有限公司 | 车载密钥生成方法、车辆及计算机可读存储介质 |
CN111651748B (zh) * | 2020-05-29 | 2023-03-14 | 重庆长安汽车股份有限公司 | 一种车内ecu的安全访问处理系统及其方法 |
CN111897545B (zh) * | 2020-06-28 | 2022-02-01 | 东风汽车集团有限公司 | 应用于ecu的安全访问方法和系统 |
US11804981B2 (en) * | 2021-01-14 | 2023-10-31 | Gm Global Technology Operations, Llc | Method and apparatus for providing an individually secure system to multiple distrusting parties |
US11887411B2 (en) | 2021-01-27 | 2024-01-30 | Amazon Technologies, Inc. | Vehicle data extraction service |
US11743334B2 (en) | 2021-03-31 | 2023-08-29 | Amazon Technologies, Inc. | In-vehicle distributed computing environment |
CN113709103A (zh) * | 2021-07-19 | 2021-11-26 | 英博超算(南京)科技有限公司 | 一种汽车ecu网关指纹vfp解密系统及方法 |
CN113709102A (zh) * | 2021-07-19 | 2021-11-26 | 英博超算(南京)科技有限公司 | 一种基于pki非对称机制的网关ecu安全服务系统 |
CN113708922B (zh) * | 2021-07-19 | 2023-09-12 | 英博超算(南京)科技有限公司 | 一种汽车指纹vfp的安全更新方法 |
US20230064153A1 (en) * | 2021-08-26 | 2023-03-02 | Robert Bosch Gmbh | System and method to detect malicious use of diagnostic state changes in a vehicle |
US11902374B2 (en) | 2021-11-29 | 2024-02-13 | Amazon Technologies, Inc. | Dynamic vehicle data extraction service |
CN114513475B (zh) * | 2022-02-15 | 2024-03-19 | 一汽解放汽车有限公司 | 报文交互方法、装置、控制器、存储介质和程序产品 |
DE102022106746A1 (de) | 2022-03-23 | 2023-09-28 | Audi Aktiengesellschaft | Verfahren zum Betrieb eines kryptographisch gesicherten Systems für ein Kraftfahrzeug |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101014958A (zh) * | 2004-07-09 | 2007-08-08 | 松下电器产业株式会社 | 管理用户认证和服务授权以获得单次登录来接入多个网络接口的系统和方法 |
CN101187989A (zh) * | 2001-07-10 | 2008-05-28 | 美国快递旅游服务股份有限公司 | 在有接触或无接触交易中使用射频识别支付的系统和方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6292718B2 (en) * | 1999-01-28 | 2001-09-18 | International Business Machines Corp. | Electronic control system |
US7010683B2 (en) * | 2000-01-14 | 2006-03-07 | Howlett-Packard Development Company, L.P. | Public key validation service |
US7322043B2 (en) * | 2002-06-20 | 2008-01-22 | Hewlett-Packard Development Company, L.P. | Allowing an electronic device accessing a service to be authenticated |
TW200417900A (en) * | 2003-03-03 | 2004-09-16 | Snap On Tech Inc | Method for providing a software module to an automotive vehicle control unit, and computer program for executing the method |
DE10323390A1 (de) * | 2003-05-23 | 2004-12-09 | Daimlerchrysler Ag | Telediagnose-Viewer |
US7475254B2 (en) * | 2003-06-19 | 2009-01-06 | International Business Machines Corporation | Method for authenticating software using protected master key |
US7034654B2 (en) * | 2004-01-13 | 2006-04-25 | General Motors Corporation | Motor vehicle engine immobilizer security system and method |
DE102006009098A1 (de) | 2006-02-28 | 2007-08-30 | Daimlerchrysler Ag | Kraftfahrzeugdiagnose und Fahrzeugannahme |
ATE491999T1 (de) * | 2006-10-06 | 2011-01-15 | Agere Systems Inc | Schutz von geheiminformationen in einem programmierten elektronischen gerät |
DE102007022100B4 (de) | 2007-05-11 | 2009-12-03 | Agco Gmbh | Kraftfahrzeugsteuergerätedatenübertragungssystem und -verfahren |
US8327153B2 (en) * | 2009-12-04 | 2012-12-04 | Electronics And Telecommunications Research Institute | Method and system for verifying software platform of vehicle |
JP5120437B2 (ja) * | 2010-10-19 | 2013-01-16 | トヨタ自動車株式会社 | 車載機、車両用認証システム及びデータ通信方法 |
US8484707B1 (en) * | 2011-06-09 | 2013-07-09 | Spring Communications Company L.P. | Secure changing auto-generated keys for wireless access |
-
2012
- 2012-09-26 US US13/627,897 patent/US9280653B2/en active Active
- 2012-11-02 DE DE102012110499.9A patent/DE102012110499B9/de active Active
- 2012-11-09 CN CN201210446257.0A patent/CN103685214B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101187989A (zh) * | 2001-07-10 | 2008-05-28 | 美国快递旅游服务股份有限公司 | 在有接触或无接触交易中使用射频识别支付的系统和方法 |
CN101014958A (zh) * | 2004-07-09 | 2007-08-08 | 松下电器产业株式会社 | 管理用户认证和服务授权以获得单次登录来接入多个网络接口的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20130111582A1 (en) | 2013-05-02 |
DE102012110499B9 (de) | 2017-12-07 |
DE102012110499A1 (de) | 2014-03-27 |
DE102012110499B4 (de) | 2017-09-21 |
CN103685214A (zh) | 2014-03-26 |
US9280653B2 (en) | 2016-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103685214B (zh) | 用于汽车电子控制单元的安全访问方法 | |
US10229547B2 (en) | In-vehicle gateway device, storage control method, and computer program product | |
US9965637B2 (en) | Method and device for activating functions of a control device | |
US11330432B2 (en) | Maintenance system and maintenance method | |
US9143320B2 (en) | Electronic key registration system | |
JP5900007B2 (ja) | 車両用データ通信認証システム及び車両用ゲートウェイ装置 | |
KR102639075B1 (ko) | 차량용 진단기 및 그 인증서 관리 방법 | |
US9479329B2 (en) | Motor vehicle control unit having a cryptographic device | |
US20110083161A1 (en) | Vehicle, maintenance device, maintenance service system, and maintenance service method | |
CN101120355B (zh) | 用于控制在存储器装置中存取的方法 | |
CN109714171B (zh) | 安全防护方法、装置、设备和介质 | |
US8035494B2 (en) | Motor vehicle control device data transfer system and process | |
CN103368739A (zh) | 用于车辆控制模块的安全软件文件传输系统和方法 | |
JP2008271506A (ja) | 機密保護装置 | |
CN105892348B (zh) | 用于运行控制设备的方法 | |
CN111508110B (zh) | 一种实现车辆远程锁定的方法及装置 | |
US10650137B2 (en) | Method, server, firewall, control device, and system for programming a control device of a vehicle | |
JP2013026964A (ja) | 車両用情報更新装置および車両用情報更新方法 | |
Markham et al. | A balanced approach for securing the OBD-II port | |
US9865108B2 (en) | Vehicle security system | |
KR102411797B1 (ko) | 하드웨어 기반의 차량 사이버보안시스템 | |
JP2023031804A (ja) | 機器制御装置、管理装置、機器管理システム、機器制御方法、及びプログラム | |
KR100787684B1 (ko) | 프로그래머블 로직 컨트롤러의 주변 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |