CN112055952B - 一种车载设备升级方法及相关设备 - Google Patents
一种车载设备升级方法及相关设备 Download PDFInfo
- Publication number
- CN112055952B CN112055952B CN201880092965.4A CN201880092965A CN112055952B CN 112055952 B CN112055952 B CN 112055952B CN 201880092965 A CN201880092965 A CN 201880092965A CN 112055952 B CN112055952 B CN 112055952B
- Authority
- CN
- China
- Prior art keywords
- vehicle
- key
- upgrade
- equipment
- upgraded
- 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
- 238000000034 method Methods 0.000 title claims abstract description 114
- 238000004891 communication Methods 0.000 claims abstract description 272
- 230000036961 partial effect Effects 0.000 claims abstract description 150
- 238000012545 processing Methods 0.000 claims abstract description 99
- 238000012795 verification Methods 0.000 claims description 43
- 230000008569 process Effects 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 7
- 230000002441 reversible effect Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 description 36
- 230000006870 function Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 22
- 239000000306 component Substances 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 238000009795 derivation Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005477 standard model Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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
-
- 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/083—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- 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/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- 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
- H04L9/3242—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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- 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
-
- 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/80—Wireless
- H04L2209/805—Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
-
- 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)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Power Engineering (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
- Telephone Function (AREA)
Abstract
本发明实施例公开了一种车载设备升级方法及相关设备,其中的方法可应用于智能车辆,所述智能车辆包括车载控制设备,方法可包括:所述车载控制设备接收通信设备发送的第一部分密钥;所述车载控制设备将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥;所述车载控制设备利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC。采用本申请,可以安全高效的进行车载设备的升级。
Description
技术领域
本申请涉及车载技术领域,尤其涉及一种车载设备升级方法及相关设备。
背景技术
未来的每辆车都是车联网中的一个网络节点,与电脑,手机等联网设备没有本质的不同。据估计,北美60%到70%车辆招回是由于固件/软件的原因,因此升级车载设备的固件/软件是必不可少的环节。传统待升级车载设备的固件/软件是采用车辆招回的方式,这种办法的缺点是:成本高、周期长。
因此,未来车载设备的升级应采用更灵活的远程升级,空中下载技术(Over-The-Air,OTA)的方式,就像现在的电脑和手机升级一样通过远程来升级。对车载设备进行远程固件/软件升级可带来很多好处。例如,便于关键的固件/软件bugs得以快速修复、增加车辆安全性、便于车辆在整个生命周期内及时添加新功能或特色等。因此采用OTA方式不需要车辆招回就可进行固件/软件升级,可为车辆生产商或销售商节省大量成本,同时也为车主带来便利。
然而,在智能车辆的远程升级过程中,可能存在一些安全隐患。例如,升级文件被非法窃取或者篡改,智能车辆内部的安全处理密钥被非法窃取或篡改等,这些都有可能导致车载设备升级的失败或异常,最终导致用户的驾驶安全受到威胁。因此,如何保证车载设备安全高效的进行固件/软件升级成为亟待解决的问题。
发明内容
本发明实施例所要解决的技术问题在于,提供一种车载设备升级方法及相关设备,解决了车载设备无法安全高效的进行固件/软件升级的问题。
第一方面,本发明实施例提供了一种车载设备升级方法,应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备,所述方法可包括:
所述车载控制设备接收通信设备发送的第一部分密钥;所述车载控制设备将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥;所述车载控制设备利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC。本发明实施例,通过在车载升级架构中,加入与智能车辆匹配的通信设备,并作为智能车辆的安全密钥分散保管的载体,使得智能车辆中的车载控制设备在需要对升级文件进行安全处理时,可以从通信设备处获得分散保管的密钥并进行密钥还原,并利用还原后的密钥对升级文件进行安全处理,以便于升级文件在车内的安全保存和/或安全传输,避免密钥单独存储在智能车辆或通信设备上,被不法分子轻易截获篡改,从而保证了智能车辆中升级文件的存储或传输的安全性,此外,在智能车辆中的车载控制设备和待升级车载设备之间进行升级文件的传输时,具体利用生成升级文件的MAC,并携带在第一升级文件中发送给待升级车载设备的方式,从而保证升级文件在车内传输过程的完整性,且减少了车内安全校验的计算量,提升升级效率。
在一种可能的实现方式中,所述通信设备为与所述智能车辆之间建立了匹配关系的终端设备,或者所述通信设备是为智能车辆提供特定服务的服务器,其中,所述升级包包括所述第一升级文件。本发明实施例提供两种不同的安全升级架构,当第一部分密钥来自于终端设备(如智能手机)时,智能车辆通过与终端设备之间的密钥分散存储管理,合作完成车辆内部的安全存储或传输;当第一部分密钥来自于服务器(可选的,密钥服务器或专用服务器)时,那么智能车辆通过与服务器之间的密钥分散存储管理,合作完成车辆内部的安全存储或传输。避免密钥只存储在一个设备上,被不法分子轻易截获篡改,从而保证了智能车辆中升级文件的存储或传输的安全性。
在一种可能的实现方式中,所述智能车辆还包括第一待升级车载设备;所述方法还包括:所述车载控制设备将所述安全处理后的第一升级文件发送给所述第一待升级车载设备;所述第一待升级车载设备利用存储在所述车载控制设备上的第二密钥对所述安全处理后的第一升级文件进行安全校验,所述第二密钥为与所述第一密钥预先匹配的密钥,所述安全校验为所述安全处理的逆操作;若校验成功,所述第一待升级车载设备根据校验成功的第一升级文件进行升级。本发明实施例,车载控制设备将分散保管的密钥还原得到第一密钥后,对升级文件进行安全处理,以将该安全处理后的升级文件安全传输给对应的待升级车载设备进行安全升级。保证了升级文件在智能车辆的车内传输即车载控制设备与待升级车载设备之间的传输过程中的安全性。
在一种可能的实现方式中,所述安全处理还包括利用所述第一密钥对所述第一升级文件和第一MAC进行加密;所述安全处理后的第一升级文件包括经过所述第一密钥加密后的所述第一升级文件和所述第一MAC。本发明实施例,通过在智能车辆中的车载控制设备和待升级车载设备之间进行升级文件的传输时,不仅利用生成升级文件的MAC,并携带在第一升级文件中,并且还进一步通过第一密钥对其进行加密,再发送给待升级车载设备的方式,不仅保证升级文件在车内传输过程的完整性,减少了车内安全校验的计算量,提升升级效率,并且还进一步的保证了升级文件的私密性,以避免被不法分子窃取。
在一种可能的实现方式中,所述车载控制设备接收通信设备发送的第一部分密钥之前,还包括:所述车载控制设备确定所述第一密钥以及所述第二密钥,并将所述第二密钥发送给所述第一待升级车载设备。本发明实施例,在智能车辆中的第一密钥分散保管之前,车载控制设备需要先确定车内使用的密钥对,并发送给对应的待升级车载设备。便于车载控制设备将升级文件利用与待升级车载设备协商好的第一密钥进行安全处理,且待升级车载设备利用协商好的匹配的第二密钥进行安全校验,以保证升级文件在车内的传输安全。
在一种可能的实现方式中,所述车载控制设备接收通信设备发送的第一部分密钥之前,还包括:所述车载控制设备将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥,并将所述第一部分密钥发送给所述通信设备。本发明实施例,在智能车辆中的第一密钥分散保管之前,车载控制设备与待升级车载设备协商好第一密钥和第二密钥之后,车载控制设备将第一密钥进行拆分,并将拆分的一部分发送至匹配的通信设备上进行存储,自身保存另一部分,以避免被一次性轻易的非法截获篡改。
在一种可能的实现方式中,所述车载控制设备接收通信设备发送的第一部分密钥之前,还包括:所述车载控制设备获取升级包,所述升级包包括所述第一升级文件;所述车载控制设备对所述升级包进行安全验证;在验证通过的情况下,所述车载控制设备向所述通信设备请求所述第一部分密钥。本发明实施例,在车载控制设备获取分散保管的部分密钥之前,首先需要获取包含升级文件的升级包,并且对该升级包进行安全验证,验证通过后,则启动将对应的将升级文件进行安全处理并传输给对应的待升级车载设备的流程,也才会向通信设备请求用于对升级文件进行安全处理的部分密钥。避免在没有确定车载升级包是否安全的情况下,过早获取第一部分密钥,以免被非法获取,进一步提升了车载升级的安全性。
在一种可能的实现方式中,所述通信设备包括终端设备;所述车载控制设备获取升级包之前,还包括:所述车载控制设备向所述通信设备发送安全升级请求,所述安全升级请求包括所述智能车辆的升级相关参数;在所述升级相关参数满足预设升级条件的情况下,所述车载控制设备接收所述通信设备发送的第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包。本发明实施例,在通信设备根据智能车辆的车载控制设备反馈的升级相关参数,判断出该智能车辆当前满足升级条件的情况下,才会指示或触发该智能车辆的车载控制设备进行车载升级包的获取,以提升车载升级的成功率。可以理解的是,智能车辆可以是从服务器处获取,也可以是通信设备上获取已经下载好的升级包。
在一种可能的实现方式中,所述方法还包括:所述车载控制设备和所述通信设备相互进行安全认证,以建立安全合作通道;所述车载控制设备接收通信设备发送的第一部分密钥,包括:所述车载控制设备通过所述安全通道接收通信设备发送的第一部分密钥。本发明实施例,车载控制设备和相匹配的通信设备之间建立安全通道,后续的车载控制设备和通信设备之间的第一部分密钥请求、安全认证请求等,都可以通过该安全通道来传输,以进一步的保证车载控制设备和通信设备之间的安全传输。
在一种可能的实现方式中,所述方法还包括:所述车载控制设备在所述第一待升级车载设备升级成功后,指示所述通信设备更新所述第一升级文件的回滚文件;和/或所述车载控制设备在所述第一待升级车载设备升级失败后,从所述通信设备获取所述第一升级文件的回滚文件,并发送给所述第一待升级车载设备进行回滚操作。本发明实施例,通信设备可以为智能车辆提供升级文件的回滚文件,无论在待升级车载设备升级成功或者失败的情况下,通信设备都对当前的升级文件进行回滚操作,以便于待升级车载设备后续升级时优回滚文件可以参考。
第二方面,本发明实施例提供了一种车载设备升级方法,应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备,所述方法包括:
通信设备向所述车载控制设备发送第一部分密钥,所述第一部分密钥用于所述车载控制设备与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥,所述第一密钥用于所述车载控制设备对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理还包括利用所述第一密钥对所述第一升级文件和第一MAC进行加密;所述安全处理后的第一升级文件包括经过所述第一密钥加密后的所述第一升级文件和所述第一MAC。本发明实施例,通过在车载升级架构中,加入与智能车辆匹配的通信设备,并作为智能车辆的安全密钥分散保管的载体,使得智能车辆中的车载控制设备在需要对升级文件进行安全处理时,可以从通信设备处获得分散保管的密钥并进行密钥还原,并利用还原后的密钥对升级文件进行安全处理,以便于升级文件在车内的安全保存和/或安全传输,避免密钥单独存储在智能车辆或通信设备上,被不法分子轻易截获篡改,从而保证了智能车辆中升级文件的存储或传输的安全性。
在一种可能的实现方式中,所述车载控制设备将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥;所述通信设备向所述车载控制设备发送第一部分密钥之前,还包括:所述通信设备接收所述车载控制设备发送的所述第一部分密钥。本发明实施例,在智能车辆中的第一密钥分散保管之前,车载控制设备与待升级车载设备协商好第一密钥和第二密钥之后,车载控制设备将第一密钥进行拆分,并将拆分的一部分发送至匹配的通信设备上进行存储,自身保存另一部分,以避免被一次性轻易的非法截获篡改。
在一种可能的实现方式中,所述通信设备向所述车载控制设备发送第一部分密钥之前,还包括:所述通信设备接收所述车载控制设备发送的第一部分密钥请求,所述第一部分密钥请求为所述车载控制设备对升级包进行安全验证且在验证通过的情况下发送的,所述升级包包括所述第一升级文件。本发明实施例,在车载控制设备获取分散保管的部分密钥之前,首先需要获取包含升级文件的升级包,并且对该升级包进行安全验证,验证通过后,则启动将对应的将升级文件进行安全处理并传输给对应的待升级车载设备的流程,也才会向通信设备请求用于对升级文件进行安全处理的部分密钥。避免在没有确定车载升级包是否安全的情况下,过早获取第一部分密钥,以免被非法获取,进一步提升了车载升级的安全性。
在一种可能的实现方式中,所述通信设备包括终端设备;所述通信设备接收所述车载控制设备发送的第一部分密钥请求之前,还包括:所述通信设备接收所述车载控制设备发送的安全升级请求,所述安全升级请求包括所述智能车辆的升级相关参数;所述通信设备判断所述升级相关参数是否满足预设升级条件;若满足,所述通信设备向所述车载控制设备发送第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包。本发明实施例,在通信设备根据智能车辆的车载控制设备反馈的升级相关参数,判断出该智能车辆当前满足升级条件的情况下,才会指示或触发该智能车辆的车载控制设备进行车载升级包的获取,以提升车载升级的成功率。可以理解的是,智能车辆可以是从服务器处获取,也可以是通信设备上获取已经下载好的升级包。
在一种可能的实现方式中,所述方法还包括:所述通信设备和所述车载控制设备相互进行安全认证,以建立安全合作通道;所述通信设备向所述车载控制设备发送第一部分密钥,包括:所述通信设备通过所述安全通道向所述车载控制设备发送第一部分密钥。本发明实施例,车载控制设备和相匹配的通信设备之间建立安全通道,后续的车载控制设备和通信设备之间的第一部分密钥请求、安全认证请求等,都可以通过该安全通道来传输,以进一步的保证车载控制设备和通信设备之间的安全传输。
在一种可能的实现方式中,所述方法还包括:在所述第一待升级车载设备升级成功后,所述通信设备接收所述车载控制设备发送的更新所述第一升级文件的回滚文件的指示;和/或在所述第一待升级车载设备升级失败后,所述通信设备向所述车载控制设备发送所述第一升级文件的回滚文件,以用于所述第一待升级车载设备进行回滚操作。本发明实施例,通信设备可以为智能车辆提供升级文件的回滚文件,无论在待升级车载设备升级成功或者失败的情况下,通信设备都对当前的升级文件进行回滚操作,以便于待升级车载设备后续升级时优回滚文件可以参考。
第三方面,本发明实施例提供了一种智能车辆,应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备;其中
所述车载控制设备,用于接收通信设备发送的第一部分密钥,并将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥,再利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC。
在一种可能的实现方式中,所述智能车辆还包括第一待升级车载设备;
所述车载控制设备,还用于将所述安全处理后的第一升级文件发送给所述第一待升级车载设备;
所述第一待升级车载设备,用于利用存储在所述车载控制设备上的第二密钥对所述安全处理后的第一升级文件进行安全校验,若校验成功,则根据校验成功的第一升级文件进行升级,所述第二密钥为与所述第一密钥预先匹配的密钥,所述安全校验为所述安全处理的逆操作。
在一种可能的实现方式中,所述安全处理还包括利用所述第一密钥对所述第一升级文件和第一MAC进行加密;所述安全处理后的第一升级文件包括经过所述第一密钥加密后的所述第一升级文件和所述第一MAC。
在一种可能的实现方式中,所述车载控制设备,还用于:
在接收通信设备发送的第一部分密钥之前,确定所述第一密钥以及所述第二密钥,并将所述第二密钥发送给所述第一待升级车载设备。
在一种可能的实现方式中,所述车载控制设备,还用于:
在接收通信设备发送的第一部分密钥之前,将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥,并将所述第一部分密钥发送给所述通信设备。
在一种可能的实现方式中,所述车载控制设备,还用于:
在接收通信设备发送的第一部分密钥之前获取升级包,并对所述升级包进行安全校验,在验证通过的情况下,向所述通信设备请求所述第一部分密钥,所述升级包包括所述第一升级文件。
在一种可能的实现方式中,所述通信设备包括终端设备;所述车载控制设备,还用于:
在获取升级包之前向所述通信设备发送安全升级请求,并在所述智能车辆的升级相关参数满足预设升级条件的情况下,接收所述通信设备发送的第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包,所述安全升级请求包括所述智能车辆的升级相关参数。
在一种可能的实现方式中,所述车载控制设备还用于:和所述通信设备相互进行安全认证,以建立安全合作通道;
所述车载控制设备,具体用于:
通过所述安全通道接收通信设备发送的第一部分密钥。
在一种可能的实现方式中,所述车载控制设备,还用于:
在所述第一待升级车载设备升级成功后,指示所述通信设备更新所述第一升级文件的回滚文件;和/或
在所述第一待升级车载设备升级失败后,从所述通信设备获取所述第一升级文件的回滚文件,并发送给所述第一待升级车载设备进行回滚操作。
第四方面,本发明实施例提供了一种通信设备,应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备,所述通信设备可包括:
第一发送单元,用于向车载控制设备发送第一部分密钥,所述第一部分密钥用于所述车载控制设备与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥,所述第一密钥用于所述车载控制设备对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC。
在一种可能的实现方式中,所述车载控制设备将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥;所述通信设备还包括:
第一接收单元,用于在向所述车载控制设备发送第一部分密钥之前,接收所述车载控制设备发送的所述第一部分密钥。
在一种可能的实现方式中,所述通信设备还包括:
第二接收单元,用于在向所述车载控制设备发送第一部分密钥之前,接收所述车载控制设备发送的第一部分密钥请求,所述第一部分密钥请求为所述车载控制设备对升级包进行安全验证且在验证通过的情况下发送的,所述升级包包括所述第一升级文件。
在一种可能的实现方式中,所述通信设备为终端设备;所述通信设备还包括:
第三接收单元,用于在接收所述车载控制设备发送的第一部分密钥请求之前,接收所述车载控制设备发送的安全升级请求,所述安全升级请求包括所述智能车辆的升级相关参数;
判断单元,用于判断所述升级相关参数是否满足预设升级条件;
第二发送单元,用于若满足,向所述车载控制设备发送第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包。
在一种可能的实现方式中,所述通信设备还包括:
认证单元,用于和所述车载控制设备相互进行安全认证,以建立安全合作通道;
所述第一发送单元,具体用于:
通过所述安全通道向所述车载控制设备发送第一部分密钥。
在一种可能的实现方式中,所述通信设备还包括:
第四接收单元,用于在所述第一待升级车载设备升级成功后,接收所述车载控制设备发送的更新所述第一升级文件的回滚文件的指示;和/或
第三发送单元,用于在所述第一待升级车载设备升级失败后,所述通信设备向所述车载控制设备发送所述第一升级文件的回滚文件,以用于所述第一待升级车载设备进行回滚操作。
第五方面,本发明实施例提供了一种车载系统,所述车载系统包括通信设备和智能车辆;所述通信设备,为上述第四方面中提供的任意一种所述的通信设备;所述智能车辆,为上述第三方面中提供的任意一种所述的智能车辆。
第六方面,本申请提供一种车载设备升级装置,该车载设备升级装置具有实现上述任意一种车载设备升级方法实施例中方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第七方面,本申请提供一种车载控制设备,该车载控制设备中包括处理器,处理器被配置为支持该车载控制设备执行第一方面提供的一种车载设备升级方法中相应的功能。该车载控制设备还可以包括存储器,存储器用于与处理器耦合,其保存该车载控制设备必要的程序指令和数据。该车载控制设备还可以包括通信接口,用于该车载控制设备与其他设备或通信网络通信。
第八方面,本申请提供一种待升级车载设备,该待升级车载设备中包括处理器,处理器被配置为支持第一待升级车载设备执行第一方面提供的一种车载设备升级方法中相应的功能。该待升级车载设备还可以包括存储器,存储器用于与处理器耦合,其保存该待升级车载设备必要的程序指令和数据。该待升级车载设备还可以包括通信接口,用于该待升级车载设备与其他设备或通信网络通信。
第九方面,本申请提供一种计算机存储介质,用于储存为上述第三方面提供的智能车辆所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
第十方面,本申请提供一种计算机存储介质,用于储存为上述第四方面提供的通信设备所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
第十一方面,本发明实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行上述第一方面中任意一项的车载设备升级方法中车载控制设备或第一待升级车载设备所执行的流程。
第十二方面,本发明实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行上述第二方面中任意一项的车载设备升级方法中通信设备所执行的流程。
第十三方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持第一待升级车载设备或车载控制设备实现上述第一方面中所涉及的功能,例如,例如接收或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存第一待升级车载设备或车载控制设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
附图说明
图1是本发明实施例提供的一种车载设备升级应用场景的示意图;
图2是本发明实施例提供的另一种车载设备升级应用场景的示意图;
图3是本发明实施例提供的又一种车载设备升级应用场景的示意图;
图4是本发明实施例提供的一种车载系统升级架构示意图;
图5是本发明实施例提供的一种OTA Orchestrator的结构示意图;
图6是本发明实施例提供的一种待升级车载设备的结构示意图;
图7是本发明实施例提供的一种终端设备的结构示意图;
图8是本发明实施例提供的另一种车载系统升级架构图;
图9是本发明实施例提供的一种车载设备升级方法的流程示意图;
图10是本发明实施例提供的另一种车载设备升级方法的流程示意图;
图11是本发明实施例提供的一种智能车辆的结构示意图;
图12是本发明实施例提供的一种通信设备的结构示意图;
图13是本发明实施例提供的一种设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例进行描述。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。
首先,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)、空中下载技术(Over the Air Technology,OTA),是通过移动通信的空中接口进行远程固件或软件远程升级的技术。
(2)、车载信息服务(Telematics)是远距离通信的电信(Telecommunications)与信息科学(Informatics)的合成词,按字面可定义为通过内置在汽车、航空、船舶、火车等运输工具上的计算机系统、无线通信技术、卫星导航装置、交换文字、语音等信息的互联网技术而提供信息的服务系统。简单的说就通过无线网络将车辆接入互联网,为车主提供驾驶、生活所必需的各种信息。
(3)、电子控制单元(Electronic Control Unit,ECU),从用途上讲则是汽车专用微机控制器。它和普通的电脑一样,由微处理器(CPU)、存储器(ROM、RAM)、输入/输出接口(I/O)、模数转换器(A/D)以及整形、驱动等大规模集成电路组成。
(4)、车辆控制单元(Vehicle control unit,VCU),也可以称之为电动汽车整车控制器VCU是电动汽车动力系统的总成控制器,负责协调发动机、驱动电机、变速箱、动力电池等各部件的工作,具有提高车辆的动力性能、安全性能和经济性等作用。是电动汽车整车控制系统的核心部件,是用来控制电动车电机的启动、运行、进退、速度、停止以及电动车的其它电子器件的核心控制器件。VCU作为纯电动汽车控制系统最核心的部件,其承担了数据交换、安全管理、驾驶员意图解释、能量流管理的任务。VCU采集电机控制系统信号、加速踏板信号、制动踏板信号及其他部件信号,根据驾驶员的驾驶意图综合分析并作出响应判断后,监控下层的各部件控制器的动作,对汽车的正常行驶、电池能量的制动回馈、网络管理、故障诊断与处理、车辆状态监控等功能起着关键作用。
(5)、控制器局域网络(Controller Area Network,CAN)总线,是国际上应用最广泛的现场总线之一。其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。CAN总线是一种应用广泛的现场总线,在工业测控和工业自动化等领域有很大的应用前景。CAN属于总线式串行通信网络。CAN总线在数据通信方面具有可靠、实时和灵活的优点。为使设计透明和执行灵活,遵循ISO/OSI标准模型,CAN总线结构划分为两层物理层和数据链路层(包括逻辑链路控制子层LLC和媒体访问控制子层MAC)。
(6)、消息验证码(message authentication code,MAC),MAC是通信实体双方使用的一种验证机制,是保证消息数据完整性的一种工具。MAC类似于摘要算法,但是它在计算的时候还要采用一个密钥,因此MAC是基于密钥和消息摘要所获得的一个值,实际上是对消息本身产生一个冗余的信息,可用于数据源认证和完整性校验。
(7)、密钥导出算法(Key Derivation Function,KDF),是加解密过程使用到的密钥派生函数,作用是从一个共享的秘密比特串口派生出密钥数据,在密钥协商过程中,密钥派生函数作用在密钥交换所获动向的秘密比特串上,从中产生所需的会话密钥或进一步加密所需的密钥数据。
(8)、公钥密码(非对称密码),公钥密码又称为非对称密码,非对称密钥算法是指一个加密算法的加密密钥和解密密钥是不一样的,或者说不能由其中一个密钥推导出另一个密钥。拥有公钥密码的用户分别拥有加密密钥和解密密钥,通过加密密钥不能得到解密密钥。并且加密密钥是公开的。公钥密码就是基于这一原理而设计的,将辅助信息(陷门信息)作为秘密密钥。这类密码的安全强度取决于它所依据的问题的计算复杂度。现在常见的公钥密码有RSA公钥密码、E1Gamal公钥密码、椭圆曲线密码。
(9)、对称密码,对称密钥加密又叫专用密钥加密,即发送和接收数据的双方必使用相同的密钥对明文进行加密和解密运算。即加密密钥能够从解密密钥中推算出来,反过来也成立。在大多数对称算法中,加密解密密钥是相同的。这些算法也叫秘密密钥算法或单密钥算法,它要求发送者和接收者在安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都能对消息进行加密解密。只要通信需要保密,密钥就必须保密。
从上述对对称密钥算法和非对称密钥算法的描述中可看出,对称密钥加解密使用的同一个密钥,或者能从加密密钥很容易推出解密密钥;对称密钥算法具有加密处理简单,加解密速度快,密钥较短,发展历史悠久等特点,非对称密钥算法具有加解密速度慢的特点,密钥尺寸大,发展历史较短等特点。
(10)、传输层安全协议(Transport Layer Security,TLS),用于两个应用程序之间提供保密性和数据完整性。该协议由两层组成:TLS记录协议(TLS Record)和TLS握手协议(TLS Handshake)。安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。
(11)、终端设备,可以为用户设备(User Equipment,UE)、无线局域网(WirelessLocal Area Networks,WLAN)中的站点(STAION,ST)、蜂窝电话、无线本地环路(WirelessLocal Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)设备、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、可穿戴设备等。
为了便于理解本发明实施例,以下示例性列举本申请中车载设备升级方法所应用的场景,可以包括如下三个场景。
场景一,通过通信设备对智能车辆进行一对一管理:
请参见图1,图1是本发明实施例提供的一种车载设备升级应用场景的示意图,该应用场景中包括通信设备(图1中以通信设备为终端设备如智能手机为例)、智能车辆和升级服务器或密钥服务器,终端设备和智能车辆之间可以通过蓝牙、NFC、Wi-Fi和移动网络等进行通信,而升级服务器和终端设备或智能车辆之间则可以通过Wi-Fi和移动网络等进行通信。其中,智能手机和智能车辆之间可以建立一对一的匹配关系,例如通过智能车辆的车牌或唯一标识与终端设备的身份识别卡或者合法账号进行匹配,匹配完成后,智能手机和智能车辆之间便可以合作执行本申请中提供的车载设备升级方法的流程。从而实现用户通过智能手机对驾驶的车辆进行升级管理,保证车辆的升级安全。
场景二,通过通信设备对智能车辆进行一对多管理:
请参见图2,图2是本发明实施例提供的另一种车载设备升级应用场景的示意图。该应用场景中包括通信设备(图2中以通信设备为终端设备如智能手机为例),多个智能车辆和升级服务器或密钥服务器,该应用场景中的通信方式可以参考图1中的通信方式,在此不再赘述。其中,智能手机和智能车辆之间可以建立一对多的匹配关系,例如一个用户可以同时拥有并管理多个车辆,也可以是一个用户对多个不同用户的车辆进行管理。比如4S店的员工,通过专用的终端设备对店内的同一个型号的所有车辆进行系统升级,或者某个用户通过自己的终端设备对附近的与其建立了匹配关系的智能车辆进行升级包的提供或管理等,以实现一个设备同时管理多个智能车辆的应用场景,节省时间、节省网络传输带宽以及存储资源,并且保证车辆的升级安全。可以理解的是,在一对多的管理中,需要该终端设备中预先存储有该多个车辆的相关信息,或者是该多个车辆向终端设备证明其合法性以及与该终端设备之间存在服务关系。
场景三,通信设备为服务器,通过服务器进行一对多管理:
请参见图3,图3是本发明实施例提供的又一种车载设备升级应用场景的示意图。该应用场景中包括智能车辆和服务器(可选的,可以为密钥服务器也可以为专用服务器,并且上述两种服务器可以与升级服务器在同一个物理实体上),升级服务器和智能车辆之间则可以通过Wi-Fi和移动网络等进行通信。其中升级服务器可以对多个合法注册的智能车辆进行升级管理,且该升级服务器中除了可以完成关于升级包的提供、下载更新等相关服务以外,还作为本申请中的通信设备与智能车辆合作执行本申请中提供的车载设备升级方法的流程。例如升级服务器上新增一个逻辑功能实体,该逻辑功能实体用于存储相关密钥,对车辆内部的升级文件的存储或传输进行安全强化,保证车辆的升级安全。可选地,当通信设备为密钥服务器时,本申请中关于判断智能车辆是否满足相关升级条件、指示智能车辆下载升级包以及提供相关回滚文件的操作则可以通过升级服务器来处理。
可以理解的是,图1、图2和图3中的应用场景的只是本发明实施例中的几种示例性的实施方式,本发明实施例中的应用场景包括但不仅限于以上应用场景。
结合上述应用场景,下面先对本发明实施例所基于的其中一种系统架构进行描述。请参见图4,图4是本发明实施例提供的一种车载系统升级架构示意图(简称为架构一),本申请提出的车载设备升级方法可以应用于该系统架构。该系统架构中包含了升级服务器、智能车辆和通信设备(图4中以通信设备为终端设备如智能手机为例),其中智能车辆包括车载控制设备和一个或多个待升级车载设备,例如HMI(人机界面)、BMS(电池管理系统)、ECU1和ECU2,而车载控制设备可以包括Telematics单元和OTA协调器(OTA Orchestrator)单元,用于管理和辅助多个待升级车载设备的升级过程。在上述系统架构下,车载设备远程升级可以包括以下基本过程:升级包发布,升级包获取,升级包车内传输,升级与确认。其中,
升级服务器,可以用于从开发者处获取未经过加密的车载升级包,该车载升级包包括本申请中的第一升级文件,可用于第一待升级车载设备进行升级。
车载控制设备中的Telematics,负责对外通信,在本申请中负责与升级服务器和密钥服务器通信,完成车载升级包的获取任务,以及车载升级包的部分传输动作(发送给OTA Orchestrator)。
车载控制设备中的OTA Orchestrator,负责与车载内的待升级车载设备或负责与本申请中的通信设备(图4中以通信设备为终端设备为例)进行通信,其主要功能是管理和辅助车载设备的升级过程。具体来说,OTA Orchestrator可以具有如下功能:密钥分发及管理(包括确定第一密钥和第二密钥,以及拆分和还原第一密钥等);管理OTA过程;与通信设备共同帮助其他较弱的待升级车载设备分担计算量大的操作,如验证升级包的完整性和真实性,及Transcoding(转码)等;与通信设备共同作为其他较弱的待升级车载设备的备份点,以便升级失败时回滚。OTA Orchestrator是个逻辑实体,物理上可以部署任何功能强大的单元或模块上,例如Telematics、Gateway、VCU等,
OTA Orchestrator的结构可以如图5所示,图5是本发明实施例提供的一种OTAOrchestrator的结构示意图。其中,OTA Orchestrator可以包括处理器CPU以及相关的易失性存储器RAM和非易时性存储器ROM;用于存放密钥的安全存储,如与待升级车载设备共享的静态密钥(本申请中的第一密钥和第二密钥)等;用于存储OTA管理程序的存储器,该OTA管理程序用于实现对升级过程的管理;用于通过CAN bus或其他车内网络与其他车载设备通信的网络接口。可以理解的是,如果OTA Orchestrator实现在Telemantics上,它还需有与外部网络通信的网络接口。即OTA Orchestrator应有较强的计算能力和较多资源辅助车载设备完成远程升级,并被其他车载设备信任。从逻辑架构上划分,OTA Orchestrator把该架构分为车外通信部分和车内通信部分。车内部分的各设备无需进行公钥密码操作而只需进行对称密码操作;如涉及公钥密钥操作,则代理给OTA Orchestrator,以减少车载内待升级设备的计算量和计算复杂度。
待升级车载设备,任意一个待升级车载设备(包括本申请中的第一待升级车载设备)的构成可以如图6所示,图6是本发明实施例提供的一种待升级车载设备的结构示意图。待升级车载设备可以包括微型控制器(Micro controlller),CAN控制器(CAN controller)和收发器(Transceiver)。其中,待升级车载设备通过收发器Transceiver与车内网络如CANbus通信,CAN controller则用于实现CAN协议,微型控制器则用于实现待升级以及升级后的相关的计算处理,例如可以实现本申请中关于待升级车载设备所执行的车载设备升级方法流程。结合上述结构示意图,在本申请中,待升级车载设备基于车内网络如CAN bus,通过收发器(Transceiver)接收车载控制设备发送的第一升级文件,并通过微型控制器(MicroControlller)利用所述第一升级文件进行安全升级。更具体的功能可以参照后续实施例中关于待升级车载设备相关功能的描述。
通信设备,本申请中的通信设备可以为终端设备或者升级服务器,用于从资源扩展、安全强化以及升级控制等角度,参与到智能车辆的安全升级过程中来。例如,通信设备利用自身的存储能力协助储存中间档案(如各个待升级车载设备软/固件信息,当前版本、大小、开发者等),备份文件(如待升级车载设备软/固回滚版)与车机系统状况,以完成储存扩展;通信设备通过自身的计算能力进行transcoding,以实现计算扩展;通信设备通过自身的联网能力下载升级包,分担传输开销,以实现传输扩展;通信设备在每次有升级任务时验证OTA Orchestrator是否完整或是整车是否处于安全状态以实现认证(Attestation);通信设备通过密钥分散管理(secret sharing)方法由车载OTA Orchestrator和通信设备分散保管密钥,保证密钥的安全,通信设备通过既有的安全模块做安全检测(例如恶意软件检测malware detection),以实现安全强化;通信设备(例如为终端设备时)作为软/固件升级的远程控制console端(让用户选择是否升级、升级时间、单点或群组升级模式等),以实现用户远程控制升级。
当通信设备为终端设备时,该终端设备的构成可以参考图7,图7是本发明实施例提供的一种终端设备的结构示意图。该终端设备可包括处理器CPU以及相关的易失性存储器RAM和非易时性存储器ROM;用于存储OTA管理程序的存储器,该OTA管理程序用于实现对升级过程的管理;用于与其它设备(包括智能车辆以及升级服务器等)进行通信的无线通信模块;用于为用户提供车载升级交互控制界面的显示及输入,如音频输入输出模块、按键或触摸输入模块以及显示器等。需要说明的是,当通信设备为服务器且该服务器和本申请中的升级服务器在同一个物理实体上时,则该升级服务器中可以包含一个实现上述通信设备所实现的功能的逻辑功能实体,因此,关于通信设备具体的实际结构本申请不作具体限定。且当通信设备为终端设备时,则可以对应图1和图2中的应用场景,当通信设备为服务器时,则可以对应图3中的应用场景。
可以理解的是,图1中的通信系统架构只是本发明实施例中的一种示例性的实施方式本发明实施例中的通信系统架构包括但不仅限于以上通信系统架构。
请参见图8,图8是本发明实施例提供的另一种车载系统升级架构图(简称为架构二),与图1提供的系统升级架构不同之处在于,该车载系统升级架构还包括密钥服务器。其中,
升级服务器,用于从开发者处获取经过开发者加密的车载升级包。
密钥服务器,用于在车载升级包被开发者加密的情况下,该密钥服务器通过安全通道从开发者处获取密钥并存储密钥,并且最终将密钥提供给车载控制设备。可以理解的是,当本申请中的通信设备为服务器例如为专用服务器时,则该专用服务器可以为所述密钥服务器,即该密钥服务器不仅存储升级包相关的密钥,也可以存储车内传输过程中的相关密钥,例如第一部分密钥等。
可以理解的是其它关于载控制设备和多个待升级车载设备的具体功能,请参照上述图4对应的车载系统升级架构中的各个功能实体或单元的描述,在此不再赘述。
还以理解的是,本申请中的车载系统升级架构还可以包括开发者,开发者在固件/软件发布的开发和测试升级程序后,将车载升级包交付给升级服务器,该交付的车载升级包需要经过数字签名。可选的,在经过数字签名之前,还可以对该车载升级包经过加密。若不经过加密,则对应上述图4中的系统架构,若经过加密则对应上述图8中的系统架构。后述会详细描述对应实施例。
需要说明的是,图4和图8中的车载系统升级架构只是本发明实施例中的两种示例性的实施方式,本发明实施例中的通信系统架构包括但不仅限于以上系统架构。
下面结合上述应用场景、系统架构和本申请中提供的车载设备升级方法的实施例,对本申请中提出的技术问题进行具体分析和解决。
请参见图9,图9是本发明实施例提供的一种车载设备升级方法的流程示意图,该车载设备升级方法应用于车载系统(包括上述架构一和架构二),且适用于上述图1至图3中的任意一种应用场景。其中,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备,下面将结合附图9从智能车辆和通信设备的交互侧进行描述,该方法可以包括以下步骤S901-步骤S903。
步骤S901:通信设备向所述车载控制设备发送第一部分密钥;车载控制设备接收所述通信设备发送的第一部分密钥。
具体地,该第一部分密钥是车载控制设备从通信设备(终端设备或升级服务器)上获取的,也即是车载控制设备上当前没有该第一部分密钥。当第一部分密钥来自于终端设备(如智能手机)时,智能车辆通过与终端设备之间的密钥分散存储管理,合作完成车辆内部的安全存储或传输;当第一部分密钥来自于密钥服务器或专用服务器,那么智能车辆通过与服务器之间的密钥分散存储管理,合作完成车辆内部的安全存储或传输。避免密钥只存储在一个设备上,被不法分子轻易截获篡改,从而保证了智能车辆中升级文件的存储或传输的安全性。需要说明的是,当通信设备是终端设备,则该终端设备需要与智能车辆之间建立匹配关系;若为升级服务器,则该服务器则是为智能车辆提供升级包(包括所述第一升级文件)的升级服务器。
步骤S901:车载控制设备将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥。
具体地,车载控制设备在从通信设备处获得了第一部分密钥之后,与已经存储在车载控制设备本地的第二部分密钥进行还原得到第一密钥。其中,车载控制设备上存储的第二部分密钥可以是初始存在于车载控制设备上的,也可以是从其它设备(如升级服务器或密钥服务器等)上获得之后存储在本地的,本发明实施例对此不作具体限定。
步骤S903:车载控制设备利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件。
具体地,车载控制设备得到还原的第一密钥之后,则利用该第一密钥对第一升级文件进行安全处理,该安全处理可以包括生成第一消息认证码MAC,则对应的安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC。可选地,所述第一密钥为对称密钥,所述车载控制设备利用所述第一密钥生成所述第一升级文件的第一消息认证码MAC,得到的安全处理后的第一升级文件则为(第一升级文件+第一MAC)。即在智能车辆中的车载控制设备和待升级车载设备之间进行升级文件的传输时,具体利用对称密钥生成升级文件的MAC,并携带在第一升级文件中发送给待升级车载设备,从而保证升级文件在车内传输过程的安全性,并且还减少了车内安全校验的计算量(因为对称密钥的计算量小),提升升级效率。可选地,安全处理也可以为签名处理、加密处理或其它安全处理等,本发明实施例对此不作具体限定。
在一种可能的实现方式中,所述安全处理还包括利用所述第一密钥对所述第一升级文件和第一MAC进行加密;所述安全处理后的第一升级文件包括经过所述第一密钥加密后的所述第一升级文件和所述第一MAC。即通过在智能车辆中的车载控制设备和待升级车载设备之间进行升级文件的传输时,不仅利用生成升级文件的MAC,并携带在第一升级文件中,并且还进一步通过第一密钥对其进行加密,再发送给待升级车载设备的方式,不仅保证升级文件在车内传输过程的完整性,减少了车内安全校验的计算量,提升升级效率,并且还进一步的保证了升级文件的私密性,以避免被不法分子窃取。
本发明实施例,通过在车载升级架构中,加入与智能车辆匹配的通信设备,并作为智能车辆的安全密钥分散保管的载体,使得智能车辆中的车载控制设备在需要对升级文件进行安全处理时,可以从通信设备处获得分散保管的密钥并进行密钥还原,并利用还原后的密钥对升级文件进行安全处理,以便于升级文件在车内的安全保存和/或安全传输,避免密钥单独存储在智能车辆或通信设备上,被不法分子轻易截获篡改,从而保证了智能车辆中升级文件的存储或传输的安全性。
请参见图10,图10是本发明实施例提供的另一种车载设备升级方法的流程示意图,该车载设备升级方法应用于车载系统(包括上述架构一和架构二),且适用于上述图1至图3中的任意一种应用场景。其中,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备,下面将结合附图10从智能车辆和通信设备的交互侧进行描述,该方法可以包括以下步骤S1001-步骤S1012。
步骤S1001:车载控制设备确定第一密钥以及第二密钥,并将所述第二密钥发送给所述第一待升级车载设备。
具体地,车载控制设备确定车内传输的共享密钥,该共享密钥则为匹配的第一密钥和第二密钥。当共享密钥为对称密钥时,则第一密钥和第二密钥相同,当共享密钥为非对称密钥时,则第一密钥和第二密钥之间为密钥对。车载控制设备在确定了车载内部的共享密钥之后,则将第二密钥发给第一待升级车载设备,自己保留第一密钥,便于在后续车载内部安全传输中,车载控制设备利用第一密钥进行安全处理,第一待升级车载设备利用第二密钥进行安全校验,该安全校验为所述安全处理的逆操作。本发明实施例,在智能车辆中的第一密钥分散保管之前,车载控制设备需要先确定车内使用的密钥对,并发送给对应的待升级车载设备。便于后续车载控制设备将升级文件利用与待升级车载设备协商好的第一密钥进行安全处理,且待升级车载设备利用协商好的匹配的第二密钥进行安全校验,以保证升级文件在车内的传输安全。
步骤S1002:车载控制设备将所述第一密钥拆分为第一部分密钥和第二部分密钥,并将所述第一部分密钥发送给所述通信设备;通信设备接收所述车载控制设备发送的所述第一部分密钥。
具体地,车载控制设备将第一密钥拆分为第一部分密钥和第二部分密钥,并将第一部分密钥发送给通信设备,该通信设备接收到第一部分密钥之后存储在本地,而车载控制设备侧则可以将第一部分密钥进行删除。也即是避免在一个设备上同时存储有第一部分密钥和第二部分密钥,避免被不发分子轻易窃取。本发明实施例,在智能车辆中的第一密钥分散保管之前,车载控制设备与待升级车载设备协商好第一密钥和第二密钥之后,车载控制设备将第一密钥进行拆分,并将拆分的一部分发送至匹配的通信设备上进行存储,自身保存另一部分,以避免被一次性轻易的非法截获篡改。
需要说明的是,车载控制设备将第二密钥发送给第一待升级车载设备和将第一密钥进行拆分并将第一部分密钥发送给通信设备,这两个流程之间没有严格的时间顺序,本发明实施例对此不作具体限定。
步骤S1003:车载控制设备向所述通信设备发送安全升级请求,所述安全升级请求包括所述智能车辆的升级相关参数;通信设备接收所述车载控制设备发送的所述安全升级请求。
具体地,即车载设备在升级之前,需要向通信设备发起安全升级的相关认证,将智能车辆当前的相关参数(固件/软件的相关参数)发送给通信设备进行判断,以避免在没有满足升级条件的情况下盲目升级,浪费相关传输资源和升级资源。例如,通信设备作为verifier,要求车载OTA Orchestrator向其做attestation(hardware/software based)或其他汇报机制,以确保车载OTA Orchestrator的完整性或车机处于安全可升级状态。如果attestation或检测失败,则报错终止升级。同样的,车载OTA Orchestrator也可以检验通信设备是否处于安全可升级状态。
步骤S1004:通信设备判断所述升级相关参数是否满足预设升级条件。
具体地,通信设备可以按照一定的相关标准判断升级相关参数是否满足相关升级条件。
步骤S1005:若满足,通信设备向所述车载控制设备发送第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包;车载控制设备接收所述通信设备发送的第一指示。
具体地,当通信设备判断出智能车辆满足升级条件时,则向其发送第一指示,该第一指示用于指示车载控制设备可以开始进行升级,即可以获取升级包。该升级包可以是通信设备上之前(例如终端设备在检测到有升级包更新的情况下,或者终端设备当前有Wi-Fi的情况下等)就已经下载好了,则通信设备直接通过向该终端设备获取即可;也可以是车载控制设备直接去升级服务器处获取。本发明实施例,在通信设备根据智能车辆的车载控制设备反馈的升级相关参数,判断出该智能车辆当前满足升级条件的情况下,才会指示或触发该智能车辆的车载控制设备进行车载升级包的获取,以提升车载升级的成功率。可以理解的是,智能车辆可以是从服务器处获取,也可以是通信设备上获取已经下载好的升级包,此时通信设备可以为终端设备。
步骤S1006:车载控制设备获取升级包,所述升级包包括所述第一升级文件。
具体地,升级包可以包括多个升级文件,且每一个升级文件用于对至少一个待升级车载设备进行升级,即车载系统内的待升级车载设备可以对应一个或者多个升级文件。其中,升级包至少包括第一待升级车载设备的第一升级文件。
步骤S1007:车载控制设备对所述升级包进行安全验证。
具体地,车载控制设备获得了升级包之后,还需要对升级包进行安全验证。安全验证可以包括对签名进行验证,对升级包进行解密等,而相关密钥可以是升级服务器与智能车辆之间预先就协商好的,也可以是智能车辆从密钥服务器中获取的,也即是说采用上述架构一和架构二均可以进行相关密钥的获取。本发明实施例,在车载控制设备获取分散保管的部分密钥之前,首先需要获取包含升级文件的升级包,并且对该升级包进行安全验证,验证通过后,则启动将对应的将升级文件进行安全处理并传输给对应的待升级车载设备的流程,也才会向通信设备请求用于对升级文件进行安全处理的部分密钥。避免在没有确定车载升级包是否安全的情况下,过早获取第一部分密钥,以免被非法获取,进一步提升了车载升级的安全性。
步骤S1008:在验证通过的情况下,所述车载控制设备向所述通信设备请求所述第一部分密钥;所述通信设备接收所述车载控制设备发送的第一部分密钥请求。
具体地,在验证了升级包的安全性之后,则车载控制设备可以开始在车内将升级包中的升级文件安全传输给对应的待升级车载控制设备。因为第一部分密钥和第二部分密钥在同一个设备上同时存储的时间越长,则被不法分子一次性轻易盗取或者是篡改的可能性就更大,因此,车载控制设备在与通信设备的安全请求认证以及获取了升级包并认证了升级包的安全性之后,再向通信设备请求第一部分密钥。
步骤S1009:通信设备向所述车载控制设备发送第一部分密钥;所述车载控制设备接收通信设备发送的第一部分密钥。
在一种可能的实现方式中,通信设备向在发送第一部分密钥之前,所述车载控制设备和所述通信设备之间相互进行安全认证,以建立安全合作通道;所述车载控制设备接收通信设备发送的第一部分密钥,具体为:所述车载控制设备通过所述安全通道接收通信设备发送的第一部分密钥。即保证车载控制设备和通信设备之间发送及接收数据是通过安全通道进行的。本发明实施例,车载控制设备和相匹配的通信设备之间建立安全通道,后续的车载控制设备和通信设备之间的第一部分密钥请求、安全认证请求等,都可以通过该安全通道来传输,以进一步的保证车载控制设备和通信设备之间的安全传输。
步骤S1010:车载控制设备将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥。
步骤S1011:车载控制设备利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件。
步骤S1010至步骤S1011可参考上述图9实施例中的步骤S902至步骤S903。
步骤S1012:车载控制设备将所述安全处理后的第一升级文件发送给第一待升级车载设备。
具体地,虽然车载控制设备和待升级车载设备都是在智能车辆内部,但是涉及到两个设备之间的传输,都有可能会在传输的过程中被拦截或被篡改,因此采用本发明实施例的上述安全处理和安全校验的过程,可以保证车内传输过程的安全,保证升级的安全。
步骤S1013:第一待升级车载设备利用存储在所述车载控制设备上的第二密钥对所述安全处理后的第一升级文件进行安全校验,所述第二密钥为与所述第一密钥预先匹配的密钥。
具体地,第一待升级车载设备利用车载控制设备在共享密钥阶段分享的第二密钥对安全处理后的第一升级文件进行安全校验,所述安全校验为所述安全处理的逆操作。
步骤S1014:若校验成功,第一待升级车载设备根据校验成功的第一升级文件进行升级。
具体地,若校验成功,则说明接收到的第一升级文件是安全合法的,因此则可以进行安全升级。本发明实施例,车载控制设备将分散保管的密钥还原得到第一密钥后,对升级文件进行安全处理,以将该安全处理后的升级文件安全传输给对应的待升级车载设备进行安全升级,保证了升级文件在智能车辆的车内传输即车载控制设备与待升级车载设备之间的传输过程中的安全性。
步骤S1015:车载控制设备在所述第一待升级车载设备升级成功后,指示所述通信设备更新所述第一升级文件的回滚文件;和/或
具体地,当待升级车载设备升级成功了,可以反馈一个升级成功的反馈信息给车载控制设备,此时车载控制设备可以进一步地进行升级后系统的兼容性检测,检测成功后说明此时已经升级成功,并且与车载系统之间可以兼容。所以可以指示通信设备更新当前升级成功的回滚文件,以便于下次需要重新获取该升级文件时有回滚文件可以获取,以通过通信设备的存储能力对智能车辆进行存储扩展。
步骤S1016:车载控制设备在所述第一待升级车载设备升级失败后,从所述通信设备获得所述第一升级文件的回滚文件,并发送给所述第一待升级车载设备进行回滚操作。
具体地,当待升级车载设备升级失败了其中,升级失败可以包括升级文件升级成功,但未通过系统的兼容性测试,则可以反馈一个升级失败的反馈信息给车载控制设备,此时车载控制设备可以从通信设备处(可以理解的是,通信设备上需要保管有第一升级文件的回滚文件)获取回滚文件并发送给第一车载控制设备进行回滚操作。本发明实施例,通信设备可以为智能车辆提供升级文件的回滚文件,无论在待升级车载设备升级成功或者失败的情况下,通信设备都可以对当前的升级文件进行回滚操作,以便于待升级车载设备后续升级时有回滚文件可以参考。
本发明实施例,除了保留了上述图9对应的实施例的有益效果外,进一步通过通信设备和智能车辆之间的安全认证交互过程,提升智能车辆的升级效率。同时,通信设备还可以为待升级车载设备提供升级包下载及回滚服务等,分担了车载控制设备的传输压力和存储压力,并对整个升级过程进行了强化,提供安全有效的升级服务。
上述详细阐述了本发明实施例的方法,下面提供了本发明实施例的相关装置。
请参见图11,图11是本发明实施例提供的一种智能车辆的结构示意图,该智能车辆应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆10包括车载控制设备101,其中,
车载控制设备101,用于接收通信设备发送的第一部分密钥,并将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥,再利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC。
在一种可能的实现方式中,所述智能车辆还包括至少一个第一待升级车载设备102(图11中以多个为例);
车载控制设备101,还用于将所述安全处理后的第一升级文件发送给所述第一待升级车载设备;
第一待升级车载设备102,用于利用存储在所述车载控制设备上的第二密钥对所述安全处理后的第一升级文件进行安全校验,若校验成功,则根据校验成功的第一升级文件进行升级,所述第二密钥为与所述第一密钥预先匹配的密钥,所述安全校验为所述安全处理的逆操作。
在一种可能的实现方式中,所述安全处理还包括利用所述第一密钥对所述第一升级文件和第一MAC进行加密;所述安全处理后的第一升级文件包括经过所述第一密钥加密后的所述第一升级文件和所述第一MAC。
在一种可能的实现方式中,车载控制设备101,还用于:
在接收通信设备发送的第一部分密钥之前,确定所述第一密钥以及所述第二密钥,并将所述第二密钥发送给所述第一待升级车载设备。
在一种可能的实现方式中,车载控制设备101,还用于:
在接收通信设备发送的第一部分密钥之前,将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥,并将所述第一部分密钥发送给所述通信设备。
在一种可能的实现方式中,车载控制设备101,还用于:
在接收通信设备发送的第一部分密钥之前获取升级包,并对所述升级包进行安全校验,在验证通过的情况下,向所述通信设备请求所述第一部分密钥,所述升级包包括所述第一升级文件。
在一种可能的实现方式中,所述通信设备包括终端设备;车载控制设备101,还用于:
在获取升级包之前向所述通信设备发送安全升级请求,并在所述智能车辆的升级相关参数满足预设升级条件的情况下,接收所述通信设备发送的第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包,所述安全升级请求包括所述智能车辆的升级相关参数。
在一种可能的实现方式中,车载控制设备101还用于:和所述通信设备相互进行安全认证,以建立安全合作通道;
车载控制设备101,具体用于:
通过所述安全通道接收通信设备发送的第一部分密钥。
在一种可能的实现方式中,车载控制设备101,还用于:
在所述第一待升级车载设备升级成功后,指示所述通信设备更新所述第一升级文件的回滚文件;和/或
在所述第一待升级车载设备升级失败后,从所述通信设备获取所述第一升级文件的回滚文件,并发送给所述第一待升级车载设备进行回滚操作。
需要说明的是,本发明实施例中所描述的智能车辆10中的车载控制设备101和第一待升级车载设备102可参见上述图9和图10中所述的方法实施例中的车载控制设备和第一待升级车载设备相关描述,此处不再赘述。
可以理解的是,智能车辆10还可以运用计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,集成智能驾驶系统、生活服务系统、安全防护系统、位置服务系统以及用车服务系统等功能,本申请对此不作具体限定,也不再赘述。
请参见图12,图12是本发明实施例提供的一种通信设备的结构示意图,该通信设备20应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备,通信设备20各个单元的详细描述如下。
第一发送单元201,用于向车载控制设备发送第一部分密钥,所述第一部分密钥用于所述车载控制设备与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥,所述第一密钥用于所述车载控制设备对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC。
在一种可能的实现方式中,所述车载控制设备将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥;通信设备20还包括:
第一接收单元202,用于在向所述车载控制设备发送第一部分密钥之前,接收所述车载控制设备发送的所述第一部分密钥。
在一种可能的实现方式中,通信设备20还包括:
第二接收单元203,用于在向所述车载控制设备发送第一部分密钥之前,接收所述车载控制设备发送的第一部分密钥请求,所述第一部分密钥请求为所述车载控制设备对升级包进行安全验证且在验证通过的情况下发送的,所述升级包包括所述第一升级文件。
在一种可能的实现方式中,所述通信设备为终端设备;通信设备20还包括:
第三接收单元204,用于在接收所述车载控制设备发送的第一部分密钥请求之前,接收所述车载控制设备发送的安全升级请求,所述安全升级请求包括所述智能车辆的升级相关参数;
判断单元205,用于判断所述升级相关参数是否满足预设升级条件;
第二发送单元206,用于若满足,向所述车载控制设备发送第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包。
在一种可能的实现方式中,通信设备20还包括:
认证单元207,用于和所述车载控制设备相互进行安全认证,以建立安全合作通道;
第一发送单元201,具体用于:
通过所述安全通道向所述车载控制设备发送第一部分密钥。
在一种可能的实现方式中,通信设备20还包括:
第四接收单元208,用于在所述第一待升级车载设备升级成功后,接收所述车载控制设备发送的更新所述第一升级文件的回滚文件的指示;和/或
第三发送单元209,用于在所述第一待升级车载设备升级失败后,所述通信设备向所述车载控制设备发送所述第一升级文件的回滚文件,以用于所述第一待升级车载设备进行回滚操作。
需要说明的是,本发明实施例中所描述的通信设备20中各功能单元的功能可参见上述图9-图10所述的方法实施例中通信设备的相关描述,此处不再赘述。
如图13所示,图13是本发明实施例提供的一种设备的结构示意图。智能车辆10中的车载控制设备101和第一待升级车载设备102,以及通信设备20,均可以以图13中的结构来实现,该设备30包括至少一个处理器301,至少一个存储器302、至少一个通信接口303。此外,该设备还可以包括天线等通用部件,在此不再详述。
处理器301可以是通用中央处理器(CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制以上方案程序执行的集成电路。
通信接口303,用于与其他设备或通信网络通信,如升级服务器、密钥服务器、车载内部的设备等。
存储器302可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,所述存储器302用于存储执行以上方案的应用程序代码,并由处理器301来控制执行。所述处理器301用于执行所述存储器302中存储的应用程序代码。
图13所示的设备为车载控制设备101时,存储器302存储的代码可执行以上图9提供的车载设备升级方法中车载控制设备的动作,比如接收所述通信设备发送的第一部分密钥;将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥;利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件。
图13所示的设备为第一待升级车载设备102时,存储器302存储的代码可执行以上图10提供的车载设备升级方法中第一待升级车载设备的动作,比如利用存储在所述车载控制设备上的第二密钥对所述安全处理后的第一升级文件进行安全校验,所述第二密钥为与所述第一密钥预先匹配的密钥,所述安全校验为所述安全处理的逆操作;若校验成功,根据校验成功的第一升级文件进行升级。
需要说明的是,本发明实施例中所描述的车载控制设备101和第一待升级车载设备102的功能可参见上述图9和图10中的所述的方法实施例中的相关描述,此处不再赘述。
图13所示的设备为通信设备20时,存储器302存储的代码可执行以上图9或图10提供的车载设备升级方法中通信设备的动作,比如向所述车载控制设备发送第一部分密钥,所述第一部分密钥用于所述车载控制设备与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥,所述第一密钥用于所述车载控制设备对第一升级文件进行安全处理,得到安全处理后的第一升级文件。
需要说明的是,本发明实施例中所描述的通信设备20的功能可参见上述图9和图10中的所述的方法实施例中的相关描述,此处不再赘述。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的任意一种的部分或全部步骤。
本发明实施例还提供一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行任意一种车载设备升级方法的部分或全部步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可能可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本申请各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:U盘、移动硬盘、磁碟、光盘、只读存储器(Read-Only Memory,缩写:ROM)或者随机存取存储器(Random Access Memory,缩写:RAM)等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (19)
1.一种车载设备升级方法,其特征在于,应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备和第一待升级车载设备,所述方法包括:
所述车载控制设备接收所述通信设备发送的第一部分密钥;
所述车载控制设备将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥;
所述车载控制设备利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC;
所述车载控制设备将所述安全处理后的第一升级文件发送给所述第一待升级车载设备;
所述第一待升级车载设备利用存储在所述车载控制设备上的第二密钥对所述安全处理后的第一升级文件进行安全校验,所述第二密钥为与所述第一密钥预先匹配的密钥,所述安全校验为所述安全处理的逆操作;
若校验成功,所述第一待升级车载设备根据校验成功的第一升级文件进行升级。
2.根据权利要求1所述的方法,其特征在于,所述安全处理还包括利用所述第一密钥对所述第一升级文件和第一MAC进行加密;所述安全处理后的第一升级文件包括经过所述第一密钥加密后的所述第一升级文件和所述第一MAC。
3.根据权利要求1或2所述的方法,其特征在于,所述车载控制设备接收通信设备发送的第一部分密钥之前,还包括:
所述车载控制设备确定所述第一密钥以及所述第二密钥,并将所述第二密钥发送给所述第一待升级车载设备。
4.根据权利要求3所述的方法,其特征在于,所述车载控制设备接收通信设备发送的第一部分密钥之前,还包括:
所述车载控制设备将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥,并将所述第一部分密钥发送给所述通信设备。
5.根据权利要求1或2所述的方法,其特征在于,所述车载控制设备接收通信设备发送的第一部分密钥之前,还包括:
所述车载控制设备获取升级包,所述升级包包括所述第一升级文件;
所述车载控制设备对所述升级包进行安全验证;
在验证通过的情况下,所述车载控制设备向所述通信设备请求所述第一部分密钥。
6.根据权利要求5所述的方法,其特征在于,所述通信设备包括终端设备;所述车载控制设备获取升级包之前,还包括:
所述车载控制设备向所述通信设备发送安全升级请求,所述安全升级请求包括所述智能车辆的升级相关参数;
在所述升级相关参数满足预设升级条件的情况下,所述车载控制设备接收所述通信设备发送的第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包。
7.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述车载控制设备和所述通信设备相互进行安全认证,以建立安全合作通道;
所述车载控制设备接收通信设备发送的第一部分密钥,包括:
所述车载控制设备通过所述安全合作通道接收通信设备发送的第一部分密钥。
8.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述车载控制设备在所述第一待升级车载设备升级成功后,指示所述通信设备更新所述第一升级文件的回滚文件;和/或
所述车载控制设备在所述第一待升级车载设备升级失败后,从所述通信设备获取所述第一升级文件的回滚文件,并发送给所述第一待升级车载设备进行回滚操作。
9.一种智能车辆,其特征在于,应用于车载系统,所述车载系统包括智能车辆和通信设备,所述智能车辆包括车载控制设备和第一待升级车载设备;其中
所述车载控制设备,用于接收所述通信设备发送的第一部分密钥,并将所述第一部分密钥与存储在所述车载控制设备上的第二部分密钥还原得到第一密钥,再利用所述第一密钥对第一升级文件进行安全处理,得到安全处理后的第一升级文件,所述安全处理包括生成第一消息认证码MAC,所述安全处理后的第一升级文件包括所述第一升级文件和所述第一MAC;
所述第一待升级车载设备,用于利用存储在所述车载控制设备上的第二密钥对所述安全处理后的第一升级文件进行安全校验,若校验成功,则根据校验成功的第一升级文件进行升级,所述第二密钥为与所述第一密钥预先匹配的密钥,所述安全校验为所述安全处理的逆操作。
10.根据权利要求9所述的智能车辆,其特征在于,所述安全处理还包括利用所述第一密钥对所述第一升级文件和第一MAC进行加密;所述安全处理后的第一升级文件包括经过所述第一密钥加密后的所述第一升级文件和所述第一MAC。
11.根据权利要求9或10所述的智能车辆,其特征在于,所述车载控制设备,还用于:
在接收通信设备发送的第一部分密钥之前,确定所述第一密钥以及所述第二密钥,并将所述第二密钥发送给所述第一待升级车载设备。
12.根据权利要求11所述的智能车辆,其特征在于,所述车载控制设备,还用于:
在接收通信设备发送的第一部分密钥之前,将所述第一密钥拆分为所述第一部分密钥和所述第二部分密钥,并将所述第一部分密钥发送给所述通信设备。
13.根据权利要求9或10所述的智能车辆,其特征在于,所述车载控制设备,还用于:
在接收通信设备发送的第一部分密钥之前获取升级包,并对所述升级包进行安全校验,在验证通过的情况下,向所述通信设备请求所述第一部分密钥,所述升级包包括所述第一升级文件。
14.根据权利要求13所述的智能车辆,其特征在于,所述通信设备包括终端设备;所述车载控制设备,还用于:
在获取升级包之前向所述通信设备发送安全升级请求,并在所述智能车辆的升级相关参数满足预设升级条件的情况下,接收所述通信设备发送的第一指示,所述第一指示用于触发所述车载控制设备从所述终端设备或升级服务器处获取所述升级包,所述安全升级请求包括所述智能车辆的升级相关参数。
15.根据权利要求9或10所述的智能车辆,其特征在于,所述车载控制设备还用于:和所述通信设备相互进行安全认证,以建立安全合作通道;
所述车载控制设备,具体用于:
通过所述安全合作通道接收通信设备发送的第一部分密钥。
16.根据权利要求9或10所述的智能车辆,其特征在于,所述车载控制设备,还用于:
在所述第一待升级车载设备升级成功后,指示所述通信设备更新所述第一升级文件的回滚文件;和/或
在所述第一待升级车载设备升级失败后,从所述通信设备获取所述第一升级文件的回滚文件,并发送给所述第一待升级车载设备进行回滚操作。
17.一种芯片系统,其特征在于,所述芯片系统包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,权利要求1-8中任意一项所述的方法得以实现。
18.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述权利要求1-8中任意一项所述的方法。
19.一种计算机程序产品,其特征在于,所述计算机程序包括指令,当所述计算机程序被计算机执行时,使得所述计算机执行如权利要求1-8中任意一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/SG2018/050207 WO2019212403A1 (zh) | 2018-04-30 | 2018-04-30 | 一种车载设备升级方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112055952A CN112055952A (zh) | 2020-12-08 |
CN112055952B true CN112055952B (zh) | 2024-05-03 |
Family
ID=68386510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880092965.4A Active CN112055952B (zh) | 2018-04-30 | 2018-04-30 | 一种车载设备升级方法及相关设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11985238B2 (zh) |
EP (1) | EP3780481B1 (zh) |
CN (1) | CN112055952B (zh) |
FI (1) | FI3780481T3 (zh) |
WO (1) | WO2019212403A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4152144A1 (en) | 2017-10-24 | 2023-03-22 | Huawei International Pte. Ltd. | Vehicle-mounted device upgrade method and related device |
CN113162959B (zh) * | 2020-01-23 | 2023-06-30 | 华为技术有限公司 | 车载设备的升级方法和装置 |
WO2021159530A1 (zh) * | 2020-02-14 | 2021-08-19 | 华为技术有限公司 | 一种车载设备升级方法及相关装置 |
CN111338674A (zh) * | 2020-02-25 | 2020-06-26 | 北京汽车集团有限公司 | 指令处理方法、装置和设备 |
JP7327325B2 (ja) * | 2020-08-31 | 2023-08-16 | トヨタ自動車株式会社 | 車載機器、情報生成方法、情報生成プログラム、および、車両 |
JP7404210B2 (ja) * | 2020-09-28 | 2023-12-25 | 株式会社東海理化電機製作所 | システム、及びプログラム |
CN112558990A (zh) * | 2020-12-15 | 2021-03-26 | 交控科技股份有限公司 | 一种车载安全计算机的维护升级方法及系统 |
CN112817631A (zh) * | 2021-01-29 | 2021-05-18 | 一汽解放汽车有限公司 | 一种车载控制器升级方法、装置、设备及存储介质 |
CN114845275A (zh) * | 2021-02-01 | 2022-08-02 | 华为技术有限公司 | 对车载终端进行功能辅助的方法和装置 |
CN115145610A (zh) * | 2021-03-31 | 2022-10-04 | 上海擎感智能科技有限公司 | 一种车载系统及其软件的升级方法 |
KR20220165059A (ko) * | 2021-06-07 | 2022-12-14 | 현대자동차주식회사 | 차량의 업데이트 관리 장치 및 그것의 동작 방법, 차량 |
CN113630437A (zh) * | 2021-06-25 | 2021-11-09 | 际络科技(上海)有限公司 | 车辆的控制单元升级方法、装置及车辆 |
CN113467808B (zh) * | 2021-07-12 | 2022-07-26 | 卡斯柯信号有限公司 | 一种基于冗余网络的轨旁安全平台自动升级方法及系统 |
CN113320491A (zh) * | 2021-07-16 | 2021-08-31 | 重庆金康赛力斯新能源汽车设计院有限公司 | 一种控制器升级方法和系统 |
KR20230025107A (ko) * | 2021-08-13 | 2023-02-21 | 현대자동차주식회사 | 차량 소프트웨어 관리 시스템 및 그의 소프트웨어 복구 방법 |
CN113885923A (zh) * | 2021-12-07 | 2022-01-04 | 禾多科技(北京)有限公司 | 一种车辆ecu升级系统及方法 |
CN114826911A (zh) * | 2022-03-10 | 2022-07-29 | 浙江零跑科技股份有限公司 | 一种汽车和手机结合的ota升级实现方法 |
CN114710524B (zh) * | 2022-03-18 | 2023-06-30 | 广州小鹏汽车科技有限公司 | 车内局域网的数据交互方法、装置、设备及存储介质 |
CN115988488B (zh) * | 2023-03-21 | 2023-06-30 | 北京全路通信信号研究设计院集团有限公司 | 一种在线集中更新车载密钥的方法及装置 |
CN116419217B (zh) * | 2023-06-09 | 2023-09-05 | 广州万协通信息技术有限公司 | Ota数据升级方法、系统、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014205306A1 (de) * | 2014-03-21 | 2015-09-24 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum Speichern eines Verschlüsselungsschlüssels und Verschlüsselungssystem für ein Kraftfahrzeug |
JP2017046038A (ja) * | 2015-08-24 | 2017-03-02 | Kddi株式会社 | 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム |
JP2018014770A (ja) * | 2017-10-30 | 2018-01-25 | Kddi株式会社 | 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090300595A1 (en) | 2008-05-30 | 2009-12-03 | Ise Corporation | System and Method for Remotely Updating Control Software in a Vehicle With an Electric Drive System |
US9464905B2 (en) | 2010-06-25 | 2016-10-11 | Toyota Motor Engineering & Manufacturing North America, Inc. | Over-the-air vehicle systems updating and associate security protocols |
CN102158544A (zh) | 2011-02-25 | 2011-08-17 | 深圳市元征软件开发有限公司 | 车载电子装置的远程升级方法及装置 |
US20150230044A1 (en) | 2014-02-12 | 2015-08-13 | Continental Automotive Systems, Inc. | Updating vehicle software using a smartphone |
JP2015164774A (ja) | 2014-03-03 | 2015-09-17 | 三星ダイヤモンド工業株式会社 | スクライブ装置 |
CN104468784B (zh) * | 2014-12-05 | 2018-01-02 | 北京速通科技有限公司 | 一种通过dsrc接口实现车载单元软件升级的系统及方法 |
US9529580B2 (en) | 2015-01-21 | 2016-12-27 | Ford Global Technologies, Llc | Vehicle control update methods and systems |
WO2016183096A1 (en) | 2015-05-14 | 2016-11-17 | Airbiquity Inc. | Centralized management of mobile-assisted motor vehicle software upgrading and vehicle data analytics |
US10042635B2 (en) | 2015-06-16 | 2018-08-07 | Lear Corporation | Method for wireless remote updating vehicle software |
DE102015220489B4 (de) | 2015-10-21 | 2024-05-29 | Ford Global Technologies, Llc | Verfahren zur Autorisierung einer Softwareaktualisierung in einem Kraftfahrzeug |
JP6727067B2 (ja) * | 2016-08-08 | 2020-07-22 | 株式会社日立製作所 | 水素回生システムおよび水素回生運転方法 |
JP6454919B2 (ja) * | 2017-10-10 | 2019-01-23 | Kddi株式会社 | 管理システム、データ提供装置、車載コンピュータ、管理方法、及びコンピュータプログラム |
-
2018
- 2018-04-30 CN CN201880092965.4A patent/CN112055952B/zh active Active
- 2018-04-30 FI FIEP18917065.7T patent/FI3780481T3/fi active
- 2018-04-30 WO PCT/SG2018/050207 patent/WO2019212403A1/zh unknown
- 2018-04-30 EP EP18917065.7A patent/EP3780481B1/en active Active
-
2020
- 2020-10-30 US US17/085,878 patent/US11985238B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014205306A1 (de) * | 2014-03-21 | 2015-09-24 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum Speichern eines Verschlüsselungsschlüssels und Verschlüsselungssystem für ein Kraftfahrzeug |
JP2017046038A (ja) * | 2015-08-24 | 2017-03-02 | Kddi株式会社 | 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム |
JP2018014770A (ja) * | 2017-10-30 | 2018-01-25 | Kddi株式会社 | 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム |
Also Published As
Publication number | Publication date |
---|---|
US11985238B2 (en) | 2024-05-14 |
FI3780481T3 (fi) | 2024-05-16 |
WO2019212403A1 (zh) | 2019-11-07 |
EP3780481A4 (en) | 2021-04-21 |
EP3780481B1 (en) | 2024-02-14 |
EP3780481A1 (en) | 2021-02-17 |
CN112055952A (zh) | 2020-12-08 |
US20210051000A1 (en) | 2021-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112055952B (zh) | 一种车载设备升级方法及相关设备 | |
CN111279310B (zh) | 一种车载设备升级方法及相关设备 | |
EP3926500B1 (en) | Device upgrade method and related device | |
CN112585905B (zh) | 一种设备升级方法及相关设备 | |
US20220276855A1 (en) | Method and apparatus for processing upgrade package of vehicle | |
CN110621014B (zh) | 一种车载设备及其程序升级方法、服务器 | |
CN111031147B (zh) | 一种基于mqtt框架的远程车载控制系统及方法 | |
US11212109B2 (en) | Data provision system, data security device, data provision method, and computer program | |
US10970398B2 (en) | Data provision system, data security device, data provision method, and computer program | |
CN113015159B (zh) | 初始安全配置方法、安全模块及终端 | |
US20220311625A1 (en) | Certificate Application Method And Device | |
JP6203798B2 (ja) | 車載制御システム、車両、管理装置、車載コンピュータ、データ共有方法、及びコンピュータプログラム | |
CN110881176B (zh) | 用于改善车对x通信装置的利用率的方法及车对x通信装置 | |
CN110830243A (zh) | 对称密钥分发方法、装置、车辆及存储介质 | |
CN117688083A (zh) | 车联网数据共享方法、装置、系统、电子设备及存储介质 | |
CN115811721A (zh) | 基于身份认证的蓝牙通信方法、装置、设备及储存介质 | |
CN117319992A (zh) | 车辆软件升级方法、系统、装置、电子设备及存储介质 | |
CN117813804A (zh) | 通信方法及相关设备 | |
JP2017225186A (ja) | 車載制御システム、車両、管理装置、車載コンピュータ、データ共有方法、及びコンピュータプログラム | |
CN115701158A (zh) | 一种实现蓝牙实体钥匙rke控车功能的方法及装置 |
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 |