CN116419206A - Ota升级方法、装置、设备、存储介质及车辆 - Google Patents
Ota升级方法、装置、设备、存储介质及车辆 Download PDFInfo
- Publication number
- CN116419206A CN116419206A CN202310336463.4A CN202310336463A CN116419206A CN 116419206 A CN116419206 A CN 116419206A CN 202310336463 A CN202310336463 A CN 202310336463A CN 116419206 A CN116419206 A CN 116419206A
- Authority
- CN
- China
- Prior art keywords
- data packet
- certificate
- vehicle
- identification
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 87
- 238000003860 storage Methods 0.000 title claims abstract description 19
- 230000015654 memory Effects 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 description 20
- 230000006870 function Effects 0.000 description 13
- 238000012795 verification Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000009434 installation Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005336 cracking Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/009—Security arrangements; Authentication; Protecting privacy or anonymity specially adapted for networks, e.g. wireless sensor networks, ad-hoc networks, RFID networks or cloud networks
-
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- 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/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/043—Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
- H04W12/0431—Key distribution or pre-distribution; Key agreement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
- H04W12/069—Authentication using certificates or pre-shared keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
- H04W8/245—Transfer of terminal data from a network towards a terminal
Abstract
本申请涉及一种OTA升级方法、装置、设备、存储介质及车辆,涉及汽车技术领域。用于提高OTA升级的安全性。该方法包括:确定目标数据包对应的加密信息,并基于加密信息对目标数据包进行签名与加密,得到加密数据包,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥;向车端控制器发送加密数据包对应的第一配置信息,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识;接收车端控制器发送的升级请求,并基于升级请求向车端控制器发送目标升级包,目标升级包中包括以下至少一项:加密数据包、证书、密钥。由此可以提高OTA升级的安全性。
Description
技术领域
本申请涉及汽车技术领域,具体涉及一种OTA升级方法、装置、设备、存储介质及车辆。
背景技术
随着汽车技术尤其是智能网联汽车技术的快速发展,车辆中的车辆控制器的数量以及功能越来越多。而随着如汽车软件通信技术等车联网技术的逐渐发展,通常需要对车辆内控制器软件进行远程的升级迭代,以实现软件性能的提升以及相关问题的修复。当前在相关技术中,主要通过空中下载技术(Over-the-Air Technology,OTA)实现对车辆控制器软件的升级优化。而在当前的OTA升级方法中,主要通过云端使用证书和密钥,对升级数据包进行摘要和签名,并将升级数据包进行加密后发送至车辆终端(车端)。车端通过阈值的证书和密钥对升级数据包进行解密和验签,并在通过合法性、完整性等验证时基于升级数据包实现对车辆控制器软件的升级。
但在上述方法中,主要通过在整车产线上统一进行灌装预置,为车辆分配证书和解密密钥,以基于预先分配的证书和密钥,在使用过程中实现对升级数据包的解密验证。长期大量的使用相同的证书和密钥对目标升级包进行加密,增加了升级数据包的泄露风险和被破解的风险,导致车辆十分容易受到数据窃取等攻击行为。因此,当前OTA升级的安全性较低。
发明内容
本申请提供一种OTA升级方法、装置、设备、存储介质及车辆,以至少解决相关技术中车辆控制器软件升级的安全性较低的技术问题。本申请的技术方案如下:
根据本申请涉及的第一方面,提供了一种OTA升级方法,应用于服务器,该方法包括:确定目标数据包对应的加密信息,并对目标数据包进行签名与加密,得到加密数据包,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥;向车端控制器发送加密数据包对应的第一配置信息,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识;接收车端控制器发送的升级请求,并基于升级请求向车端控制器发送目标升级包,目标升级包中包括以下至少一项:加密数据包、证书、密钥。
根据上述技术手段,本申请可以基于预设数据库,随机生成目标数据包对应的证书、密钥等加密信息,以基于具体的使用需求,对加密信息进行更换。避免长期使用相同的证书和密钥,降低数据包的数据泄露风险以及被破解的风险,从而提高车辆控制器软件升级的安全性。
在一种可能的实施方式中,接收车端控制器发送的升级请求,并基于升级请求向车端控制器发送目标升级包,包括:接收车端控制器发送的第一升级请求,并基于第一升级请求向车端控制器发送加密数据包;或者,接收车端控制器发送的第二升级请求,并基于第二升级请求向车端控制器发送加密数据包和证书;或者,接收车端控制器发送的第三升级请求,并基于第三升级请求向车端控制器发送加密数据包和密钥;或者,接收车端控制器发送的第四升级请求,并基于第四升级请求向车端控制器发送加密数据包、证书和密钥。
根据上述技术手段,本申请可以基于车端控制器发送的不同需求,确定是否需要向车端控制器发送证书、密钥等加密信息,以在加密信息未更换的情况下,减少不必要的数据传输,提高升级效率。
在一种可能的实施方式中,方法还包括:每间隔预设时长,重新确定目标数据包对应的证书和/或密钥;将重新确定的目标数据包对应的证书的标识和/或密钥的标识发送给车端控制器。
根据上述技术手段,本申请可以基于预设时长,实现对证书、密钥的定期更换,以避免长时间使用相同的证书和/或密钥,进一步降低证书、密钥的泄露风险,提高升级安全性。
根据本申请涉及的第二方面,提供了一种OTA升级方法,应用于车端控制器,该方法包括:接收服务器发送的加密数据包对应的第一配置信息,加密数据包为基于目标数据包对应的加密信息,对目标数据包进行签名与加密得到的,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识;基于第一配置信息和本地保存的第二配置信息,向服务器发送升级请求,第二配置信息为在历史时刻获取的历史数据包对应的配置信息,第二配置信息用于指示以下至少一项:历史数据包的基本信息、历史数据包对应的证书的标识、历史数据包对应的密钥的标识;接收服务器发送的目标升级包,并基于目标升级包实现对车端控制器的升级,目标升级包中包括以下至少一项:加密数据包、证书、密钥。
根据上述技术手段,本申请可以基于服务器发送的证书、密钥和加密数据包实现对加密数据包的解密与安装,以在对加密数据包对应的证书和密钥进行更换后,能够快速完成加密数据包的解密以及后续的安装,提高升级的安全性。
在一种可能的实施方式中,基于第一配置信息和本地保存的第二配置信息,向服务器发送升级请求,包括:在加密数据包的基本信息与历史数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第一升级请求;或者,在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第二升级请求;或者,在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第三升级请求;或者,在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第四升级请求。
根据上述技术手段,本申请可以基于第一配置信息与第二配置信息的区别,向服务器发送不同的升级请求,以实现对是否需要向车端控制器发送证书、密钥等加密信息的精准判断,以在加密信息未更换的情况下,减少不必要的数据传输,提高升级效率。
在一种可能的实施方式中,方法还包括:在加密数据包的基本信息与历史数据包的基本信息一致的情况下,不向服务器发送升级请求。
根据上述技术手段,本申请可以通过在加密数据包的基本信息与历史数据包的基本信息一致的情况下,不向服务器发送升级请求,减少不必要的数据交互流程以及数据的传输,以进一步提高升级效率。
根据本申请涉及第三方面,提供了一种OTA升级装置,应用于服务器,该OTA升级装置包括:加密单元,发送单元和接收单元;加密单元,用于确定目标数据包对应的加密信息,并对目标数据包进行签名与加密,得到加密数据包,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥;发送单元,用于向车端控制器发送加密数据包对应的第一配置信息,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识;接收单元,用于接收车端控制器发送的升级请求;发送单元,还用于基于升级请求向车端控制器发送目标升级包,目标升级包中包括以下至少一项:加密数据包、证书、密钥。
在一种可能的实施方式中,接收单元,还用于接收车端控制器发送的第一升级请求;发送单元,还用于基于第一升级请求向车端控制器发送加密数据包;或者,接收单元,还用于接收车端控制器发送的第二升级请求;发送单元,还用于基于第二升级请求向车端控制器发送加密数据包和证书;或者,接收单元,还用于接收车端控制器发送的第三升级请求;发送单元,还用于基于第三升级请求向车端控制器发送加密数据包和密钥;或者,接收单元,还用于接收车端控制器发送的第四升级请求;发送单元,还用于基于第四升级请求向车端控制器发送加密数据包、证书和密钥。
在一种可能的实施方式中,加密单元,还用于每间隔预设时长,重新确定目标数据包对应的证书和/或密钥;发送单元,还用于将重新确定的目标数据包对应的证书的标识和/或密钥的标识发送给车端控制器。
根据本申请涉及第四方面,提供了一种OTA升级装置,应用于车端控制器,该OTA升级装置包括:接收单元,发送单元和升级单元;接收单元,用于接收服务器发送的加密数据包对应的第一配置信息,加密数据包为基于目标数据包对应的加密信息,对目标数据包进行签名与加密得到的,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识;发送单元,用于基于第一配置信息和本地保存的第二配置信息,向服务器发送升级请求,第二配置信息为在历史时刻获取的历史数据包对应的配置信息,第二配置信息用于指示以下至少一项:历史数据包的基本信息、历史数据包对应的证书的标识、历史数据包对应的密钥的标识;接收单元,还用于接收服务器发送的目标升级包,目标升级包中包括以下至少一项:加密数据包、证书、密钥;升级单元,用于基于目标升级包实现对车端控制器的升级。
在一种可能的实施方式中,发送单元,还用于在加密数据包的基本信息与历史数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第一升级请求;或者,发送单元,还用于在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第二升级请求;或者,发送单元,还用于在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第三升级请求;或者,发送单元,还用于在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第四升级请求。
在一种可能的实施方式中,在加密数据包的基本信息与历史数据包的基本信息一致的情况下,不向服务器发送升级请求。
根据本申请涉及第五方面,提供了一种电子设备,包括:处理器以及存储器;其中,存储器用于存储一个或多个程序,一个或多个程序包括计算机执行指令,当电子设备运行时,处理器执行存储器存储的计算机执行指令,以使电子设备执行第一方面中的方法,或者执行第二方面中的方法。
根据本申请涉及第六方面,提供了一种计算机可读存储介质,当计算机可读存储介质中存储的计算机执行指令由电子设备的处理器执行时,电子设备能够执行第一方面中的方法,或者执行第二方面中的方法。
根据本申请涉及第七方面,提供了一种车辆,包括车端控制器,车端控制器用于执行第二方面中的方法。
由此,本申请的上述技术特征具有以下有益效果:
(1)可以基于预设数据库,随机生成目标数据包对应的证书、密钥等加密信息,以基于具体的使用需求,对加密信息进行更换。避免长期使用相同的证书和密钥,降低数据包的数据泄露风险以及被破解的风险,从而提高车辆控制器软件升级的安全性。
(2)可以基于车端控制器发送的不同需求,确定是否需要向车端控制器发送证书、密钥等加密信息,以在加密信息未更换的情况下,减少不必要的数据传输,提高升级效率。
(3)可以基于预设时长,实现对证书、密钥的定期更换,以避免长时间使用相同的证书和/或密钥,进一步降低证书、密钥的泄露风险,提高升级安全性。
(4)可以基于服务器发送的证书、密钥和加密数据包实现对加密数据包的解密与安装,以在对加密数据包对应的证书和密钥进行更换后,能够快速完成加密数据包的解密以及后续的安装,提高升级的安全性。
(5)可以基于第一配置信息与第二配置信息的区别,向服务器发送不同的升级请求,以实现对是否需要向车端控制器发送证书、密钥等加密信息的精准判断,以在加密信息未更换的情况下,减少不必要的数据传输,提高升级效率。
(6)可以通过在加密数据包的基本信息与历史数据包的基本信息一致的情况下,不向服务器发送升级请求,减少不必要的数据交互流程以及数据的传输,以进一步提高升级效率。
需要说明的是,第三方面、第四方面、第五方面、第六方面以及第七方面中的任一种实现方式所带来的技术效果可参见第一方面以及第二方面中对应实现方式所带来的技术效果,此处不再赘述。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
图1是根据一示例性实施例示出的一种安全升级系统的结构示意图;
图2是根据一示例性实施例示出的一种OTA升级方法的流程示意图;
图3是根据一示例性实施例示出的又一种OTA升级方法的流程示意图;
图4是根据一示例性实施例示出的又一种OTA升级方法的流程示意图;
图5是根据一示例性实施例示出的又一种OTA升级方法的流程示意图;
图6是根据一示例性实施例示出的又一种OTA升级方法的流程示意图;
图7是根据一示例性实施例示出的又一种OTA升级方法的流程示意图;
图8是根据一示例性实施例示出的又一种OTA升级方法的流程示意图;
图9是根据一示例性实施例示出的一种OTA升级装置的框图;
图10是根据一示例性实施例示出的又一种OTA升级装置的框图;
图11是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请实施例提供的OTA升级方法,可以适用于安全升级系统。图1示出了该安全升级系统的一种结构示意图。如图1所示,安全升级系统10包括:服务器11、车端控制器12。
安全升级系统10可以用于物联网,安全升级系统10(如服务器11、车端控制器12)可以包括多个中央处理器(central processing unit,CPU)、多个内存、存储有多个操作系统的存储装置等硬件。
服务器11,用于实现数据的存储,例如服务器11为车辆服务运营商的服务器,用于上传目标数据包供使用用户(车端控制器)进行下载、部署,实现车端终端系统的更新优化。
可选的,如图1所示,服务器11可以为云端服务器。
车端控制器12用于实现加密数据包的下载与部署,例如车端控制器12通过与服务器11交互,接收加密数据包对应的第一配置信息,并基于该第一配置信息和本地保存的第二配置信息,向服务器发送升级请求,以获取加密数据包,从而实现加密数据包的下载于部署,进而完成升级。
为了便于理解,以下结合附图对本申请提供的OTA升级方法进行具体介绍。
图2是根据一示例性实施例示出的一种OTA升级方法的流程图,应用于服务器,如图2所示,该OTA升级方法包括以下S201-S203:
S201、确定目标数据包对应的加密信息,并对目标数据包进行签名与加密,得到加密数据包。
其中,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥。
可选的,车载服务运营商可以将需要升级的目标数据包上传至服务器中,服务器在接收到该目标数据包时,确定该目标数据包对应的证书和密钥。
可选的,证书,在本申请实施例中可以理解为用于对目标数据包进行签名的证书,即签名证书;密钥,在本申请实施例中可以理解为用于对目标数据包进行加密的密钥,即加密密钥。
在一种可能的实现方式中,服务器还可以向车端控制器发送加密数据包对应的第一配置信息时,实时确定该目标数据包对应的证书和密钥。
需要说明的是,本申请实施例中的目标数据包,可以理解为需要进行OTA下载的车端控制器的升级数据包。
可选的,确定目标数据包对应的数据包签名和加密信息,可以理解为,服务器在接收到目标数据包时,选择(如从预设数据库中选择)该目标数据包对应的数据包签名和加密信息。
在一种可能的实现方式中,服务器在接收到目标数据包时,还需要确定目标数据包的类型,如确定目标数据包是否为完整升级的数据包、确定目标数据包是否为需要进行差分计算升级的数据包。
可选的,目标数据包对应的加密信息,可以通过目标数据包与证书、密钥的对应(绑定)关系确定。
需要说明的是,由于目标数据包与车端控制器存在对应关系,即不同的车端控制器对应的目标数据包也会存在区别,因此在可能的实现方式中,目标数据包对应的加密信息,还可以理解为车端控制器对应的加密信息,即不同的车端控制器对应有不同的证书、密钥等加密信息。
示例性的,车端控制器与证书、密钥的对应关系,可以为不同的车端控制器的标识,如车端控制器的车端控制器设备ID、证书编号和密钥编号的对应关系。
可选的,对于车端控制器与证书、密钥的对应关系,可以通过人工进行管理设置,如通过绑定管理系统管理车端控制器与证书、密钥之间的对应关系。
需要说明的是,管理车端控制器与证书、密钥之间的对应关系,还可以理解为本申请实施例中的管理更换目标数据包对应的加密信息,即更换车端控制器与证书、密钥之间的对应关系,可以理解为更换车端控制器对应的目标数据包的加密信息。
可选的,证书用于为目标数据包签名,密钥用于为目标数据包加密。
示例性的,如图3所示,在确定目标数据包对应的加密信息后,可以通过信息-摘要算法(Message-Digest Algorithm,MD),如MD5算法计算出MD5校验码,通过安全散列算法(Secure Hash Algorithm 256,SHA256)计算出HASH摘要值,并基于目标数据包对应的证书,通过私钥对该MD5校验码和HASH摘要值进行签名,得到目标数据包对应的签名信息,完成对目标数据包的签名。并通过加密算法(如可以为对称加密算法)和密钥对目标数据包进行加密。
可选的,还可以基于加密算法,使用密钥对签名信息进行加密。
在一种可能的实现方式中,服务运营商上传目标数据包至服务器后,服务器还可以直接向车端控制器发送提示消息,以指示当前云端服务器中存在待升级的目标数据包。
S202、向车端控制器发送加密数据包对应的第一配置信息。
其中,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识。
在一种可能的实现方式中,服务器可以基于车端控制器的第一配置信息获取请求,向车端控制器发送加密数据包对应的第一配置信息。或者,服务器也可以在服务运营商上传目标数据包至服务器后,自动向车端控制器发送加密数据包对应的第一配置信息。
可选的,服务器首先与车端控制器建立通信连接,并进行认证,从而向车端控制器发送加密数据包对应的第一配置信息。
可选的,服务器可以通过相关协议,如通过在HTTP传输上增加了SSL协议的加密能力(Hypertext Transfer Protocol over Secure Socket Layer,HTTPS)协议与车端控制器进行消息握手,建立通信连接。
可选的,服务器在与车端控制器建立通信连接后,还可以进行证书验证,并协商出会话(即数据传输)过程中的密钥。
需要说明的是,会话过程中的密钥,指在远程通信时,接收端和发送端的数据传输密钥。
可选的,加密数据包的基本信息可以为升级包版本(即软件版本)、车端控制器设备标识(identity document,ID)、对应的车端控制器的相关信息,如节点控制器(Master)信息、升级控制器(SubMaster)名称等信息;证书的标识,可以为证书ID;密钥的标识,可以为密钥ID。
需要说明的是,本申请实施例中的车端控制器,包括Master和SubMaster,其中Master用于实现与服务器的交互,接收目标升级包,并管理下属的SubMaster,SubMaster为具体的升级控制器,用于实现车辆的功能,为目标数据包的部署对象。
可以理解,当目标数据包涉及对Master的升级时,Master也为目标数据包的部署对象。
S203、接收车端控制器发送的升级请求,并基于升级请求向车端控制器发送目标升级包。
其中,目标升级包中包括以下至少一项:加密数据包、证书、密钥。
可选的,服务器可以基于车端控制器发送的升级请求的具体请求类型,向车端控制器发送目标升级包。
在一种可能的实现方式中,服务器还可以基于车端控制器的升级请求,以及是否更换过证书和/或密钥,向车端控制器自动发送包含不同内容的目标升级包。
示例性的,当服务器确定加密数据包当前对应的证书和密钥为第一次使用时,向车端控制器发送加密数据包时,可以将加密数据包、证书和密钥作为目标升级包发送至车端控制器中;当服务器确定加密数据包当前对应的证书与密钥与上次该加密数据包使用的证书和密钥相同时,可以仅将加密数据包作为目标升级包发送至车端控制器中;当服务器确定加密数据包当前对应的证书和密钥中的任一与上次不同时,可以将加密数据包和与上次该加密数据包使用不同的加密信息(证书或密钥)作为目标升级包发送至车端控制器中。
在一种可能的实现方式中,服务器还可以基于车端控制器的升级请求,直接将加密数据包、证书和密钥作为目标升级包发送至车端控制器中。
需要说明的是,本申请实施例中的OTA升级方法,主要应用于OTA升级的场景下,但也可以应用于其他的涉及数据包加密传输,完成设备功能升级的场景下。
可选的,对于加密数据包、证书和密钥的发送顺序,可以结合具体的业务需求进行设置,如可以同时进行传输、依次进行传输等。
在一种可能的实现方式中,服务器可以先下发证书和密钥,随后下发加密数据包。
可选的,服务器再下发证书和密钥时,还需要下发加密数据包(目标数据包)对应的签名信息。
本申请实施例中,可以基于预设数据库,随机生成目标数据包对应的证书、密钥等加密信息,以基于具体的使用需求,对加密信息进行更换。避免长期使用相同的证书和密钥,降低数据包的数据泄露风险以及被破解的风险,从而提高车辆控制器软件升级的安全性。
在一些实施例中,为了实现对目标升级包的精准下发,如图4所示,本申请实施例提供的一种OTA升级方法中,上述S203,包括S301-S304:
S301、接收车端控制器发送的第一升级请求,并基于第一升级请求向车端控制器发送加密数据包。
需要说明的是,第一升级请求,可以理解为车辆控制器确定当前的目标数据包对应的证书和密钥,为上次的证书和密钥,不需要重新发送该证书和该密钥的升级请求。
S302、接收车端控制器发送的第二升级请求,并基于第二升级请求向车端控制器发送加密数据包和证书。
需要说明的是,第二升级请求,可以理解为车辆控制器确定证书为上次的证书,不需要重新发送该证书的升级请求。
S303、接收车端控制器发送的第三升级请求,并基于第三升级请求向车端控制器发送加密数据包和密钥。
需要说明的是,第三升级请求,可以理解为车辆控制器确定密钥为上次的密钥,不需要重新发送该密钥的升级请求。
S304、接收车端控制器发送的第四升级请求,并基于第四升级请求向车端控制器发送加密数据包、证书和密钥。
需要说明的是,第四升级请求,可以理解为车辆控制器确定证书和密钥均于上次的证书和密钥不同,需要重新发送的升级请求。
本申请实施例中,可以基于车端控制器发送的不同需求,确定是否需要向车端控制器发送证书、密钥等加密信息,以在加密信息未更换的情况下,减少不必要的数据传输,提高升级效率。
在一些实施例中,为了进一步提高目标数据包的安全性,如图5所示,本申请实施例提供的一种OTA升级方法中,还包括S401-S402:
S401、每间隔预设时长,重新确定目标数据包对应的证书和/或密钥。
可选的,重新确定目标数据包对应的证书和/或密钥,可以理解为强制更换不同的证书和/或密钥,作为目标数据包对应的证书和/或密钥。
可选的,还可以间隔预设时长,直接更换预设数据库中的多个预设证书和多个预设密钥。
需要说明的是,预设时长,可以结合具体的业务需求确定,如对于安全性要求较高的目标数据包,预设时长可以为每天、每周、或每月等时长,对于安全性要求较低的目标数据包,预设时长可以为每月、每两个月、每季度等时长。
S402、将重新确定的目标数据包对应的证书的标识和/或密钥的标识发送给车端控制器。
可选的,在每次更换目标数据包对应的证书和/或密钥后,可以直接将该证书和/或密钥发送至车端控制器;也可以在接收到车端控制器发送的升级请求后,将该证书和/或密钥发送至车端控制器。
本申请实施例中,可以基于预设时长,实现对证书、密钥的定期更换,以避免长时间使用相同的证书和/或密钥,进一步降低证书、密钥的泄露风险,提高升级安全性。
图6是根据一示例性实施例示出的一种OTA升级方法的流程图,应用于车端控制器,如图6所示,该OTA升级方法包括以下S501-S503:
S501、接收服务器发送的加密数据包对应的第一配置信息。
其中,加密数据包为基于目标数据包对应的数据包签名和加密信息,对目标数据包进行签名与加密得到的,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识。
S502、基于第一配置信息和本地保存的第二配置信息,向服务器发送升级请求。
其中,第二配置信息为在历史时刻获取的历史数据包对应的配置信息,第二配置信息用于指示以下至少一项:历史数据包的基本信息、历史数据包对应的证书的标识、历史数据包对应的密钥的标识。
需要说明的是,历史时刻获取的历史数据包,可以理解该车端控制器上次接收的历史数据包。
可选的,车端控制器接收到服务器发送的加密数据包对应的第一配置信息后,可以确定本地已存储的历史数据包的基本信息(如历史数据包的版本号),与服务器发送的加密数据包的基本信息是否相同;本地已存储的证书的标识与服务器发送的加密数据包对应的证书的标识是否相同;和/或本地已存储的密钥的标识与服务器发送的加密数据包对应的密钥的标识是否相同,从而基于上述信息的比对结果,向服务器发送升级请求。
需要说明的是,结合上述Master和SubMaster,当Master确定目标数据包还涉及到SubMaster(如涉及SubMaster的升级)时,还可以向对应的SubMaster进行查询,确定SubMaster存储的密钥的标识、证书的标识等信息是否与目标数据包对应的相关信息一致,进而通过Master向服务器发送对应的升级请求。
可选的,由于车端控制器历史时刻获取的,历史数据包对应的的证书和密钥均为在历史时刻已经使用过的(已经用于验签的证书、已经用于解密的密钥),因此,对于用于验签的证书也称验签证书、对于用于解密的密钥也称解密密钥。
在一种可能的实现方式中,车端控制器在向服务器发送升级请求前,还需要判断当前是否满足升级条件(如车辆是否停止行驶、发动机是否正常工作等),并在满足升级条件的情况下,由使用用户操作确认升级,再向服务器发送升级请求。
S503、接收服务器发送的目标升级包,并基于目标升级包实现对车端控制器的升级。
其中,目标升级包中包括以下至少一项:加密数据包、证书、密钥。
可选的,车端控制器在接收到服务器发送的目标升级包时,需要验证证书和密钥的合法性,在验证通过后再使用加密数据包对应的密钥,对加密数据包进行解密,使用加密数据包对应的证书,对加密数据包进行验签,校验加密数据包的对应的目标数据包的合法性和完整性,上述验证均通过的情况下再对目标数据包进行部署,完成车端控制器的升级。
需要说明的是,结合上述服务器与车端控制器的证书验证流程,如图7所示,根据相关通信传输协议,车端控制器(如上述Master)在接收到证书和密钥后,需要使用根密钥对混淆存储的根证书和密钥加密密钥进行解密,得到根证书和密钥加密密钥,对包括有证书和密钥的信息报进行解密,在使用根证书中的公钥对证书和密钥的合法性进行验证,验证通过后确定得到服务器发送的证书和密钥。其中,根密钥预置在白盒算法中。
进一步的,Master对证书和密钥的合法性验证完毕后,在该加密数据包涉及到相应的SubMaster时,还需要将证书、密钥和加密数据包转发到对应的SubMaster中,由SubMaster使用密钥对加密数据包进行解密,然后使用证书对目标数据包进行验签,并在校验目标数据包合法且完整后进行安全升级。
本申请实施例中,可以基于服务器发送的证书、密钥和加密数据包实现对加密数据包的解密与安装,以在对加密数据包对应的证书和密钥进行更换后,能够快速完成加密数据包的解密以及后续的安装,提高升级的安全性。
在一些实施例中,为了提高安全升级的效率,如图8所示,本申请实施例提供的一种OTA升级方法中,上述S502,包括S601-S604:
S601、在加密数据包的基本信息与历史数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第一升级请求。
S602、在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第二升级请求。
S603、在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第三升级请求。
S604、在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第四升级请求。
可选的,当车端控制器为第一次接收到服务器发送的第一配置信息,即车端控制器本地并不存在保存的第二配置信息时,可以直接向服务器发送第四升级请求。
本申请实施例中,可以第一配置信息与第二配置信息的区别,向服务器发送不同的升级请求,以实现对是否需要向车端控制器发送证书、密钥等加密信息的精准判断,以在加密信息未更换的情况下,减少不必要的数据传输,提高升级效率。
在一些实施例中,为了进一步提高安全升级的效率,减少不必要的数据传输,本申请实施例提供的一种OTA升级方法中,还包括S701:
S701、在加密数据包的基本信息与历史数据包的基本信息一致的情况下,不向服务器发送升级请求。
可以理解,当加密数据包的基本信息与历史数据包的基本信息一致时,说明当前服务器中的加密数据包,与车端控制器中已安装的数据包相同,即不需要进行升级。
本申请实施例中,通过在加密数据包的基本信息与历史数据包的基本信息一致的情况下,不向服务器发送升级请求,减少不必要的数据交互流程以及数据的传输,以进一步提高升级效率。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,OTA升级装置或电子设备包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法,示例性的对OTA升级装置或电子设备进行功能模块的划分,例如,OTA升级装置或电子设备可以包括对应各个功能划分的各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图9是根据一示例性实施例示出的一种OTA升级装置的框图。应用于服务器,参照图9,该OTA升级装置900包括:加密单元901,发送单元902和接收单元903。
加密单元901,用于确定目标数据包对应的加密信息,并对目标数据包进行签名与加密,得到加密数据包,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥。
发送单元902,用于向车端控制器发送加密数据包对应的第一配置信息,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识;
接收单元903,用于接收车端控制器发送的升级请求。
发送单元902,还用于基于升级请求向车端控制器发送目标升级包,目标升级包中包括以下至少一项:加密数据包、证书、密钥。
在一种可能的实现方式中,接收单元903,还用于接收车端控制器发送的第一升级请求;发送单元902,还用于基于第一升级请求向车端控制器发送加密数据包。
或者,接收单元903,还用于接收车端控制器发送的第二升级请求;发送单元902,还用于基于第二升级请求向车端控制器发送加密数据包和证书。
或者,接收单元903,还用于接收车端控制器发送的第三升级请求;发送单元902,还用于基于第三升级请求向车端控制器发送加密数据包和密钥。
或者,接收单元903,还用于接收车端控制器发送的第四升级请求;发送单元902,还用于基于第四升级请求向车端控制器发送加密数据包、证书和密钥。
在一种可能的实现方式中,加密单元901,还用于每间隔预设时长,重新确定目标数据包对应的证书和/或密钥。
发送单元902,还用于将重新确定的目标数据包对应的证书的标识和/或密钥的标识发送给车端控制器。
图10是根据一示例性实施例示出的一种OTA升级装置的框图。应用于车端控制器,参照图10,该OTA升级装置1000包括:接收单元1001,发送单元1002和升级单元1003。
接收单元1001,用于接收服务器发送的加密数据包对应的第一配置信息,加密数据包为基于目标数据包对应的加密信息,对目标数据包进行签名与加密得到的,加密信息包括:证书、密钥,证书和密钥均为从预设数据库中随机获取的,预设数据库中包括多个预设证书和多个预设密钥,第一配置信息用于指示以下至少一项:加密数据包的基本信息、证书的标识、密钥的标识。
发送单元1002,用于基于第一配置信息和本地保存的第二配置信息,向服务器发送升级请求,第二配置信息为在历史时刻获取的历史数据包对应的配置信息,第二配置信息用于指示以下至少一项:历史数据包的基本信息、历史数据包对应的证书的标识、历史数据包对应的密钥的标识。
接收单元1001,还用于接收服务器发送的目标升级包,目标升级包中包括以下至少一项:加密数据包、证书、密钥。
升级单元1003,用于基于目标升级包实现对车端控制器的升级。
在一种可能的实现方式中,发送单元1002,还用于在加密数据包的基本信息与历史数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第一升级请求。
或者,发送单元1002,还用于在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识一致的情况下,向服务器发送第二升级请求。
或者,发送单元1002,还用于在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第三升级请求。
或者,发送单元1002,还用于在加密数据包的基本信息与历史数据包对应的加密数据包的基本信息不一致、证书的标识与历史数据包对应的证书的标识不一致、且密钥的标识与历史数据包对应的密钥的标识不一致的情况下,向服务器发送第四升级请求。
在一种可能的实现方式中,发送单元1002,还用于在加密数据包的基本信息与历史数据包的基本信息一致的情况下,不向服务器发送升级请求。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图11是根据一示例性实施例示出的一种电子设备的框图。如图11所示,电子设备1100包括但不限于:处理器1101和存储器1102。
其中,上述的存储器1102,用于存储上述处理器1101的可执行指令。可以理解的是,上述处理器1101被配置为执行指令,以实现上述实施例中的OTA升级方法。
需要说明的是,上述实施例中的安全方法,可以指上述实施例中应用于服务器的OTA升级方法,也可以指上述实施例中应用于车端控制器的OTA升级方法。
示例性的,电子设备可以有两个,第一电子设备和第二电子设备,其中第一电子设备用于实现上述实施例中,应用于服务器的OTA升级方法;第二电子设备用于实现上述实施例中,应用于车端控制器的OTA升级方法。
需要说明的是,本领域技术人员可以理解,图11中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图11所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器1101是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器1102内的软件程序和/或模块,以及调用存储在存储器1102内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器1101可包括一个或多个处理单元。可选的,处理器1101可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1101中。
存储器1102可用于存储软件程序以及各种数据。存储器1102可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能模块所需的应用程序(比如确定单元、处理单元等)等。此外,存储器1102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器1102,上述指令可由电子设备1100的处理器1101执行以实现上述实施例中的OTA升级方法。
在实际实现时,图9中的加密单元901,发送单元902和接收单元903的功能,或者图10中的接收单元1001,发送单元1002和升级单元1003的功能,均可以由图11中的处理器1101调用存储器1102中存储的计算机程序实现。其具体的执行过程可参考上实施例中的OTA升级方法部分的描述,这里不再赘述。
可选地,计算机可读存储介质可以是非临时性计算机可读存储介质,例如,该非临时性计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存储存储器(Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,本申请实施例还提供了一种车辆,该车辆包括车端控制器,车端控制器用于实现上述的OTA升级方法。
在示例性实施例中,本申请实施例还提供了一种包括一条或多条指令的计算机程序产品,该一条或多条指令可以由电子设备1100的处理器1101执行以完成上述实施例中的OTA升级方法。
需要说明的是,上述计算机可读存储介质中的指令或计算机程序产品中的一条或多条指令被电子设备的处理器执行时实现上述OTA升级方法实施例的各个过程,且能达到与上述OTA升级方法相同的技术效果,为避免重复,这里不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全分类部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全分类部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全分类部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全分类部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (11)
1.一种OTA升级方法,其特征在于,应用于服务器,所述方法包括:
确定目标数据包对应的加密信息,并基于所述加密信息对所述目标数据包进行签名与加密,得到加密数据包,所述加密信息包括:证书、密钥,所述证书和所述密钥均为从预设数据库中随机获取的,所述预设数据库中包括多个预设证书和多个预设密钥;
向车端控制器发送所述加密数据包对应的第一配置信息,所述第一配置信息用于指示以下至少一项:所述加密数据包的基本信息、所述证书的标识、所述密钥的标识;
接收所述车端控制器发送的升级请求,并基于所述升级请求向所述车端控制器发送目标升级包,所述目标升级包中包括以下至少一项:所述加密数据包、所述证书、所述密钥。
2.根据权利要求1所述的方法,其特征在于,所述接收所述车端控制器发送的升级请求,并基于所述升级请求向所述车端控制器发送目标升级包,包括:
接收所述车端控制器发送的第一升级请求,并基于所述第一升级请求向所述车端控制器发送所述加密数据包;
或者,接收所述车端控制器发送的第二升级请求,并基于所述第二升级请求向所述车端控制器发送所述加密数据包和所述证书;
或者,接收所述车端控制器发送的第三升级请求,并基于所述第三升级请求向所述车端控制器发送所述加密数据包和所述密钥;
或者,接收所述车端控制器发送的第四升级请求,并基于所述第四升级请求向所述车端控制器发送所述加密数据包、所述证书和所述密钥。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
每间隔预设时长,重新确定所述目标数据包对应的证书和/或密钥;
将重新确定的所述目标数据包对应的证书的标识和/或密钥的标识发送给所述车端控制器。
4.一种OTA升级方法,其特征在于,应用于车端控制器,所述方法包括:
接收服务器发送的加密数据包对应的第一配置信息,所述加密数据包为基于目标数据包对应的加密信息,对所述目标数据包进行签名与加密得到的,所述加密信息包括:证书、密钥,所述证书和所述密钥均为从预设数据库中随机获取的,所述预设数据库中包括多个预设证书和多个预设密钥,所述第一配置信息用于指示以下至少一项:所述加密数据包的基本信息、所述证书的标识、所述密钥的标识;
基于所述第一配置信息和本地保存的第二配置信息,向所述服务器发送升级请求,所述第二配置信息为在历史时刻获取的历史数据包对应的配置信息,所述第二配置信息用于指示以下至少一项:所述历史数据包的基本信息、所述历史数据包对应的证书的标识、所述历史数据包对应的密钥的标识;
接收所述服务器发送的目标升级包,并基于所述目标升级包实现对所述车端控制器的升级,所述目标升级包中包括以下至少一项:所述加密数据包、所述证书、所述密钥。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第一配置信息和本地保存的第二配置信息,向所述服务器发送升级请求,包括:
在所述加密数据包的基本信息与所述历史数据包的基本信息不一致、所述证书的标识与所述历史数据包对应的证书的标识一致、且所述密钥的标识与所述历史数据包对应的密钥的标识一致的情况下,向所述服务器发送第一升级请求;
或者,在所述加密数据包的基本信息与所述历史数据包对应的加密数据包的基本信息不一致、所述证书的标识与所述历史数据包对应的证书的标识不一致、且所述密钥的标识与所述历史数据包对应的密钥的标识一致的情况下,向所述服务器发送第二升级请求;
或者,在所述加密数据包的基本信息与所述历史数据包对应的加密数据包的基本信息不一致、所述证书的标识与所述历史数据包对应的证书的标识一致、且所述密钥的标识与所述历史数据包对应的密钥的标识不一致的情况下,向所述服务器发送第三升级请求;
或者,在所述加密数据包的基本信息与所述历史数据包对应的加密数据包的基本信息不一致、所述证书的标识与所述历史数据包对应的证书的标识不一致、且所述密钥的标识与所述历史数据包对应的密钥的标识不一致的情况下,向所述服务器发送第四升级请求。
6.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
在所述加密数据包的基本信息与所述历史数据包的基本信息一致的情况下,不向所述服务器发送升级请求。
7.一种OTA升级装置,其特征在于,应用于服务器,所述OTA升级装置包括:加密单元,发送单元和接收单元;
所述加密单元,用于确定目标数据包对应的加密信息,并对所述目标数据包进行签名与加密,得到加密数据包,所述加密信息包括:证书、密钥,所述证书和所述密钥均为从预设数据库中随机获取的,所述预设数据库中包括多个预设证书和多个预设密钥;
所述发送单元,用于向车端控制器发送所述加密数据包对应的第一配置信息,所述第一配置信息用于指示以下至少一项:所述加密数据包的基本信息、所述证书的标识、所述密钥的标识;
所述接收单元,用于接收所述车端控制器发送的升级请求;
所述发送单元,还用于基于所述升级请求向所述车端控制器发送目标升级包,所述目标升级包中包括以下至少一项:所述加密数据包、所述证书、所述密钥。
8.一种OTA升级装置,其特征在于,应用于车端控制器,所述OTA升级装置包括:接收单元,发送单元和升级单元;
所述接收单元,用于接收服务器发送的加密数据包对应的第一配置信息,所述加密数据包为基于目标数据包对应的加密信息,对所述目标数据包进行签名与加密得到的,所述加密信息包括:证书、密钥,所述证书和所述密钥均为从预设数据库中随机获取的,所述预设数据库中包括多个预设证书和多个预设密钥,所述第一配置信息用于指示以下至少一项:所述加密数据包的基本信息、所述证书的标识、所述密钥的标识;
所述发送单元,用于基于所述第一配置信息和本地保存的第二配置信息,向所述服务器发送升级请求,所述第二配置信息为在历史时刻获取的历史数据包对应的配置信息,所述第二配置信息用于指示以下至少一项:所述历史数据包的基本信息、所述历史数据包对应的证书的标识、所述历史数据包对应的密钥的标识;
所述接收单元,还用于接收所述服务器发送的目标升级包,所述目标升级包中包括以下至少一项:所述加密数据包、所述证书、所述密钥;
所述升级单元,用于基于所述目标升级包实现对所述车端控制器的升级。
9.一种电子设备,其特征在于,包括:处理器以及存储器;其中,所述存储器用于存储一个或多个程序,所述一个或多个程序包括计算机执行指令,当所述电子设备运行时,处理器执行所述存储器存储的所述计算机执行指令,以使所述电子设备执行权利要求1-3中任一项所述的方法,或者执行权利要求4-6中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中存储的计算机执行指令由电子设备的处理器执行时,所述电子设备能够执行权利要求1-3中任一项所述的方法,或者执行权利要求4-6中任一项所述的方法。
11.一种车辆,其特征在于,包括车端控制器,所述车端控制器用于执行如权利要求4-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310336463.4A CN116419206A (zh) | 2023-03-30 | 2023-03-30 | Ota升级方法、装置、设备、存储介质及车辆 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310336463.4A CN116419206A (zh) | 2023-03-30 | 2023-03-30 | Ota升级方法、装置、设备、存储介质及车辆 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116419206A true CN116419206A (zh) | 2023-07-11 |
Family
ID=87052644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310336463.4A Pending CN116419206A (zh) | 2023-03-30 | 2023-03-30 | Ota升级方法、装置、设备、存储介质及车辆 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116419206A (zh) |
-
2023
- 2023-03-30 CN CN202310336463.4A patent/CN116419206A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7159328B2 (ja) | 車両内電子制御ユニット間のセキュアな通信 | |
CN111510485B (zh) | 一种ota升级包下载方法、装置、车辆端以及服务器 | |
US11321074B2 (en) | Vehicle-mounted device upgrade method and related apparatus | |
CN111131313B (zh) | 智能网联汽车更换ecu的安全保障方法及系统 | |
US8972736B2 (en) | Fully authenticated content transmission from a provider to a recipient device via an intermediary device | |
EP4152144A1 (en) | Vehicle-mounted device upgrade method and related device | |
CN111629002B (zh) | 车辆ecu的ota安全升级方法及其系统 | |
CN109495307A (zh) | 系统升级方法、ota升级包加密方法、终端设备及车辆 | |
EP4050474A1 (en) | Vehicle upgrade packet processing method and apparatus | |
EP1712992A1 (en) | Updating of data instructions | |
CN110572418A (zh) | 车辆身份认证的方法、装置、计算机设备及存储介质 | |
CN110688648B (zh) | 安全芯片固件更新方法及装置 | |
CN115242634B (zh) | 软件升级方法、设备和存储介质 | |
CN113867748A (zh) | 车辆软件升级方法、车载终端和车辆及服务器 | |
Buschlinger et al. | Plug-and-patch: Secure value added services for electric vehicle charging | |
CN115665138A (zh) | 一种汽车ota升级系统及方法 | |
CN114339680B (zh) | 一种v2x系统及安全认证方法 | |
CN116419217B (zh) | Ota数据升级方法、系统、设备及存储介质 | |
CN116232766B (zh) | 一种基于ota的数据加密系统及方法 | |
CN116419206A (zh) | Ota升级方法、装置、设备、存储介质及车辆 | |
CN110708311A (zh) | 下载权限授权方法、装置和服务器 | |
CN111464554B (zh) | 一种车辆信息安全控制方法及系统 | |
CN112839019B (zh) | 一种车载数据传输方法、装置和系统 | |
CN110830243B (zh) | 对称密钥分发方法、装置、车辆及存储介质 | |
CN115567195A (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 |