发明内容
本发明的目的在于提供一种无人设备的系统更新验证方法、装置、设备及计算机可读存储介质,以提高无人设备的系统更新验证效率和系统安全性。
为实现上述目的,本发明实施例提供了如下技术方案:
一种无人设备的系统更新验证方法,包括:
接收多个无人设备发送的系统更新请求;
将系统更新信息发送至所述多个无人设备,以使每个无人设备对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名;
获取所述每个无人设备对应的更新信息签名,并将获取到的多个更新信息签名进行叠加,生成集群签名;
验证所述集群签名,当验证通过时,发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统。
其中,所述每个无人设备对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名,包括:
每个无人设备利用随机数、当前时间戳和当前私钥对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名,所述当前私钥与每个无人设备一一对应。
其中,所述将获取到的多个更新信息签名进行叠加,生成集群签名,包括:
从获取到的每个更新信息签名中提取目标特征值;
将提取到的多个目标特征值进行叠加,生成所述集群签名。
其中,所述验证所述集群签名,当验证通过时,发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统,包括:
在目标等式中利用变量变换方法验证所述集群签名;
当所述目标等式成立时,表明验证通过,则执行所述发送验证成功的消息至所述至少两个无人设备,以使所述至少两个无人设备同时更新系统的步骤;
当所述目标等式不成立时,表明验证未通过,则发送验证失败的消息至所述至少两个无人设备,以使所述至少两个无人设备重新发送系统更新的请求。
其中,所述将系统更新信息发送至所述多个无人设备之前,还包括:
判断当前数据库中是否存在所述系统更新信息;
若是,则执行所述将系统更新信息发送至所述多个无人设备的步骤。
一种无人设备的系统更新验证装置,包括:
接收模块,用于接收多个无人设备发送的系统更新请求;
生成模块,用于将系统更新信息发送至所述多个无人设备,以使每个无人设备对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名;
叠加模块,用于获取所述每个无人设备对应的更新信息签名,并将获取到的多个更新信息签名进行叠加,生成集群签名;
验证更新模块,用于验证所述集群签名,当验证通过时,发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统。
其中,所述生成模块具体用于:
每个无人设备利用随机数、当前时间戳和当前私钥对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名,所述当前私钥与每个无人设备一一对应。
其中,所述叠加模块包括:
提取单元,用于从获取到的每个更新信息签名中提取目标特征值;
生成单元,用于将提取到的多个目标特征值进行叠加,生成所述集群签名。
一种无人设备的系统更新验证设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任意一项所述的无人设备的系统更新验证方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的无人设备的系统更新验证的步骤。
通过以上方案可知,本发明实施例提供的一种无人设备的系统更新验证方法,包括:接收多个无人设备发送的系统更新请求;将系统更新信息发送至所述多个无人设备,以使每个无人设备对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名;获取所述每个无人设备对应的更新信息签名,并将获取到的多个更新信息签名进行叠加,生成集群签名;验证所述集群签名,当验证通过时,发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统。
可见,所述方法可使每个无人设备对系统更新信息进行签名,并将每个无人设备生成的更新信息签名进行叠加,生成集群签名,从而可验证集群签名是否正确;若是,则发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统。如此不仅在无人设备的更新验证过程中增添了签名操作,使得验证过程更具安全性;还简化了验签流程,仅验证一次,便可使多个无人设备同时更新系统,从而提高了无人设备的更新验证效率;同时无人设备的数量不固定,提高了更新验证的可扩展性以及更新模式的多样化。
相应地,本发明实施例提供的一种无人设备的系统更新验证装置、设备及计算机可读存储介质,也同样具有上述技术效果。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种无人设备的系统更新验证方法、装置、设备及计算机可读存储介质,以提高无人设备的系统更新验证效率和系统安全性。
参见图1,本发明实施例提供的一种无人设备的系统更新验证方法,包括:
S101、接收多个无人设备发送的系统更新请求;
具体的,若多个无人设备的系统均需要更新时,则服务端可接收到多个系统更新请求。该更新请求包括:每个设备的ID信息、当前系统版本号等信息。
S102、将系统更新信息发送至多个无人设备,以使每个无人设备对系统更新信息进行签名,生成每个无人设备对应的更新信息签名;
具体的,当接收到多个无人设备发送的系统更新请求时,便将系统更新信息发送至多个无人设备,即:将无人设备的最新软件系统信息发送至多个无人设备,所述软件系统信息包括:软件系统的更新脚本、安装包等;当无人设备接收到系统更新信息时,便对系统更新信息进行签名,生成更新信息签名,其中,每个无人设备均需要对系统更新信息进行签名,故生成的更新信息签名与每个无人设备一一对应。
S103、获取每个无人设备对应的更新信息签名,并将获取到的多个更新信息签名进行叠加,生成集群签名;
S104、验证集群签名,并判断验证是否通过,若是,则执行S105;若否,则执行S106;
S105、发送验证成功的消息至多个无人设备,以使多个无人设备同时更新系统;
S106、发送验证失败的消息至至少两个无人设备,以使至少两个无人设备重新发送系统更新的请求。
具体的,当获取到多个更新信息签名时,为了简化验签流程,本实施例将多个更新信息签名进行叠加,生成集群签名,如此便可仅验证集群签名,从而提高了验证效率。
可见,本实施例提供了一种无人设备的系统更新验证方法,所述方法可使每个无人设备对系统更新信息进行签名,并将每个无人设备生成的更新信息签名进行叠加,生成集群签名,从而可验证集群签名是否正确;若是,则发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统。如此不仅在无人设备的更新验证过程中增添了签名操作,使得验证过程更具安全性;还简化了验签流程,仅验证一次,便可使多个无人设备同时更新系统,从而提高了无人设备的更新验证效率;同时无人设备的数量不固定,提高了更新验证的可扩展性以及更新模式的多样化。
本发明实施例公开了一种无人设备的系统更新验证方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。
参见图2,本发明实施例提供的另一种无人设备的系统更新验证方法,包括:
S201、接收多个无人设备发送的系统更新请求;
S202、判断当前数据库中是否存在所述系统更新信息;若是,则执行S203;若否,则执行S208;
在本实施例中,若当前数据库中不存在所述系统更新信息,则表明无法为无人设备提供系统更新信息,那么则返回预设的提示消息至多个无人设备,以使无人设备重新发送系统更新请求;若当前数据库中存在所述系统更新信息,则表明可以为无人设备提供系统更新信息,那么则直接将系统更新信息发送至无人设备。若第j个协助器计算t时间段的系统更新信息,则系统更新信息为:UKt=HKj(H1(t)-H1(t-2)),其中,t为时间变量,UKt代表系统更新信息,H为哈希函数,HKj为协助器j的密钥。
S203、将系统更新信息发送至多个无人设备,以使每个无人设备对系统更新信息进行签名,生成每个无人设备对应的更新信息签名,并执行S204;
S204、获取每个无人设备对应的更新信息签名,并将获取到的多个更新信息签名进行叠加,生成集群签名,并执行S205;
S205、验证集群签名,并判断验证是否通过,若是,则执行S206;若否,则执行S207;
S206、发送验证成功的消息至多个无人设备,以使多个无人设备同时更新系统;
S207、发送验证失败的消息至至少两个无人设备,以使至少两个无人设备重新发送系统更新的请求;
S208、返回预设的提示消息至多个无人设备。
可见,本实施例提供了另一种无人设备的系统更新验证方法,所述方法可使每个无人设备对系统更新信息进行签名,并将每个无人设备生成的更新信息签名进行叠加,生成集群签名,从而可验证集群签名是否正确;若是,则发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统。如此不仅在无人设备的更新验证过程中增添了签名操作,使得验证过程更具安全性;还简化了验签流程,仅验证一次,便可使多个无人设备同时更新系统,从而提高了无人设备的更新验证效率;同时无人设备的数量不固定,提高了更新验证的可扩展性以及更新模式的多样化。
基于上述任意实施例,需要说明的是,所述每个无人设备对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名,包括:
每个无人设备利用随机数、当前时间戳和当前私钥对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名,所述当前私钥与每个无人设备一一对应。
其中,所述当前私钥可通过下述方式生成:
选取两个阶是素数的加法群,P和Q分别为两个群中的生成元;随机选取两个协助器密钥,协助器密钥分别为HK0,HK1,其中,HK1∈RZ*q;HP0=HK0·P,PK=(PK1,...,PKn,HP0,HP1),其中,HP0,HP1为提高公钥安全性而生成的变量;
为每个无人设备Pi随机选取一个私钥Si∈RZ*q,对应的公钥PKi=Si·P,其中,i=(1,2,...,n),公钥PK=(PK1,...,PKn,HP0,HP1);且每个无人设备的部分初始化临时私钥为SKi,0,通过公式TSKi,0=(Si,SKi,0)可计算出H1(·),H2(·)为哈希函数;故无人设备的初始化私钥(即无人设备0时刻的临时私钥)为TSKi,t=(Si,SKi,t),并将其存储至无人设备。
计算t时间段无人设备的当前私钥TSKi,t=(Si,SKi,t),其中:
SKi,t=SKi,t-1+UKt+Si(H1(t)-H1(t-1)),SKi,t-1为t-1时间段的临时私钥,当然,临时私钥也可用其他形式表示。
若令1=tmod2,1’=(t-1)mod2,则t-1时间段的临时私钥为:
SKi,t=(Si+HKl)H1(t)+HKl′·SH1(t-1))。
利用当前私钥签名系统更新信息,则更新信息签名为:(t,R
i,S
i);其中,R
i=r
i·P,r
i∈
RZ
*q,而
哈希值h
i=H
2(t,m
i,R
i)。
基于上述任意实施例,需要说明的是,所述将获取到的多个更新信息签名进行叠加,生成集群签名,包括:
从获取到的每个更新信息签名中提取目标特征值;
将提取到的多个目标特征值进行叠加,生成所述集群签名。
将获取到的多个更新信息签名进行叠加,生成集群签名(t,a),其中,(t,a)=(t,R
1,...,R
n,S),
例如:若更新信息签名为:(t,Ri,Si),集群签名则为:(t,R1…Rn,S),R1…Rn分别对应每个无人设备,即:将每个无人设备生成的签名中的Ri进行叠加。
基于上述任意实施例,需要说明的是,所述验证所述集群签名,当验证通过时,发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统,包括:
在目标等式中利用变量变换方法验证所述集群签名;
当所述目标等式成立时,表明验证通过,则执行所述发送验证成功的消息至所述至少两个无人设备,以使所述至少两个无人设备同时更新系统的步骤;
当所述目标等式不成立时,表明验证未通过,则发送验证失败的消息至所述至少两个无人设备,以使所述至少两个无人设备重新发送系统更新的请求。
具体的,若以上述描述为例,则目标等式可以为:
基于上述等式进行变量变换,若该等式左右不等,则说明更新信息签名存在错误,或者集群签名有误,如此则无法更新无人设备的系统。
基于上述任意实施例,需要说明的是,基于本说明公开的无人设备的系统更新验证方法,可设计如下更新验证系统,该系统包括:
多个无人设备,用于发送系统更新请求;
服务端,用于接收所述系统更新请求,将系统更新信息发送至所述多个无人设备,以使每个无人设备对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名;还用于获取所述设备节点生成的集群签名,并验证所述集群签名,当验证通过时,发送验证成功的消息至所述设备节点,以使所述设备节点将验证成功的消息发送至多个无人设备,从而使多个无人设备同时更新系统;
设备节点,用于获取所述每个无人设备对应的更新信息签名,并将获取到的多个更新信息签名进行叠加,生成集群签名。
其中,设备节点作为无人设备和服务端之间的数据交互桥梁,可以节约服务端的数据处理量,以缓解服务端的工作压力;同时将集群签名的生成通过设备节点执行,更是有效提高了服务端的工作进程,有利于提高更新验证效率。当然,为了缓解服务端的工作压力,还可以依据此思想设计其他更新验证系统,上述系统仅是本发明公开的一种更新验证系统,因此不应理解为对本发明的限制。
下面对本发明实施例提供的一种无人设备的系统更新验证装置进行介绍,下文描述的一种无人设备的系统更新验证装置与上文描述的一种无人设备的系统更新验证方法可以相互参照。
参见图3,本发明实施例提供的一种无人设备的系统更新验证装置,包括:
接收模块301,用于接收多个无人设备发送的系统更新请求;
生成模块302,用于将系统更新信息发送至所述多个无人设备,以使每个无人设备对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名;
叠加模块303,用于获取所述每个无人设备对应的更新信息签名,并将获取到的多个更新信息签名进行叠加,生成集群签名;
验证更新模块304,用于验证所述集群签名,当验证通过时,发送验证成功的消息至所述多个无人设备,以使所述多个无人设备同时更新系统。
其中,所述生成模块具体用于:
每个无人设备利用随机数、当前时间戳和当前私钥对所述系统更新信息进行签名,生成每个无人设备对应的更新信息签名,所述当前私钥与每个无人设备一一对应。
其中,所述叠加模块包括:
提取单元,用于从获取到的每个更新信息签名中提取目标特征值;
生成单元,用于将提取到的多个目标特征值进行叠加,生成所述集群签名。
其中,所述验证更新模块包括:
验证单元,用于在目标等式中利用变量变换方法验证所述集群签名;
第一执行单元,用于当所述目标等式成立时,表明验证通过,则执行所述发送验证成功的消息至所述至少两个无人设备,以使所述至少两个无人设备同时更新系统的步骤;
第二执行单元,用于当所述目标等式不成立时,表明验证未通过,则发送验证失败的消息至所述至少两个无人设备,以使所述至少两个无人设备重新发送系统更新的请求。
其中,还包括:
判断模块,用于判断当前数据库中是否存在所述系统更新信息;
执行模块,用于当前数据库中存在所述系统更新信息时,执行所述将系统更新信息发送至所述多个无人设备的步骤。
下面对本发明实施例提供的一种无人设备的系统更新验证设备进行介绍,下文描述的一种无人设备的系统更新验证设备与上文描述的一种无人设备的系统更新验证方法及装置可以相互参照。
参见图4,本发明实施例提供的一种无人设备的系统更新验证设备,包括:
存储器401,用于存储计算机程序;
处理器402,用于执行所述计算机程序时实现上述任意实施例所述的无人设备的系统更新验证方法的步骤。
下面对本发明实施例提供的一种计算机可读存储介质进行介绍,下文描述的一种计算机可读存储介质与上文描述的一种无人设备的系统更新验证方法、装置及设备可以相互参照。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意实施例所述的无人设备的系统更新验证方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。