CN110225063B - 汽车车载系统的升级方法、升级系统、服务器及车载终端 - Google Patents

汽车车载系统的升级方法、升级系统、服务器及车载终端 Download PDF

Info

Publication number
CN110225063B
CN110225063B CN201910587994.4A CN201910587994A CN110225063B CN 110225063 B CN110225063 B CN 110225063B CN 201910587994 A CN201910587994 A CN 201910587994A CN 110225063 B CN110225063 B CN 110225063B
Authority
CN
China
Prior art keywords
key
upgrade package
vehicle
password
original
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
Application number
CN201910587994.4A
Other languages
English (en)
Other versions
CN110225063A (zh
Inventor
王辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Xiaopeng Motors Technology Co Ltd
Original Assignee
Guangzhou Xiaopeng Motors Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Xiaopeng Motors Technology Co Ltd filed Critical Guangzhou Xiaopeng Motors Technology Co Ltd
Priority to CN201910587994.4A priority Critical patent/CN110225063B/zh
Publication of CN110225063A publication Critical patent/CN110225063A/zh
Application granted granted Critical
Publication of CN110225063B publication Critical patent/CN110225063B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic 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

Abstract

一种汽车车载系统的升级方法、升级系统、服务器及车载终端,该方法包括:服务器确定与本次升级业务的业务类型对应的密钥集类型;从属于密钥集类型的密钥集中选取出第一私钥和第一密码;利用第一私钥和第一密码对原始升级包进行签名和加密,以得到安全升级包,并将所用证书和密码的标识信息附加在安全升级包中;将安全升级包传输至目标车辆的车载终端;车载终端从安全升级包中还原出所用证书和密码的标识信息,从而得到并利用与第一私钥对应的第一公钥以及与第一密码对应的第二密码对安全升级包进行验签和解密,以利用还原出的原始升级包对车载系统进行升级,从而实现业务层面的密钥分离,密钥可随时更换,以降低密钥泄露的可能和危害程度。

Description

汽车车载系统的升级方法、升级系统、服务器及车载终端
技术领域
本发明涉及车联网技术领域,具体涉及汽车车载系统的升级方法、系统、服务器及车载终端。
背景技术
随着汽车逐渐往智能化及网联化发展,OTA(Over The Air,在线升级)是车载系统必不可少的功能。能够接入互联网的网联汽车可以利用OTA功能对车载固件、车载应用程序以及车载系统配置等进行更新,其方法一般是先通过互联网接口或者USB接口将升级包传输至网联汽车内,然后将升级包刷写至目标位置。
然而,在实践中发现,攻击者有可能对升级包进行恶意改造,然后也通过OTA等方式将恶意改造后的升级包刷写到受攻击的汽车内。为了减少升级包被恶意改造之后可能导致的安全问题,部分公司及厂商对升级包进行了加密和签名等安全处理,以减少升级包中的文件信息被泄露,数据来源被篡改等问题的出现。但是,一旦密钥泄露,攻击者就可以轻易地破解经过安全处理的升级包,导致汽车仍然可能暴露在安全风险中。
发明内容
本发明实施例公开了汽车车载系统的升级方法、系统、服务器及车载终端,能够降低密钥泄露的危害程度。
本发明实施例第一方面公开一种汽车车载系统的升级方法,所述方法包括:
确定与本次升级业务的业务类型对应的密钥集类型;
从属于所述密钥集类型的密钥集中选取出第一私钥和第一密码;
利用所述第一私钥和所述第一密码对原始升级包进行签名和加密,以得到安全升级包;
将所述安全升级包传输至需要进行升级业务的目标车辆的车载终端,以供所述车载终端利用所述安全升级包对所述目标车辆的车载系统进行升级;
其中,所述密钥集类型包括所述相同密钥集或者所述不同密钥集;所述相同密钥集为多辆汽车共同拥有的密钥集合,所述不同密钥集为每辆汽车互不相同的密钥集合;服务器存储有所述相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;所述车载终端存储有所述相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码。
作为一种可选的实施方式,在本发明实施例第一方面中,所述从属于所述密钥集类型的密钥集中选取出第一私钥和第一密码,包括:
从属于所述密钥集类型的密钥集中选取出所述升级业务对应的密钥子集;
依次判断所述升级业务对应的密钥子集中的私钥和密码是否可用,以选取出所述升级业务对应的密钥子集中第一个可用的私钥和密码作为第一私钥和第一密码。
作为一种可选的实施方式,在本发明实施例第一方面中,所述从属于所述对应的密钥集类型的密钥集中选取出所述升级业务对应的密钥子集,包括:
如果所述密钥集类型为不同密钥集,获取所述目标车辆的车架号;根据所述车架号获取所述目标车辆对应的不同密钥子集,并从所述目标车辆对应的不同密钥子集中选取出与所述升级业务对应的密钥子集;
如果所述对应的密钥集类型为相同密钥集,直接从相同密钥集中选取出与所述升级业务对应的密钥子集。
作为一种可选的实施方式,在本发明实施例第一方面中,所述利用所述第一私钥和所述第一密码对原始升级包进行签名和加密,以得到安全升级包,包括:
计算原始升级包的第一校验信息;
利用所述第一私钥对所述第一校验信息进行签名,得到原始包签名;
利用所述第一密码对所述原始升级包进行加密,得到密文包;
对所述第一私钥的私钥标识,所述第一密码的密码标识,所述原始升级包的第一校验信息,所述原始包签名、所述原始升级包的文件长度以及与所述目标车辆相关的控制信息进行组合,以得到安全元数据;
将所述安全元数据与所述密文包进行合并打包,以生成安全升级包;
计算所述安全升级包的第二校验信息并保存所述第二校验信息。
作为一种可选的实施方式,在本发明实施例第一方面中,所述方法还包括:
本发明实施例第二方面公开另一种汽车车载系统的升级方法,包括:
获取服务器传输的安全升级包;
从所述安全升级包中识别出对原始升级包进行签名时使用的第一私钥的私钥标识,以及对所述原始升级包进行加密时使用的第一密码的密码标识;所述第一私钥和所述第一密码是根据本次升级业务的业务类型确定出的;
根据所述第一私钥的私钥标识和所述第一密码的密码标识,从车载终端存储的密钥集中查找出与所述第一私钥对应的第一公钥以及与第一密码对应的第二密码;
利用所述第二密码对所述安全升级包进行解密,得到原始升级包;
利用所述第一公钥以及所述安全升级包中记录的原始包签名对所述原始升级包的第一校验信息进行验签,以判断所述原始包签名是否正确;所述原始包签名由所述第一私钥对所述第一校验信息进行签名得到,所述第一校验信息是在对所述原始升级包进行签名和加密之前计算得到的;
如果所述原始包签名正确,利用所述原始升级包对所述车载终端的车载系统进行升级。
作为一种可选的实施方式,在本发明实施例第二方面中,在所述车载终端利用所述原始升级包对所述车载终端的车载系统进行升级之前,所述方法还包括:
计算所述安全升级包的第三校验信息;
利用所述安全升级包的第三校验信息与所述安全升级包的第二校验信息进行对比,以判断所述安全升级包是否完整;所述安全升级包的第二校验信息是在生成所述安全升级包时计算得到的,并且由所述服务器传输至所述车载终端;
计算所述原始升级包的第四校验信息,并利用所述安全升级包中记录的所述原始升级包的第一校验信息进行对比,以判断对所述安全升级包的解密是否正确;
将所述密文包的文件长度与所述安全升级包中记录的所述原始升级包的文件长度进行对比,以及将所述目标车辆的车辆信息与所述安全升级包中包含的控制信息进行对比,以判断所述密文包的文件长度以及所述车辆信息是否正确;
在判断出所述安全升级包完整、对所述安全升级包的解密正确、所述原始升级包的签名正确、所述密文包的长度以及所述车辆信息正确时,执行所述利用所述原始升级包对车载终端的车载系统进行升级的步骤。
本发明实施例第三方面公开一种服务器,包括:
确定单元,用于确定与本次升级业务的业务类型对应的密钥集类型;
选取单元,用于从属于所述密钥集类型的密钥集中选取出第一私钥和第一密码;
打包单元,用于利用所述第一私钥和所述第一密码对原始升级包进行签名和加密,以得到安全升级包;
传输单元,用于将所述安全升级包传输至需要进行升级业务的目标车辆的车载终端,以供所述车载终端利用所述安全升级包对所述目标车辆的车载系统进行升级;
其中,所述密钥集类型包括所述相同密钥集或者所述不同密钥集;所述相同密钥集为多辆汽车共同拥有的密钥集合,所述不同密钥集为每辆汽车互不相同的密钥集合;服务器存储有所述相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;所述车载终端存储有所述相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码。
本发明实施例第四方面公开一种车载终端,包括:
获取单元,用于获取服务器传输的安全升级包;
识别单元,用于从所述安全升级包中识别出对原始升级包进行签名时使用的第一私钥的私钥标识,以及对所述原始升级包进行加密时使用的第一密码的密码标识;所述第一私钥和所述第一密码是根据本次升级业务的业务类型确定出的;
查找单元,用于根据所述第一私钥的私钥标识和所述第一密码的密码标识,从车载终端存储的密钥集中查找出与所述第一私钥对应的第一公钥以及与第一密码对应的第二密码;
解密单元,用于利用所述第二密码对所述安全升级包进行解密,得到原始升级包;
验签单元,用于利用所述第一公钥以及所述安全升级包中记录的原始包签名对所述原始升级包的第一校验信息进行验签,以判断所述原始包签名是否正确;所述原始包签名由所述第一私钥对所述第一校验信息进行签名得到,所述第一校验信息是在对所述原始升级包进行签名和加密之前计算得到的;
升级单元,用于在所述验签单元判断出所述原始包签名正确时,利用所述原始升级包对所述车载终端的车载系统进行升级。
作为一种可选的实施方式,在本发明实施例第四方面中,还包括:
第一判断单元,用于计算所述安全升级包的第三校验信息;以及,利用所述安全升级包的第三校验信息与所述安全升级包的第二校验信息进行对比,以判断所述安全升级包是否完整;所述安全升级包的第二校验信息是在生成所述安全升级包时计算得到的,由所述服务器传输至所述车载终端;
第二判断单元,用于计算所述原始升级包的第四校验信息,并利用所述安全升级包中记录的所述原始升级包的第一校验信息进行对比,以判断对所述安全升级包的解密是否正确;
第三判断单元,用于将所述密文包的文件长度与所述安全升级包中记录的所述原始升级包的文件长度进行对比,以及将所述目标车辆的车辆信息与所述安全升级包中包含的控制信息进行对比,以判断所述密文包的文件长度以及所述车辆信息是否正确;
所述升级单元,具体用于在所述第一判断单元判断出所述安全升级包完整、所述第二判断单元判断出对所述安全升级包的解密正确以及所述验签单元判断出所述原始升级包的签名正确、以及所述第三判断单元判断出所述密文包的长度以及所述车辆信息正确时,利用所述原始升级包对所述车载终端的车载系统进行升级。
本发明第五方面公开一种升级系统,包括本发明实施例第三方面公开的服务器以及本发明实施例第四方面公开的任一种车载终端。
本发明第六方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面或第二方面公开的任一项方法。
本发明实施例第七方面公开一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本发明实施例第一方面或第二方面公开的任一项方法。
与现有技术相比,本发明实施例具有以下有益效果:
在本发明实施例中,服务器和车载终端均维护有两种不同类型的密钥集。为升级业务分配密钥和密码时,根据不同的业务类型分配不同类型的密钥和密码,实现了业务层面上的安全权限分离设计,即使某个加密或者签名的密钥泄露,也只影响个别业务的升级,从而可以降低密钥泄露的危害程度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种汽车车载系统的升级方法的流程示意图;
图2是本发明实施例公开的一种服务器存储的密钥集示例;
图3是本发明实施例公开的另一种汽车车载系统的升级方法的流程示意图;
图4是图3中步骤206的一种具体实施方式的流程示意图;
图5是本发明实施例公开的一种服务器的结构示意图;
图6是本发明实施例公开的一种车载终端的结构示意图;
图7是本发明实施例公开的一种升级系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开了一种汽车车载系统的升级方法、系统、服务器及车载终端,能够降低密钥泄露的危害程度。以下分别进行详细说明。
为了更好地描述本发明实施例公开的汽车车载系统的升级方法、系统、服务器及车载终端,以下内容首先对密钥的配置进行介绍:服务器中存储有一定数量的私钥和密码,车载终端中存储有对应的公钥和密码,每组相互对应的私钥和公钥称为一组密钥对,每组密钥对以及密码都分别具有唯一的ID标识,每组密钥对和密码都可以对应一个具体的升级业务,当需要进行某个升级业务时,可以采用与该升级业务对应的密钥对和密码为该升级业务需要使用的升级包进行加密和签名。由于升级业务包括多种业务类型,相应地,也可以将对应于同一类型的升级业务的密钥对和密码组合成密钥集,从而得到了分属不同类型的多个密钥集。
具体的,上述的密钥集类型可以包括相同密钥集或者不同密钥集;其中,相同密钥集为多辆汽车共同拥有的密钥集合,不同密钥集为每辆汽车互不相同的密钥集合。服务器中可以存储有相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;车载终端存储有相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码。
请参阅图2,图2是本发明实施例公开的一种服务器存储的密钥集示例。图2中示出了两种不同类型的升级业务:业务1及业务2。业务1对应的密钥集类型为相同密钥集,业务2对应的密钥集为不同密钥集。相同密钥集中包含了多个业务升级对应的私钥和密码,图2所示的是业务1对应的私钥和密码所组成的一个相同密钥子集。不同密钥集中也包含了多个升级业务对应的私钥和密码,并且在相同的升级业务对应的私钥中,不同的汽车对应的私钥和密码并不相同。图2所示的是业务2对应的私钥和密码中,车辆1(VIN1)与车辆2(VIN2)分别对应的两个不同密钥子集。
从图2中可以进一步看出,每个私钥或密码都具有一个唯一的ID标识号,并且在不同密钥集中,每个密钥对或密码还对应一个车架号(Veichel Identification Number,VIN),用以表示该密钥对与该VIN码所标识的汽车对应。可以理解的是,当图2中“证书或密码”这一类别为“证书”时,表格中的内容为私钥的私钥标识,并且,一组对应的私钥和公钥的ID标识是相同的;当该类别为“密码”时,表格中的内容为密码的密码标识。此外,在图2中还示出了用于指示私钥对或密码是否被废弃的废弃标志位,图2中“0”表示私钥或密码未被废弃,“1”表示私钥或密码被废弃。当私钥或密码未被废弃时,该私钥可用于对升级包进行签名,密码可用于对升级包进行加密(即私钥或密码可用);当私钥或者密码被废弃时,该私钥不可继续用于对升级包进行签名,该密码不可继续用于对升级包进行加密(即私钥或密码不可用)。
需要说明的是,在本发明实施例中,车载终端中也存储有包括相同密钥集和不同密钥集的密钥集。但与图2中所示的密钥集不同的是,车载终端存储的不同密钥集中只包括与车载终端绑定的目标车辆所对应的不同密钥集。
在对本发明实施例适用的密钥的配置进行介绍之后,以下内容以升级业务为OTA升级为例,对本发明实施例公开的汽车车载系统的升级方法、系统、服务器及车载终端进行详细说明。
实施例一
请参阅图1,图1是本发明实施例公开的一种汽车车载系统的升级方法的流程示意图。其中,图1所描述的应用使用管理方法适用于云端服务器等可以为车载系统提供升级服务的服务器,本发明实施例不做限定。如图1所示,该汽车车载系统的升级方法可以包括以下步骤:
101、服务器确定OTA升级业务使用的密钥集类型为相同密钥集。
也就是说,服务器根据本次升级业务的类型确定对应的密钥集类型。如步骤101中的示例,OTA升级业务对应的密钥集类型可以为相同密钥集。
102、服务器从相同密钥集中选择出业务名称为OTA的密钥子集。
需要说明的是,在图1所示的方法中,以相同密钥集为例去描述汽车车载系统的升级方法,因此步骤102可以直接从相同密钥集中选取出与升级业务对应的密钥子集。而在另一些可能的实施例中,与升级业务的业务类型对应的密钥集可能为不同密钥集,那么服务器先获取需要进行升级业务的目标车辆的车架号;然后根据车架号获取与目标车辆对应的不同密钥子集,再从目标车辆对应的不同密钥子集中选取出与升级业务对应的密钥子集。
103、服务器从OTA密钥子集中选择出第一个没有被废弃的私钥和密码分别作为第一私钥和第一密码。
在本发明实施例中,假设第一私钥的私钥标识为ID1,第一密码的密码标识为ID2。
在本发明实施例中,执行上述的步骤102~步骤103,服务器从属于上述的密钥集类型的密钥集中选取出了第一私钥和第一密码。并且,服务器可以先从属于上述的密钥集类型的密钥集中选取出与升级业务对应的密钥子集,再一次判断升级业务对应的密钥子集中的私钥和密码是否可用,从而选择出第一个可用(即没有被废弃)的私钥和密码作为第一私钥和第一密码。
104、服务器计算原始升级包file1的文件长度,记为DataLen1,并计算原始升级包file1的摘要信息作为file1的第一校验信息,记为SHA256-1。
在本发明实施例中,服务器具体可以通过哈希算法(如SHA256)计算原始升级包file1的摘要信息作为file1的第一校验信息。
105、服务器利用标识为ID1的第一私钥对第一校验信息SHA256-1进行签名,得到原始包签名,记为SIGN。
106、服务器利用标识为ID2的第一密码对原始升级包file1进行加密,以得到密文包file2。
107、服务器将第一私钥的私钥标识为ID1、第一密码的密码标识为ID2、原始升级包file1的第一校验信息SHA256-1、原始包签名SIGN、原始升级包file1的文件长度DataLen1以及与目标车辆相关的控制信息进行组合,得到安全元数据。
108、服务器对安全元数据与密文包file2进行打包,生成安全升级包,记为file3。
在本发明实施例中,执行上述的步骤104~步骤108,服务器利用第一私钥和第一密码对原始升级包进行签名和加密,从而得到了安全升级包。此外,对安全元数据与密文包file2进行打包的方式具体可以为混淆打包。
109、服务器将安全升级包file3传输至需要进行升级业务的目标车辆的车载终端,以供车载终端利用安全升级包file3对目标车辆的车载系统进行升级。
在本发明实施例中,可以理解的是,车载终端在接收到服务器传输的安全升级包之后,可以利用与第一私钥对应的第一公钥对安全升级包进行验签,并且利用与第一密码对应的第二密码对安全升级包进行解密,以从安全升级包中还原出原始升级包,从而利用原始升级包对目标车辆的车载系统进行升级。
可见,在图1所描述的方法中,服务器可以根据不同的升级业务类型选取不同的私钥和密码对升级包进行签名和加密,从而实现了业务层面上的安全权限分离设计,即使某个加密或者签名的密钥泄露,也只影响个别业务的升级,从而可以降低密钥泄露的危害程度。
实施例二
请参阅图3,图3是本发明实施例公开的另一种汽车车载系统的升级方法的流程示意图。如图3所示,该汽车车载系统的升级方法可以包括:
201、车载终端获取服务器传输的安全升级包OTA-FILE3。
在本发明实施例中,作为一种可选的实施方式,车载终端获取服务器传输的安全升级包的具体实施方式可以为:
车载终端接收服务器下发的升级活动数据;其中,服务器可以在检测到存在更新需求时向车载终端下发上述的升级活动数据;具体的,存在更新需求可以包括:检测到车载终端上报的更新请求;或者,检测到当前时间为预设的更新发布时间;
车载终端对升级活动数据进行验签,如果验签通过,从升级活动数据中解析出安全升级包的下载策略;
车载终端按照上述的下载策略的指示下载安全升级包(以下记为OTA-FILE 3)。
执行上述的实施方式,可以先对更新活动数据进行验证,如果没有通过验证,那么该更新活动数据可以是攻击者伪装的非法数据,安全风险较高。可见,实施上述的实施方式,可以提高更新活动的安全性。
202、车载终端计算安全升级包的第三校验信息记为SHA256-3,并将第三校验信息SHA256-3与服务器在生成安全升级包file3之后计算出的第二校验信息SHA256-2进行对比,以判断下载到的安全升级包OTA-FILE3是否完整;如果是,执行步骤203;如果否,结束本流程。
在本发明实施例中,安全升级包的第二校验信息SHA256-2是在生成安全升级包时计算得到的,并且是由服务器传输至车载终端的。作为一种可选的实施方式,第二校验信息SHA256-2可以包含在服务器向车载终端发送的升级活动数据中。
由于SHA256-2是在服务器生成安全升级包file3之后计算得到的,而SHA256-3是车载终端在下载到安全升级包OTA-FILE3之后,对下载得到的安全升级包OTA-FILE3计算得到的,因此,对比SHA256-2以及SHA256-3,如果SHA256-2与SHA256-3相同,可以认为安全升级包是完整的;如果SHA256-2与SHA256-3不同,可以认为安全升级包不完整。在本发明实施例中,使用完整的安全升级包对车载系统进行升级,以提高升级后车载系统的稳定性。
203、车载终端从安全升级包OTA-FILE3中抽取出安全元数据以及密文包OTA-FILE2。
在本发明实施例中,从安全升级包OTA-FILE3中抽取出的安全元数据包含生成安全升级包时所使用的第一私钥的私钥标识ID1以及第一密码的密码标识ID2、原始升级包file1的第一校验信息SHA256-1、原始包签名SIGN、以及与需要进行升级业务的目标车辆相关的控制信息。
也就是说,车载终端可以安全升级包中识别出对原始升级包进行签名时使用的第一私钥的私钥标识,以及对原始升级包进行加密时使用的第一密码的密码标识。其中,第一私钥和第一密码是服务器根据本次升级业务的业务类型确定出的。
204、车载终端将计算得到密文包OTA-FIEL2的文件长度DataLen2与原始升级包的文件长度DataLen1进行对比,以及将目标车辆的车辆信息与上述安全元数据中包含的控制信息进行对比,以判断密文包OTA-FILE2的文件长度以及目标车辆的车辆信息是否正确;如果是,执行步骤205;如果否,结束本流程。
在本发明实施例中,如果密文包OTA-FILE2的文件长度DataLen2与原始升级包的文件长度DataLen1相同,可以判定密文包的文件长度正确。如果目标车辆的车辆信息与安全升级包中包含的控制信息相同,可以判断车辆信息正确。
205、车载终端根据ID1和ID2从车载终端存储的密钥集中查找出与第一私钥对应的公钥BLOB,以及与第一密码对应的密钥BLOB。
在本发明实施例中,BLOB(Binary Large Object)是密钥对和密码在存储时所使用的数据类型,第一私钥对应的第一公钥存储在公钥BLOB中,第一密码对应的第二密码存储在密钥BLOB中。此外,公钥BLOB和密钥BLOB都是经过TA(Trusted Application)加密的,在CA(Client Application)环境下不可用。因此,执行下述的步骤206。
206、车载终端将密文包OTA-FILE2、公钥BLOB、密钥BLOB、第一校验信息SHA256-1以及原始包签名SIGN通过CA环境发送至TA环境,在TA环境处理后返回验签和解密后得到的原始升级包,并且返回解密和签名是否正确的信息。
作为一种可选的实施方式,车载终端执行步骤206的方式可以一并参阅图4,如图4所示具体可以包括以下步骤:
2061、车载终端将公钥BLOB解密得到第一公钥,并将密钥BLOB进行解密得到第二密码。
2062、车载终端利用第二密码对密文包OTA-FIEL2进行解密,得到原始升级包OTA-FILE。
也就是说,利用第二密码对安全升级包进行解密,可以得到原始升级包。
2063、车载终端计算还原出的原始升级包的第四校验信息SHA256-4,并将第四校验信息与第一校验信息SHA256-1进行对比,以判断对安全升级包的解密是否正确,并返回解密是否正确的信息。
在本发明实施例中,如果SHA256-1与SHA256-4相同,可以判定对安全升级包的解密正确;如果SHA256-1与SHA256-4不同,可以判定对安全升级包的解密不正确。
2064、车载终端利用第一公钥以及上述的原始包签名SIGN对第一校验信息SHA256-1进行验签,以判断原始包签名SIGN是否正确,并返回签名是否正确的信息。
在本发明实施例中,验签的过程具体可以为利用第一公钥对原始包签名SIGN进行解密,对解密后得到的数据与第一校验信息SHA256-1进行对比;如果解密后得到的数据与第一校验信息SHA256-1相同,那么可以认为签名正确;如果不相同,那么可以认为签名不正确。
需要说明的是,图4所示的步骤在TA环境中执行,TA环境是一种可信执行环境,可以降低密钥和密码的泄露风险。
207、车载终端在判断出安全升级包的解密正确以及原始升级包的签名正确时,利用原始升级包对车载终端的车载系统进行升级。
可见,实施如图2所示的方法,车载终端利用对应的公钥和密码对下载得到的升级包进行验签和解密,在验签以及解密成功之后,再对车载系统进行升级。其中,公钥和密码是基于服务器选取的私钥和密码确定出的,而服务器是根据升级业务的业务类型确定的私钥和密码,从而实现了业务层面上的安全权限分离设计。进一步地,在图2所描述的方法中,还会验证升级包的完整性以及验证解密是否正确,从而可以进一步提高安全性。
实施例三
请参阅图5,图5是本发明实施例公开的一种服务器的结构示意图。如图5所示,该服务器可以包括:
确定单元401,用于确定与本次升级业务的业务类型对应的密钥集类型;其中,密钥集类型包括相同密钥集或者不同密钥集;相同密钥集为多辆汽车共同拥有的密钥集合,不同密钥集为每辆汽车互不相同的密钥集合;服务器存储有相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;车载终端存储有相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码;
选取单元402,用于从属于上述的密钥集类型的密钥集中选取出第一私钥和第一密码;
作为一种可选的实施方式,选取单元402具体可以用于从属于上述的密钥集类型的密钥集中选取出升级业务对应的密钥子集;以及,依次判断升级业务对应的密钥子集中的私钥和密码是否可用,以选取出升级业务对应的密钥子集中第一个可用的私钥和密码作为第一私钥和第一密码。
作为另一种可选的实施方式,选取单元402从属于上述的密钥集类型的密钥集中选取出升级业务对应的密钥子集的方式具体可以为:
如果密钥集类型为不同密钥集,选取单元402获取目标车辆的车架号;根据车架号获取目标车辆对应的不同密钥子集,并从目标车辆对应的不同密钥子集中选取出与升级业务对应的密钥子集;
如果对应的密钥集类型为相同密钥集,选取单元402直接从相同密钥集中选取出与升级业务对应的密钥子集。
以及,图5所示的服务器还可以包括:
打包单元403,用于利用第一私钥和第一密码对原始升级包进行签名和加密,以得到安全升级包;
作为一种可选的实施方式,打包单元403具体可以用于计算原始升级包的第一校验信息;利用第一私钥对第一校验信息进行签名,得到原始包签名;利用第一密码对原始升级包进行加密,得到密文包;对第一私钥的私钥标识,第一密码的密码标识,原始升级包的第一校验信息,原始包签名、原始升级包的文件长度以及与目标车辆相关的控制信息进行组合,以得到安全元数据;将安全元数据与密文包进行合并打包,以生成安全升级包;计算安全升级包的第二校验信息并保存第二校验信息;
传输单元404,用于将安全升级包传输至需要进行升级业务的目标车辆的车载终端,以供车载终端利用安全升级包对目标车辆的车载系统进行升级;
实施如图5所示的服务器,可以根据不同的升级业务类型选取不同的私钥和密码对升级包进行签名和加密,从而实现了业务层面上的安全权限分离设计,即使某个加密或者签名的密钥泄露,也只影响个别业务的升级,从而可以降低密钥泄露的危害程度。
实施例四
请参阅图6,图6是本发明实施例公开的一种车载终端的结构示意图。
如图6所示,该车载终端可以包括:
获取单元501,用于获取服务器传输的安全升级包;
识别单元502,用于从安全升级包中识别出对原始升级包进行签名时使用的第一私钥的私钥标识,以及对原始升级包进行加密时使用的第一密码的密码标识;第一私钥和第一密码是根据本次升级业务的业务类型确定出的;
查找单元503,用于根据第一私钥的私钥标识和第一密码的密码标识,从车载终端存储的密钥集中查找出与第一私钥对应的第一公钥以及与第一密码对应的第二密码;
解密单元504,用于利用第二密码对安全升级包进行解密,得到原始升级包;
验签单元505,用于利用第一公钥以及安全升级包中记录的原始包签名对原始升级包的第一校验信息进行验签,以判断原始包签名是否正确;原始包签名由第一私钥对第一校验信息进行签名得到,第一校验信息是在对原始升级包进行签名和加密之前计算得到的;
升级单元506,用于在验签单元判断出原始包签名正确时,利用原始升级包对车载终端的车载系统进行升级。
作为一种可选的实施方式,在升级单元506利用原始升级包对车载终端的车载系统进行升级之前,还可以先验证安全升级包是否完整、验证对安全升级包的解密是否正确、安全升级包中密文包的长度以及目标车辆的车辆信息与需要进行升级业务的车辆的信息是否相符。因此,图6所示的车载终端还可以包括:
第一判断单元507,用于计算安全升级包的第三校验信息;以及,利用安全升级包的第三校验信息与安全升级包的第二校验信息进行对比,以判断安全升级包是否完整;安全升级包的第二校验信息是在生成安全升级包时计算得到的,由服务器传输至车载终端;
第二判断单元508,用于计算原始升级包的第四校验信息,并利用安全升级包中记录的原始升级包的第一校验信息进行对比,以判断对安全升级包的解密是否正确;
第三判断单元509,用于将安全升级包中包含的密文包的文件长度与安全升级包中记录的原始升级包的文件长度进行对比,以及将目标车辆的车辆信息与安全升级包中包含的控制信息进行对比,以判断密文包的文件长度以及车辆信息是否正确。
相应地,上述的升级单元506,具体可以用于在第一判断单元507判断出安全升级包完整、第二判断单元5080判断出对安全升级包的解密正确以及验签单元505判断出原始升级包的签名正确、以及第三判断单元509判断出密文包的长度以及车辆信息正确时,利用原始升级包对车载终端的车载系统进行升级。
可见,实施如图6所示的车载终端,可以在对安全升级包进行验签以及解密成功之后,再对车载系统进行升级。其中,对安全升级包进行验签和解密时使用的公钥和密码是基于服务器选取的私钥和密码确定出的,而服务器是根据升级业务的业务类型确定的私钥和密码,从而实现了业务层面上的安全权限分离设计。进一步地,实施如图6所示的车载终端,还可以验证升级包的完整性以及验证解密是否正确,从而可以进一步提高安全性。
实施例六
请参阅图7,图7是本发明实施例公开的一种升级系统的结构示意图。
如图7所示,该升级系统可以包括括:
服务器601以及车载终端602;其中:
服务器601,用于确定与本次升级业务的业务类型对应的密钥集类型;以及,从属于上述的密钥集类型的密钥集中选取出第一私钥和第一密码;以及,利用第一私钥和第一密码对原始升级包进行签名和加密,以得到安全升级包;以及,将安全升级包传输至需要进行升级业务的目标车辆的车载终端;
车载终端602,用于根据从安全升级包中识别出的第一私钥的私钥标识和第一密码的密码标识从从载终端存储的密钥集中查找出与第一私钥对应的第一公钥以及与第一密码对应的第二密码;以及,利用第二密码对安全升级包进行解密,得到原始升级包;以及,利用第一公钥以及安全升级包中记录的原始包签名对原始升级包的第一校验信息进行验签,以判断原始包签名是否正确;以及,在验证出原始包签名正确时,利用原始升级包对车载终端的车载系统进行升级。
其中,密钥集类型包括相同密钥集或者不同密钥集;相同密钥集为多辆汽车共同拥有的密钥集合,不同密钥集为每辆汽车互不相同的密钥集合;服务器601存储有相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;车载终端602存储有相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码。
作为一种可选的实施方式,服务器601从属于上述的密钥集类型的密钥集中选取出第一私钥和第一密码的方式具体可以为:
服务器601从属于上述的密钥集类型的密钥集中选取出升级业务对应的密钥子集;以及,依次判断升级业务对应的密钥子集中的私钥和密码是否可用,以选取出升级业务对应的密钥子集中第一个可用的私钥和密码作为第一私钥和第一密码。
进一步可选的,服务器601从属于上述的密钥集类型的密钥集中选取出升级业务对应的密钥子集的方式具体可以为:
如果密钥集类型为不同密钥集,服务器601获取目标车辆的车架号;根据车架号获取目标车辆对应的不同密钥子集,并从目标车辆对应的不同密钥子集中选取出与升级业务对应的密钥子集;
如果对应的密钥集类型为相同密钥集,服务器601直接从相同密钥集中选取出与升级业务对应的密钥子集。
此外,作为另一种可选的实施方式,服务器601利用第一私钥和第一密码对原始升级包进行签名和加密,以得到安全升级包的方式具体可以为:
服务器601计算原始升级包的第一校验信息;利用第一私钥对第一校验信息进行签名,得到原始包签名;利用第一密码对原始升级包进行加密,得到密文包;对第一私钥的私钥标识,第一密码的密码标识,原始升级包的第一校验信息,原始包签名、原始升级包的文件长度以及与目标车辆相关的控制信息进行组合,以得到安全元数据;将安全元数据与密文包进行合并打包,以生成安全升级包;计算安全升级包的第二校验信息并保存第二校验信息;
相应地,车载终端602在判断出原始升级包的签名正确以及在利用原始升级包对车载终端的车载系统进行升级之前,还可以用于计算安全升级包的第三校验信息;以及,利用安全升级包的第三校验信息与安全升级包的第二校验信息进行对比,以判断安全升级包是否完整;以及,用于计算原始升级包的第四校验信息,并利用安全升级包中记录的原始升级包的第一校验信息进行对比,以判断对安全升级包的解密是否正确;以及,用于将安全升级包中包含的密文包的文件长度与安全升级包中记录的原始升级包的文件长度进行对比,以及将目标车辆的车辆信息与安全升级包中包含的控制信息进行对比,以判断密文包的文件长度以及车辆信息是否正确;
车载终端602具体可以在判断出安全升级包完整、对安全升级包的解密正确、原始升级包的签名正确、以及密文包的长度和车辆信息正确时,利用原始升级包对车载终端的车载系统进行升级。
本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行图1或图3所示的任一种汽车车载系统的升级方法。
本发明实施例公开一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行图1或图3所示的任一种汽车车载系统的升级方法。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定特征、结构或特性可以以任意适合的方式结合在一个或多个实施例中。本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例上述方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的一种汽车车载系统的升级方法、系统、服务器及车载终端进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种汽车车载系统的升级方法,其特征在于,包括:
确定与本次升级业务的业务类型对应的密钥集类型;
从属于所述密钥集类型的密钥集中确定出密钥子集,从所述密钥子集中选取出第一私钥和第一密码;
利用所述第一私钥和所述第一密码对原始升级包进行签名和加密,以得到安全升级包;
将所述安全升级包传输至需要进行升级业务的目标车辆的车载终端,以供所述车载终端利用所述安全升级包对所述目标车辆的车载系统进行升级;
其中,所述密钥集类型包括相同密钥集或者不同密钥集;所述相同密钥集为多辆汽车共同拥有的密钥集合,所述不同密钥集为每辆汽车互不相同的密钥集合;服务器存储有所述相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;所述车载终端存储有所述相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码;
所述利用所述第一私钥和所述第一密码对原始升级包进行签名和加密,以得到安全升级包,包括:
计算原始升级包的第一校验信息;
利用所述第一私钥对所述第一校验信息进行签名,得到原始包签名;
利用所述第一密码对所述原始升级包进行加密,得到密文包;
对所述第一私钥的私钥标识,所述第一密码的密码标识,所述原始升级包的第一校验信息,所述原始包签名、所述原始升级包的文件长度以及与所述目标车辆相关的控制信息进行组合,以得到安全元数据;
将所述安全元数据与所述密文包进行合并打包,以生成安全升级包。
2.根据权利要求1所述的方法,其特征在于,所述从属于所述密钥集类型的密钥集中选取出第一私钥和第一密码,包括:
从属于所述密钥集类型的密钥集中选取出所述升级业务对应的密钥子集;
依次判断所述升级业务对应的密钥子集中的私钥和密码是否可用,以选取出所述升级业务对应的密钥子集中第一个可用的私钥和密码作为第一私钥和第一密码。
3.根据权利要求2所述的方法,其特征在于,所述从属于所述对应的密钥集类型的密钥集中选取出所述升级业务对应的密钥子集,包括:
如果所述密钥集类型为不同密钥集,获取所述目标车辆的车架号;根据所述车架号获取所述目标车辆对应的不同密钥子集,并从所述目标车辆对应的不同密钥子集中选取出与所述升级业务对应的密钥子集;
如果所述对应的密钥集类型为相同密钥集,直接从相同密钥集中选取出与所述升级业务对应的密钥子集。
4.根据权利要求1所述的方法,其特征在于,还包括:
计算所述安全升级包的第二校验信息并保存所述第二校验信息并传输至所述车载终端。
5.一种汽车车载系统的升级方法,其特征在于,包括:
获取服务器传输的安全升级包,从所述安全升级包中抽取出密文包;
从所述安全升级包中识别出对原始升级包进行签名时使用的第一私钥的私钥标识,以及对所述原始升级包进行加密时使用的第一密码的密码标识;所述第一私钥和所述第一密码是根据本次升级业务的业务类型确定出的,所述第一私钥和所述第一密码是从密钥子集中确定出的,所述密钥子集是从与所述本次升级业务的业务类型对应的密钥集类型的密钥集中确定出的;
根据所述第一私钥的私钥标识和所述第一密码的密码标识,从车载终端存储的密钥集中查找出与所述第一私钥对应的第一公钥以及与第一密码对应的第二密码;
利用所述第二密码对所述密文包进行解密,得到原始升级包;
利用所述第一公钥以及所述安全升级包中记录的原始包签名对所述原始升级包的第一校验信息进行验签,以判断所述原始包签名是否正确;所述原始包签名由所述第一私钥对所述第一校验信息进行签名得到,所述第一校验信息是在对所述原始升级包进行签名和加密之前计算得到的;
如果所述原始包签名正确,利用所述原始升级包对所述车载终端的车载系统进行升级;
其中,所述密钥集类型包括相同密钥集或者不同密钥集;所述相同密钥集为多辆汽车共同拥有的密钥集合,所述不同密钥集为每辆汽车互不相同的密钥集合;服务器存储有所述相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;所述车载终端存储有所述相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码。
6.根据权利要求5所述的方法,其特征在于,在所述车载终端利用所述原始升级包对所述车载终端的车载系统进行升级之前,所述方法还包括:
计算所述安全升级包的第三校验信息;
利用所述安全升级包的第三校验信息与所述安全升级包的第二校验信息进行对比,以判断所述安全升级包是否完整;所述安全升级包的第二校验信息是在生成所述安全升级包时计算得到的,并且由所述服务器传输至所述车载终端;
计算所述原始升级包的第四校验信息,并利用所述安全升级包中记录的所述原始升级包的第一校验信息进行对比,以判断对所述安全升级包的解密是否正确;
将所述密文包的文件长度与所述安全升级包中记录的所述原始升级包的文件长度进行对比,以及将目标车辆的车辆信息与所述安全升级包中包含的控制信息进行对比,以判断所述密文包的文件长度以及所述车辆信息是否正确;
在判断出所述安全升级包完整、对所述安全升级包的解密正确、所述原始升级包的签名正确、所述密文包的长度以及所述车辆信息正确时,执行所述利用所述原始升级包对车载终端的车载系统进行升级的步骤。
7.一种服务器,其特征在于,包括:
确定单元,用于确定与本次升级业务的业务类型对应的密钥集类型;
选取单元,用于从属于所述密钥集类型的密钥集中确定出密钥子集,从所述密钥子集中选取出第一私钥和第一密码;
打包单元,用于利用所述第一私钥和所述第一密码对原始升级包进行签名和加密,以得到安全升级包;
传输单元,用于将所述安全升级包传输至需要进行升级业务的目标车辆的车载终端,以供所述车载终端利用所述安全升级包对所述目标车辆的车载系统进行升级;
其中,所述密钥集类型包括相同密钥集或者不同密钥集;所述相同密钥集为多辆汽车共同拥有的密钥集合,所述不同密钥集为每辆汽车互不相同的密钥集合;服务器存储有所述相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;所述车载终端存储有所述相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码;
所述打包单元,具体用于计算原始升级包的第一校验信息;利用所述第一私钥对所述第一校验信息进行签名,得到原始包签名;利用所述第一密码对所述原始升级包进行加密,得到密文包;对所述第一私钥的私钥标识,所述第一密码的密码标识,所述原始升级包的第一校验信息,所述原始包签名、所述原始升级包的文件长度以及与所述目标车辆相关的控制信息进行组合,以得到安全元数据;将所述安全元数据与所述密文包进行合并打包,以生成安全升级包。
8.一种车载终端,其特征在于,包括:
获取单元,用于获取服务器传输的安全升级包,从所述安全升级包中抽取出密文包;
识别单元,用于从所述安全升级包中识别出对原始升级包进行签名时使用的第一私钥的私钥标识,以及对所述原始升级包进行加密时使用的第一密码的密码标识;所述第一私钥和所述第一密码是根据本次升级业务的业务类型确定出的,所述第一私钥和所述第一密码是从密钥子集中确定出的,所述密钥子集是从与所述本次升级业务的业务类型对应的密钥集类型的密钥集中确定出的;
查找单元,用于根据所述第一私钥的私钥标识和所述第一密码的密码标识,从车载终端存储的密钥集中查找出与所述第一私钥对应的第一公钥以及与第一密码对应的第二密码;
解密单元,用于利用所述第二密码对所述密文包进行解密,得到原始升级包;
验签单元,用于利用所述第一公钥以及所述安全升级包中记录的原始包签名对所述原始升级包的第一校验信息进行验签,以判断所述原始包签名是否正确;所述原始包签名由所述第一私钥对所述第一校验信息进行签名得到,所述第一校验信息是在对所述原始升级包进行签名和加密之前计算得到的;
升级单元,用于在所述验签单元判断出所述原始包签名正确时,利用所述原始升级包对所述车载终端的车载系统进行升级;
其中,所述密钥集类型包括相同密钥集或者不同密钥集;所述相同密钥集为多辆汽车共同拥有的密钥集合,所述不同密钥集为每辆汽车互不相同的密钥集合;服务器存储有所述相同密钥集中的私钥和密码以及各辆汽车对应的不同密钥集中的私钥和密码;所述车载终端存储有所述相同密钥集中的公钥和密码以及与目标车辆对应的不同密钥集中的公钥和密码。
9.根据权利要求8所述的车载终端,其特征在于,还包括:
第一判断单元,用于计算所述安全升级包的第三校验信息;以及,利用所述安全升级包的第三校验信息与所述安全升级包的第二校验信息进行对比,以判断所述安全升级包是否完整;所述安全升级包的第二校验信息是在生成所述安全升级包时计算得到的,由所述服务器传输至所述车载终端;
第二判断单元,用于计算所述原始升级包的第四校验信息,并利用所述安全升级包中记录的所述原始升级包的第一校验信息进行对比,以判断对所述安全升级包的解密是否正确;
第三判断单元,用于将所述密文包的文件长度与所述安全升级包中记录的所述原始升级包的文件长度进行对比,以及将目标车辆的车辆信息与所述安全升级包中包含的控制信息进行对比,以判断所述密文包的文件长度以及所述车辆信息是否正确;
所述升级单元,具体用于在所述第一判断单元判断出所述安全升级包完整、所述第二判断单元判断出对所述安全升级包的解密正确以及所述验签单元判断出所述原始升级包的签名正确、以及所述第三判断单元判断出所述密文包的长度以及所述车辆信息正确时,利用所述原始升级包对所述车载终端的车载系统进行升级。
10.一种升级系统,其特征在于,包括:如权利要求7所述的服务器,以及如权利要求8或9任一项所述的车载终端。
CN201910587994.4A 2019-07-02 2019-07-02 汽车车载系统的升级方法、升级系统、服务器及车载终端 Active CN110225063B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910587994.4A CN110225063B (zh) 2019-07-02 2019-07-02 汽车车载系统的升级方法、升级系统、服务器及车载终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910587994.4A CN110225063B (zh) 2019-07-02 2019-07-02 汽车车载系统的升级方法、升级系统、服务器及车载终端

Publications (2)

Publication Number Publication Date
CN110225063A CN110225063A (zh) 2019-09-10
CN110225063B true CN110225063B (zh) 2021-09-03

Family

ID=67815825

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910587994.4A Active CN110225063B (zh) 2019-07-02 2019-07-02 汽车车载系统的升级方法、升级系统、服务器及车载终端

Country Status (1)

Country Link
CN (1) CN110225063B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110727455A (zh) * 2019-09-12 2020-01-24 深圳市元征科技股份有限公司 软件远程升级方法及相关设备
CN110621014B (zh) * 2019-09-18 2022-06-17 深圳市元征科技股份有限公司 一种车载设备及其程序升级方法、服务器
CN110780900A (zh) * 2019-10-25 2020-02-11 宁波三星医疗电气股份有限公司 电力采集终端升级方法、系统和电力采集终端
CN113138775B (zh) * 2020-01-20 2022-11-18 上海交通大学 车载诊断系统固件保护方法及系统
CN113162959B (zh) * 2020-01-23 2023-06-30 华为技术有限公司 车载设备的升级方法和装置
EP3893108B1 (en) 2020-02-14 2023-04-05 Huawei Technologies Co., Ltd. Vehicle-mounted device upgrading method, and related apparatus
CN111356114B (zh) * 2020-02-19 2023-06-20 阿波罗智联(北京)科技有限公司 车内电子控制单元升级方法、装置、设备和车辆系统
CN111723365B (zh) * 2020-06-30 2023-03-17 亿咖通(湖北)技术有限公司 一种车载信息娱乐系统中安装应用程序的方法和设备
CN112182621A (zh) * 2020-09-30 2021-01-05 银盛支付服务股份有限公司 系统数据安全交互的方法、装置、计算机设备及存储介质
CN112732293A (zh) * 2020-12-31 2021-04-30 青岛海信电子产业控股股份有限公司 一种车载系统的升级方法和车载终端
CN112947958A (zh) * 2021-01-28 2021-06-11 浙江合众新能源汽车有限公司 一种汽车软件ota升级系统
CN112882750A (zh) * 2021-03-23 2021-06-01 东软睿驰汽车技术(沈阳)有限公司 Ota升级包的处理方法、装置和电子设备
CN113254047A (zh) * 2021-06-16 2021-08-13 前海七剑科技(深圳)有限公司 车辆的配置升级方法、车载终端、服务器、车辆及介质
CN113434181B (zh) * 2021-08-26 2022-01-04 新石器慧通(北京)科技有限公司 软件升级方法、装置、电子设备及存储介质
CN113806749B (zh) * 2021-09-23 2024-04-05 航天信息股份有限公司 一种升级方法、装置及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106648626A (zh) * 2016-11-29 2017-05-10 郑州信大捷安信息技术股份有限公司 一种车辆安全远程升级系统及升级方法
CN106850311A (zh) * 2017-03-03 2017-06-13 上海蔚来汽车有限公司 用于固件升级的数据安全传输系统及方法
CN107919955A (zh) * 2017-12-28 2018-04-17 北京奇虎科技有限公司 一种车辆网络安全认证方法、系统、车辆、装置及介质
CN108111507A (zh) * 2017-12-19 2018-06-01 恒宝股份有限公司 一种设备远程升级的方法及系统
CN108196867A (zh) * 2018-03-08 2018-06-22 深圳市文鼎创数据科技有限公司 设备的固件升级装置、设备及其固件升级方法
CN108304722A (zh) * 2017-12-21 2018-07-20 广州小鹏汽车科技有限公司 一种软件安装包及其生成方法、升级方法和系统
CN108491215A (zh) * 2018-02-11 2018-09-04 苏州光之翼智能科技有限公司 一种无人机固件保护系统
CN109495307A (zh) * 2018-11-27 2019-03-19 北京车和家信息技术有限公司 系统升级方法、ota升级包加密方法、终端设备及车辆
CN109787774A (zh) * 2019-01-15 2019-05-21 浙江吉利汽车研究院有限公司 基于数字签名校验的升级下载方法、装置、服务器及终端

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106648626A (zh) * 2016-11-29 2017-05-10 郑州信大捷安信息技术股份有限公司 一种车辆安全远程升级系统及升级方法
CN106850311A (zh) * 2017-03-03 2017-06-13 上海蔚来汽车有限公司 用于固件升级的数据安全传输系统及方法
CN108111507A (zh) * 2017-12-19 2018-06-01 恒宝股份有限公司 一种设备远程升级的方法及系统
CN108304722A (zh) * 2017-12-21 2018-07-20 广州小鹏汽车科技有限公司 一种软件安装包及其生成方法、升级方法和系统
CN107919955A (zh) * 2017-12-28 2018-04-17 北京奇虎科技有限公司 一种车辆网络安全认证方法、系统、车辆、装置及介质
CN108491215A (zh) * 2018-02-11 2018-09-04 苏州光之翼智能科技有限公司 一种无人机固件保护系统
CN108196867A (zh) * 2018-03-08 2018-06-22 深圳市文鼎创数据科技有限公司 设备的固件升级装置、设备及其固件升级方法
CN109495307A (zh) * 2018-11-27 2019-03-19 北京车和家信息技术有限公司 系统升级方法、ota升级包加密方法、终端设备及车辆
CN109787774A (zh) * 2019-01-15 2019-05-21 浙江吉利汽车研究院有限公司 基于数字签名校验的升级下载方法、装置、服务器及终端

Also Published As

Publication number Publication date
CN110225063A (zh) 2019-09-10

Similar Documents

Publication Publication Date Title
CN110225063B (zh) 汽车车载系统的升级方法、升级系统、服务器及车载终端
CN109479000B (zh) 再利用系统、密钥生成装置、数据安全装置、车载计算机、再利用方法以及存储介质
US8856536B2 (en) Method and apparatus for secure firmware download using diagnostic link connector (DLC) and OnStar system
CN110378105B (zh) 安全升级方法、系统、服务器及车载终端
US8966248B2 (en) Secure software file transfer systems and methods for vehicle control modules
CN109951277B (zh) 虚拟钥匙绑定方法及系统
US11356425B2 (en) Techniques for improving security of encrypted vehicle software updates
EP1712992A1 (en) Updating of data instructions
CN111510485A (zh) 一种ota升级包下载方法、装置、车辆端以及服务器
CN110570569B (zh) 虚拟钥匙配置信息的激活方法、移动终端及服务器
CN111666564B (zh) 应用程序安全启动方法、装置、计算机设备和存储介质
CN111565182B (zh) 一种车辆诊断方法、装置及存储介质
CN114637987B (zh) 基于平台验证的安全芯片固件下载方法及系统
CN113609213A (zh) 设备密钥的同步方法、系统、设备和存储介质
CN115643564A (zh) 汽车安全的fota升级方法、装置、设备及存储介质
CN115242397A (zh) 用于车辆euc的ota升级安全验证方法及可读存储介质
CN116136911A (zh) 一种数据访问方法及装置
CN113055181A (zh) Ota文件安全处理方法、装置及系统
US11743055B2 (en) Storing data on target data processing devices
CN108242997B (zh) 安全通信的方法与设备
CN109104393B (zh) 一种身份认证的方法、装置和系统
CN112929871A (zh) Ota升级包的获取方法、电子设备以及存储介质
CN111385099A (zh) 车载智能硬件的安全认证方法及装置
CN115174577B (zh) 一种资源访问方法、装置、设备及存储介质
US20240086170A1 (en) Software update system and software update method

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