基于数字签名校验的升级下载方法、装置、服务器及终端与流程

文档序号:17725463发布日期:2019-05-22 02:28阅读:214来源:国知局
基于数字签名校验的升级下载方法、装置、服务器及终端与流程

本发明涉及互联网通信技术领域,尤其涉及一种基于数字签名校验的升级下载方法、装置、服务器及终端。



背景技术:

ota(over-the-air,空中下载)技术是通过移动通信的空中接口对数据及应用进行远程管理的技术,被广泛应用于升级下载等业务。例如,带有ota功能的汽车可以通过互联网对汽车ecu(electroniccontrolunit,电子控制单元)进行在线升级,实现ecu性能优化升级。

目前,在基于ota的升级下载业务的处理过程中,常常需要通过对升级处理过程中传输的信息进行数字签名校验以避免信息篡改等问题。具体的,现有的基于数字签名校验的升级下载方法主要可以包括:终端向控制服务器发送升级包查询请求;控制服务器向终端返回需要升级的升级包的版本信息、下载地址、以及数字签名(所述数字签名通过私钥对相应的校验信息进行加密得到);终端向相应的ota服务器请求下载升级包;ota服务器向终端提供升级包;终端基于公钥和获取的升级包的信息对数字签名进行校验处理,如果校验通过,就进行升级处理。上述升级下载处理过程中数字签名的生成与校验需要相应的主密钥对,当大量终端请求升级下载处理时,如果共享相同的升级包主密钥对,会导致厂家难以针对外部私自对终端的换件、刷写等行为进行管控。如果为每个终端生成专用的主密钥对以进行数字签名的生成与校验,由于终端数量的庞大,会导致控制服务器管理维护成本高,系统负担大。因此,需要提供更可靠或更有效的方案。



技术实现要素:

本发明提供了一种基于数字签名校验的升级下载方法、装置、服务器及终端,可以保证每个终端的每个升级包具有唯一数字签名,便于厂家针对外部私自对终端的换件、刷写等行为进行管控,同时,降低控制服务器的维护管理成本。

第一方面,本发明提供了一种基于数字签名校验的升级下载方法,所述方法包括:

终端向控制服务器发送升级包查询请求;

控制服务器基于所述终端所请求的升级包的关键信息生成第一校验信息,向签名服务器发送数字签名请求,所述数字签名请求包括所述第一校验信息和所述终端的标识信息;

签名服务器利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理,将加密后的校验信息作为所述升级包的数字签名,将所述数字签名发送给所述控制服务器;

控制服务器向所述终端发送查询应答信息,所述查询应答信息包括所述升级包的关键信息、数字签名和下载地址;

终端基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理,如校验通过,基于所述下载地址向空中下载ota服务器发送升级包下载请求;

ota服务器向所述终端发送升级包。

第二方面,本发明提供了一种基于数字签名校验的升级下载方法,所述方法包括:

接收终端发送的升级包查询请求;

基于所述终端所请求的升级包的关键信息生成第一校验信息;

向签名服务器发送包括所述第一校验信息和所述终端的标识信息的数字签名请求,以使所述签名服务器利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理得到所述升级包的数字签名;

接收所述签名服务器发送的所述升级包的数字签名;

向所述终端发送包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,以使所述终端基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理,以及当校验通过时,基于所述下载地址从空中下载ota服务器获取升级包。

第三方面,本发明提供了一种基于数字签名校验的升级下载方法,所述方法包括:

向控制服务器发送升级包查询请求;

接收控制服务器发送的包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,其中,所述数字签名包括控制服务器从签名服务器处获取的利用终端的私钥对第一校验信息进行加密处理后得到的校验信息,所述第一校验信息由所述控制服务器基于终端所请求的升级包的关键信息生成,所述终端的私钥由签名服务器利用终端的标识信息所对应的主私钥和所述标识信息生成;

基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理;

如校验通过,基于所述下载地址向空中下载ota服务器发送升级包下载请求;

接收ota服务器发送的升级包。

第四方面提供了一种基于数字签名校验的升级下载装置,所述装置包括:

升级包查询请求接收模块,用于接收终端发送的升级包查询请求;

校验信息生成模块,用于基于所述终端所请求的升级包的关键信息生成第一校验信息;

数字签名请求发送模块,用于向签名服务器发送包括所述第一校验信息和所述终端的标识信息的数字签名请求,以使所述签名服务器利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理得到所述升级包的数字签名;

数字签名接收模块,用于接收所述签名服务器发送的所述升级包的数字签名;

查询应答信息发送模块,用于向所述终端发送包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,以使所述终端基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理,以及当校验通过时,基于所述下载地址从空中下载ota服务器获取升级包。

第五方面提供了一种基于数字签名校验的升级下载装置,所述装置包括:

升级包查询请求发送模块,用于向控制服务器发送升级包查询请求;

查询应答信息接收模块,用于接收控制服务器发送的包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,其中,所述数字签名包括控制服务器从签名服务器处获取的利用终端的私钥对第一校验信息进行加密处理后得到的校验信息,所述第一校验信息由所述控制服务器基于终端所请求的升级包的关键信息生成,所述终端的私钥由签名服务器利用终端的标识信息所对应的主私钥和所述标识信息生成;

第一校验处理模块,用于基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理;

升级包下载请求发送模块,用于如校验通过,基于所述下载地址向空中下载ota服务器发送升级包下载请求;

升级包接收模块,用于接收ota服务器发送的升级包。

第六方面提供了一种基于数字签名校验的升级下载系统,所述系统包括:

终端,控制服务器、签名服务器和空中下载ota服务器;

所述终端,用于向控制服务器发送升级包查询请求;以及用于基于公钥和升级包的关键信息对所述数字签名进行校验处理,如校验通过,基于所述下载地址向ota服务器发送升级包下载请求;

所述控制服务器,用于基于所述终端所请求的升级包的关键信息生成第一校验信息,向所述签名服务器发送数字签名请求,所述数字签名请求包括所述第一校验信息和所述终端的标识信息;以及用于向所述终端发送查询应答信息,所述查询应答信息包括所述升级包的关键信息、数字签名和下载地址;

所述签名服务器,用于利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理,将加密后的校验信息作为所述升级包的数字签名,将所述数字签名发送给所述控制服务器;

所述ota服务器,用于向所述终端发送升级包。

第七方面提供了一种基于数字签名校验的升级下载服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第二方面所述的基于数字签名校验的升级下载方法。

第八方面提供了一种基于数字签名校验的升级下载终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第三方面所述的基于数字签名校验的升级下载方法。

本发明提供的基于数字签名校验的升级下载方法、装置、服务器及终端,具有如下技术效果:

本发明由签名服务器生成升级包的数字签名,避免了控制服务器维护数字签名生成与校验所需的主密钥对,降低控制服务器的维护管理成本。且将每个升级包的关键信息作为校验信息,并为每个终端配置主密钥对,实现数字签名的生成和校验,保证每个终端的每个升级包具有唯一数字签名,便于厂家针对外部私自对终端的换件、刷写等行为进行管控。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。

图1是本发明实施例提供的一种升级下载系统的示意图;

图2是本发明实施例提供的一种基于数字签名校验的升级下载方法的流程示意图;

图3是本发明实施例提供的一种终端基于所述关键信息和与所述私钥相对应的公钥对所述数字签名进行校验的流程示意图;

图4是本发明实施例提供的另一种基于数字签名校验的升级下载方法的流程示意图;

图5是本发明实施例提供的另一种基于数字签名校验的升级下载方法的流程示意图;

图6是本发明实施例提供的一种基于数字签名校验的升级下载方法的流程示意图;

图7是本发明实施例提供的另一种基于数字签名校验的升级下载方法的流程示意图;

图8是本发明实施例提供的一种基于数字签名校验的升级下载装置的结构示意图;

图9是本发明实施例提供的另一种基于数字签名校验的升级下载装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

请参阅图1,图1是本发明实施例提供的一种升级下载系统的示意图,如图1所示,该升级下载系统可以包括终端01、控制服务器02、签名服务器03和ota服务器04。

具体的,终端01可以包括车载终端、智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备等类型的实体设备,也可以包括运行于实体设备中的软体,例如应用程序、ecu(electroniccontrolunit,电子控制单元)等。

具体的,所述控制服务器02可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。控制服务器02可以包括有网络通信单元、处理器和存储器等等。具体的,所述控制服务器02可以为上述终端01提供后台控制服务,例如升级控制服务。

具体的,所述签名服务器03可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。签名服务器03可以包括有网络通信单元、处理器和存储器等等。例如,所述签名服务器03可以ibe(identity-basedencryption,基于身份的加密)服务器。具体的,所述签名服务器03可以用于生成升级下载处理过程中的主密钥对以及数据签名。

具体的,所述ota服务器04可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。ota服务器04可以为上述终端01提供下载升级服务。

以下介绍本发明基于数字签名校验的升级下载方法,图2是本发明实施例提供的一种基于数字签名校验的升级下载方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,所述方法可以包括:

s201:终端向控制服务器发送升级包查询请求。

在实际应用中,控制服务器可以对应多个终端,当根据业务需求需要终端进行升级时,控制服务器往往会对多个终端发送升级包下载控制指令,以便终端进行升级包的下载,相应的,终端可以向控制服务器发送升级包查询请求,以便知道需要下载的升级包的相关信息。

另外,终端向控制服务器发送的升级包查询请求可以包括终端的当前版本信息,以便控制服务器根据该当前版本信息确定升级版本信息,进而确定相应的升级包。

s203:控制服务器基于所述终端所请求的升级包的关键信息生成第一校验信息。

本说明书实施例中,控制服务器在收到终端的升级包查询请求之后,可以基于所述终端所请求的升级包的关键信息生成第一校验信息,具体的,可以确定该终端所请求的升级包的关键信息,基于预设算法将所述关键信息转换成第一校验信息。具体的,所述升级包的关键信息可以包括升级包的基本信息,例如升级包的版本信息、刷写地址信息、程序数据、旧版本信息、旧程序数据、基于程序数据生成的哈希值、基于旧程序数据生成的哈希值等等。

本说明书实施例中,所述预设算法可以包括但不限于哈希算法。

s205:控制服务器向签名服务器发送数字签名请求,所述数字签名请求包括所述第一校验信息和所述终端的标识信息。

本说明书实施例中,所述终端的标识信息可以用于作为不同需要进行升级下载处理的终端之间的区分信息,以汽车上ecu(终端)为例,所述标识信息可以包括:车型,车辆识别号,ecu类型,ecu识别号等。

s207:签名服务器利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理,将加密后的校验信息作为所述升级包的数字签名。

在实际应用中,签名服务器可以为每一终端生成主密钥对,该主密钥对与每一终端的标识信息一一对应,主密钥对可以包括主私钥和主公钥;其中,所述主公钥可以发送给控制服务器,由控制服务器发送给相应的终端;所述主私钥可以存储在签名服务器本地。

具体的,本说明书实施例中,可以包括但不限于采用标识密码算法为每个需要升级的终端生成主密钥对。

具体的,签名服务器在接收到控制服务器发送的数字签名请求之后,可以根据所述终端的标识信息确定主私钥,利用该终端的标识信息所对应的主私钥和标识信息生成该终端的私钥;然后,利用该私钥对第一校验信息进行加密处理,得到加密后的校验信息,所述加密后的校验信息可以作为所述升级包的数值签名。

本说明书实施例中,当遇到密钥泄露等风险事件时,可以由签名服务器生成新的主密钥对,并将主公钥发送给控制服务器,控制服务器向终端更新主公钥,终端根据更新的主公钥和终端标识信息就能生成新的公钥,快速解决密钥泄露问题,上述应对密钥泄露的风险事件处理过程中,控制服务器只需向终端发送主公钥,无需进行主密钥对的生成,可以在短时间大批量的进行主公钥更新,节省密钥管理的大量开销,且有效提升了密钥泄露风险事件的安全应对能力。

在一些实施例中,终端的标识信息可以包括时间信息。具体的,所述时间信息与升级更新频率相对应,结合实际应用中升级更新频率设置所述时间信息,例如某一ecu每月升级一次,相应的,时间信息可以包括年月。

相应的,终端利用所述主公钥和所述标识信息生成与所述私钥相对应的公钥可以包括:

确定所述标识信息中的时间信息所对应的升级更新时间间隔;

每隔所述升级更新时间间隔利用所述主公钥和当前的标识信息生成并更新与所述私钥相对应的公钥。

具体的,所述升级更新时间间隔与所述升级更新频率相对应。

本说明书实施例中,通过在标识信息中设置有与升级更新频率相对应的时间信息,可以实现终端按照时间信息所对应的升级更新频率进行终端的自动公钥更新,无需控制服务器介入,灵活度高。

s209:签名服务器将所述数字签名发送给所述控制服务器。

本说明书实施例中,在步骤s207签名服务器得到升级包的数字签名之后,签名服务器可以将该数字签名发送给控制服务器,以便后续基于对该数字签名的校验,实现对升级包关键信息的校验。

s211:控制服务器向所述终端发送查询应答信息,所述查询应答信息包括所述升级包的关键信息、数字签名和下载地址。

本说明书实施例中,在控制服务器接收到签名服务器发送的数值签名之后,可以向终端发送包括升级包的关键信息、数字签名和下载地址的查询应答信息。

s213:终端基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理。

在一些具体的实施例中,如图3所示,所述终端基于所述关键信息和与所述私钥相对应的公钥对所述数字签名进行校验可以包括:

s301:终端利用与所述私钥相对应的公钥对所述数字签名进行解密处理,得到解密后的校验信息。

s303:终端基于预设算法将所述关键信息转换成第二校验信息。

s305:终端校验所述解密后的校验信息是否与所述第二校验信息一致。

本说明书实施例中,当校验的结果为解密后的校验信息与所述第二校验信息一致时,校验通过;反之,校验不通过,即控制服务器发送给终端的查询应答信息存在被篡改等问题。

本说明书实施例中,通过对关键信息的校验信息的校验可以保证终端获取准确的升级包信息。

s215:如校验通过,终端基于所述下载地址向ota服务器发送升级包下载请求。

本说明书实施例中,终端可以向域名解析服务器查询升级包下载地址中的ota域名的ip(internetprotocol,网际协议)地址信息;终端在获取域名解析服务器返回的ota域名的ip地址信息后,连接该ip地址信息所对应的ota服务器,进而向该ota服务器发送升级包下载请求,从该ota服务器获取所述下载地址所对应的升级包。

s217:ota服务器向所述终端发送升级包。

本说明书实施例中,ota服务器在接收到终端发送的升级包下载请求之后,可以向该终端返回相应的升级包,以便终端基于该升级包进行升级操作。

由以上本说明书实施例提供的技术方案可知,本发明由签名服务器生成升级包的数字签名,避免了控制服务器维护数字签名生成与校验所需的主密钥对,降低控制服务器的维护管理成本。且将每个升级包的关键信息作为校验信息,并为每个终端配置主密钥对,实现数字签名的生成和校验,保证每个终端的每个升级包具有唯一数字签名,便于厂家针对外部私自对终端的换件、刷写等行为进行管控。

在另一些实施例中,如图4所示,在步骤s217之后,所述方法还可以包括:

s219:终端提取从所述ota服务器获取的升级包的关键信息。

s221:所述终端基于预设算法将所述获取的升级包的关键信息转换成第三校验信息。

s223:所述终端校验所述第三校验信息是否与所述第一校验信息一致。

本说明书实施例中,当校验的结果为第三校验信息与所述第一校验信息一致时,校验通过,下载的升级包准确;反之,校验不通过,终端从ota服务器获取的升级包过程中出现域名劫持等问题,导致下载到的升级包不准确。

s225:当校验的结果为是时,所述终端基于所述升级包执行升级操作。

在实际应用中,以ecu为例,某一车载终端中用于进行升级包下载的ecu和需要进行升级的ecu可以是同一ecu,也可以是不同的ecu。相应的,当升级包下载的ecu和需要进行升级的ecu是不同的ecu是,在步骤s223校验的结果为是时,升级包下载的ecu可以将升级包发送给需要进行升级的ecu,以便该ecu进行升级操作。

进一步的,在一些实施例中,在终端基于所述升级包执行升级操作之前,所述方法还可以包括:

终端对从所述ota服务器获取的升级包的程序数据进行校验,当校验通过时,执行基于所述升级包执行升级操作。

此外,需要说明的是,结合上述ecu的示例,当用于进行升级包下载的ecu和需要进行升级的ecu是不同的ecu,可以由需要进行升级的ecu对从所述ota服务器获取的升级包的程序数据进行校验;也可以由用于进行升级包下载的ecu对从所述ota服务器获取的升级包的程序数据进行校验。

进一步的,在一些实施例中,步骤s211中控制服务器向终端发送的查询应答信息还可以包括:第四校验信息,所述第四校验信息表征升级包的来源,用于对所述升级包的来源进行验证;

相应的,如图5所示,在终端基于提取从所述ota服务器获取的升级包的关键信息之前,所述方法还可以包括:

终端对所述第四校验信息进行校验处理;

当所述第四校验信息的校验通过时,所述终端执行基于提取从所述ota服务器获取的升级包的关键信息的步骤。

具体的,本说明书实施例中,在从ota服务器获取到升级包之后,已经知道升级包的来源,可以进行对所述第四校验信息进行校验处理,以保证升级包的来源的准确。

由以上本说明书实施例提供的技术方案可知,本发明通过签名服务器为大量需要升级的终端生成主密钥对,并将每个升级包的关键信息作为校验信息,领域主私钥和终端标识信息生成终端的私钥,然后,利用私钥对校验信息进行加密处理得到具有唯一性的数字签名,便于厂家针对外部私自对终端的换件、刷写等行为进行管控。另外,主密钥对由签名服务器维护,避免了控制服务器维护主密钥对的大量开销,有效降低了控制服务器的维护管理成本。

以下以服务器为执行主体介绍本说明书一种基于数字签名校验的升级下载方法的具体实施例,图6是本发明实施例提供的一种基于数字签名校验的升级下载方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的,结合图6所示,所述方法可以包括:

s601:接收终端发送的升级包查询请求。

s603:基于所述终端所请求的升级包的关键信息生成第一校验信息。

具体的,所述基于所述终端所请求的升级包的关键信息生成第一校验信息可以包括:

确定所述终端所请求的升级包的关键信息;

基于预设算法将所述关键信息转换成第一校验信息。

s605:向签名服务器发送包括所述第一校验信息和所述终端的标识信息的数字签名请求,以使所述签名服务器利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理得到所述升级包的数字签名。

s607:接收所述签名服务器发送的所述升级包的数字签名。

s609:向所述终端发送包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,以使所述终端基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理,以及当校验通过时,基于所述下载地址从空中下载ota服务器获取升级包。

在一些实施例中,所述方法还可以包括:

接收所述签名服务器发送的所述终端的主公钥;

将所述主公钥发送给所述终端,以使所述终端利用所述主公钥和所述终端的标识信息生成所述终端的公钥。

本发明实施例还提供了一种基于数字签名校验的升级下载服务器,该基于数字签名校验的升级下载服务器包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现如上述方法实施例所提供的基于数字签名校验的升级下载方法。

以下以终端为执行主体介绍本说明书另一种基于数字签名校验的升级下载方法的具体实施例,图7是本发明实施例提供的另一种基于数字签名校验的升级下载方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的,结合图7所示,所述方法可以包括:

s701:向控制服务器发送升级包查询请求。

s703:接收控制服务器发送的包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,其中,所述数字签名包括控制服务器从签名服务器处获取的利用终端的私钥对第一校验信息进行加密处理后得到的校验信息,所述第一校验信息由所述控制服务器基于终端所请求的升级包的关键信息生成,所述终端的私钥由签名服务器利用终端的标识信息所对应的主私钥和所述标识信息生成。

具体的,所述与所述私钥相对应的公钥可以包括采用下述方式获取:

接收所述控制服务器发送的由签名服务器生成的所述主私钥所对应的主公钥;

利用所述主公钥和所述标识信息生成与所述私钥相对应的公钥。

在一些实施例中,所述终端的标识信息可以包括:时间信息,所述时间信息与升级更新频率相对应;

相应的,所述利用所述主公钥和所述标识信息生成与所述私钥相对应的公钥可以包括:

确定所述标识信息中的时间信息所对应的升级更新时间间隔;

每隔所述升级更新时间间隔利用所述主公钥和当前的标识信息生成并更新与所述私钥相对应的公钥。

s705:基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理。

具体的,所述基于所述关键信息和与所述私钥相对应的公钥对所述数字签名进行校验处理可以包括:

利用与所述私钥相对应的公钥对所述数字签名进行解密处理,得到解密后的校验信息;

基于预设算法将所述关键信息转换成第二校验信息;

校验所述解密后的校验信息是否与所述第二校验信息一致。

s707:如校验通过,基于所述下载地址向空中下载ota服务器发送升级包下载请求。

s709:接收ota服务器发送的升级包。

在一些实施例中,在所述接收ota服务器发送的升级包之后,所述方法包括:

提取从所述ota服务器获取的升级包的关键信息;

基于预设算法将所述获取的升级包的关键信息转换成第三校验信息;

校验所述第三校验信息是否与所述第一校验信息一致;

当校验的结果为是时,基于所述升级包执行升级操作。

在一些实施例中,所述查询应答信息还包括:第四校验信息,所述第四校验信息用于对所述升级包的来源进行验证;

相应的,在提取从所述ota服务器获取的升级包的关键信息之前,所述方法还包括:

对所述第四校验信息进行校验处理;

当所述第四校验信息的校验通过时,执行提取从所述ota服务器获取的升级包的关键信息的步骤。

本发明实施例还提供了一种基于数字签名校验的升级下载终端,该基于数字签名校验的升级下载终端包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现如上述方法实施例所提供的基于数字签名校验的升级下载方法。

本说明书实施例中,所述存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据所述设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。

本发明实施例还提供了一种基于数字签名校验的升级下载装置,如图8所示,所述装置包括:

升级包查询请求接收模块810,可以用于接收终端发送的升级包查询请求;

校验信息生成模块820,可以用于基于所述终端所请求的升级包的关键信息生成第一校验信息;

数字签名请求发送模块830,可以用于向签名服务器发送包括所述第一校验信息和所述终端的标识信息的数字签名请求,以使所述签名服务器利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理得到所述升级包的数字签名;

数字签名接收模块840,可以用于接收所述签名服务器发送的所述升级包的数字签名;

查询应答信息发送模块850,可以用于向所述终端发送包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,以使所述终端基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理,以及当校验通过时,基于所述下载地址从空中下载ota服务器获取升级包。

另一实施例中,所述装置还可以包括:

主公钥接收模块,用于接收所述签名服务器发送的所述终端的主公钥;

主公钥发送模块,用于将所述主公钥发送给所述终端,以使所述终端利用所述主公钥和所述终端的标识信息生成所述终端的公钥。

另一实施例中,所述基于所第一校验信息生成模块包括:

关键信息单元,用于确定所述终端所请求的升级包的关键信息;

第一校验信息转换单元,用于基于预设算法将所述关键信息转换成第一校验信息。

所述的装置实施例中的装置与方法实施例基于同样地发明构思。

本发明实施例还提供了另一种基于数字签名校验的升级下载装置,如图9所示,所述装置包括:

升级包查询请求发送模块910,可以用于向控制服务器发送升级包查询请求,

查询应答信息接收模块920,可以用于接收控制服务器发送的包括所述升级包的关键信息、数字签名和下载地址的查询应答信息,其中,所述数字签名包括控制服务器从签名服务器处获取的利用终端的私钥对第一校验信息进行加密处理后得到的校验信息,所述第一校验信息由所述控制服务器基于终端所请求的升级包的关键信息生成,所述终端的私钥由签名服务器利用终端的标识信息所对应的主私钥和所述标识信息生成;

第一校验处理模块930,可以用于基于与所述私钥相对应的公钥和所述关键信息对所述数字签名进行校验处理;

升级包下载请求发送模块940,可以用于如校验通过,基于所述下载地址向空中下载ota服务器发送升级包下载请求;

升级包接收模块950,可以用于接收ota服务器发送的升级包。

另一实施例中,所述与所述私钥相对应的公钥包括采用下述单元获取:

主公钥接收单元,用于接收所述控制服务器发送的由签名服务器生成的所述主私钥所对应的主公钥;

公钥生成单元,用于利用所述主公钥和所述标识信息生成与所述私钥相对应的公钥。

另一实施例中,所述终端的标识信息可以包括:时间信息,所述时间信息与升级更新频率相对应;

相应的,所述公钥生成单元还用于确定所述标识信息中的时间信息所对应的升级更新时间间隔;每隔所述升级更新时间间隔利用所述主公钥和当前的标识信息生成并更新与所述私钥相对应的公钥。

另一实施例中,所述第一校验处理模块包括:

解密处理单元,用于利用与所述私钥相对应的公钥对所述数字签名进行解密处理,得到解密后的校验信息;

第二校验信息转换单元,用于基于预设算法将所述关键信息转换成第二校验信息;

校验单元,用于校验所述解密后的校验信息是否与所述第二校验信息一致。

另一实施例中,所述装置包括:

关键信息提取模块,用于接收ota服务器发送的升级包之后,提取从所述ota服务器获取的升级包的关键信息;

第三校验信息转换模块,用于基于预设算法将所述获取的升级包的关键信息转换成第三校验信息;

校验模块,用于校验所述第三校验信息是否与所述第一校验信息一致;

升级模块,用于当校验的结果为是时,基于所述升级包执行升级操作。

另一实施例中,所述查询应答信息还包括:第四校验信息,所述第四校验信息表征升级包的来源;

相应的,所述装置还包括:

第二校验处理模块,用于对所述第四校验信息进行校验处理,当所述第四校验信息的校验通过时,执行提取从所述ota服务器获取的升级包的关键信息的步骤。

所述的装置实施例中的装置与方法实施例基于同样地发明构思。

本发明另一方面还提供一种基于数字签名校验的升级下载系统,所述系统包括:终端,控制服务器、签名服务器和空中下载ota服务器;

所述终端,用于向控制服务器发送升级包查询请求;以及用于基于公钥和升级包的关键信息对所述数字签名进行校验处理,如校验通过,基于所述下载地址向ota服务器发送升级包下载请求;

所述控制服务器,用于基于所述终端所请求的升级包的关键信息生成第一校验信息,向所述签名服务器发送数字签名请求,所述数字签名请求包括所述第一校验信息和所述终端的标识信息;以及用于向所述终端发送查询应答信息,所述查询应答信息包括所述升级包的关键信息、数字签名和下载地址;

所述签名服务器,用于利用所述终端的标识信息所对应的主私钥和所述标识信息生成所述终端的私钥,利用所述私钥对所述第一校验信息进行加密处理,将加密后的校验信息作为所述升级包的数字签名,将所述数字签名发送给所述控制服务器;

所述ota服务器,用于向所述终端发送升级包。

由上述本发明提供的基于数字签名校验的升级下载方法、装置、服务器、终端或系统的实施例可见,本发明中通过签名服务器为大量需要升级的终端生成主密钥对,并将每个升级包的关键信息作为校验信息,领域主私钥和终端标识信息生成终端的私钥,然后,利用私钥对校验信息进行加密处理得到具有唯一性的数字签名,便于厂家针对外部私自对终端的换件、刷写等行为进行管控。另外,主密钥对由签名服务器维护,避免了控制服务器维护主密钥对的大量开销,有效降低了控制服务器的维护管理成本。

需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、服务器和终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1