一种升级包安全校验的方法、装置、设备及存储介质与流程

未命名 08-14 阅读:100 评论:0


1.本发明涉及数据安全验证领域,尤其涉及一种升级包安全校验的方法、装置、设备及存储介质。


背景技术:

2.现在市面上大多数鸿蒙程序都有自动升级功能,该功能会从服务器获取应用升级包来更新应用,将获取到的应用升级包保存到本地存储中,调用鸿蒙系统的安装服务来进行应用更新操作。但是当从服务器上下载的应用升级包被存储到其他应用程序可以访问的存储位置时,就可能被其他应用程序获取并对应用升级安装包进行修改或者替换,从而诱导用户安装恶意软件。
3.在现有技术中,通常使用数字签名加密的方法对升级包的安全性进行验证。数字签名证实了一份数字信息确实来自于某个实体,因为基于非对称加密的原理,用私钥加密的消息只能用对应的公钥解密,反之亦然。签名是由该实体的私钥生成,而私钥只由签名方持有,也只能用签名方的公钥对签名进行解密,故当解密成功时,便可相信是签名方生成了此消息;其次,数字签名可以确保消息在传递过程中未被篡改。
4.发明人在实现本发明的过程中,发现现有技术存在如下问题:鸿蒙系统在现有技术中没有统一定义升级包的数字签名的加密方案,各厂商与软件开发公司根据实际应用自行研发安全验证方案使用,导致升级包的安全校验过程较为复杂繁琐,安全验证的可靠性较低。


技术实现要素:

5.本发明提供了一种升级包安全校验的方法、装置、设备及存储介质,可以解决现有技术的升级包安全验证中验证过程繁琐,且安全验证可靠性低,安全校验工作的工作效率较差的问题。
6.第一方面,本发明提供了一种升级包安全校验的方法,该方法包括:
7.获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件;其中,所述预升级包中包括至少一个预升级文件;
8.通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件;
9.基于目标摘要文件与所述预升级包,生成目标文件包;
10.获取升级包,并基于所述目标文件包对所述升级包进行安全校验。
11.第二方面,本发明提供了一种升级包安全校验的装置,该装置包括:
12.预升级包获取模块,用于获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件;其中,所述预升级包中包括至少一个预升级文件;
13.签名模块,用于通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件;
14.文件包生成模块,用于基于目标摘要文件与所述预升级包,生成目标文件包;
15.校验模块,用于获取升级包,并基于所述目标文件包对所述升级包进行安全校验。
16.第三方面,本发明提供了一种电子设备,所述电子设备包括:
17.至少一个处理器;以及
18.与所述至少一个处理器通信连接的存储器;其中,
19.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的升级包安全校验的方法。
20.第四方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的升级包安全校验的方法。
21.本发明实施例的技术方案,通过获取预升级包,并根据预升级包得到安全私钥、安全公钥与预摘要文件,之后通过安全私钥对预摘要文件进行签名,得到目标摘要文件,并基于目标摘要文件与预升级包,生成目标文件包,最后获取升级包,并基于目标文件包对升级包进行安全校验,解决了现有技术中的升级包安全验证中验证过程繁琐,且安全验证可靠性低,安全校验工作的工作效率较差的问题,提高了升级包安全校验的可靠性,进而保证了升级包数据来源的完整性与可靠性,简化了升级包安全校验的流程,提高了安全校验工作的工作效率。
22.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
23.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1是根据本发明实施例一提供的一种升级包安全校验的方法的流程图;
25.图2a是根据本发明实施例二提供的一种升级包安全校验的方法的流程图;
26.图2b是根据本发明实施例二提供的方法得到的一种升级包安全校验的方法的时序图;
27.图3是根据本发明实施例三提供的一种升级包安全校验的装置的结构示意图;
28.图4是实现本发明实施例的一种升级包安全校验的方法的电子设备的结构示意图。
具体实施方式
29.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
30.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
31.实施例一
32.图1为本发明实施例一提供了一种升级包安全校验的方法的流程图,本实施例可适用于鸿蒙系统进行升级包安全校验的情况,该方法可以由升级包安全校验的装置来执行,该升级包安全校验的装置可以采用硬件和/或软件的形式实现,该升级包安全校验的装置可配置于具有升级包安全校验功能的终端或服务器中。如图1所示,该方法包括:
33.s110、获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件。
34.其中,所述预升级包中包括至少一个预升级文件。
35.其中,所述预升级包为所述升级包的镜像文件,其包含的数据与所述升级包一致;在本实施例中,具体的,可以将所述升级包的压缩的原始文件上传至ota(over-the-air technology,空中下载技术平台)中;进一步的,使用所述ota对所述升级包进行上传,可以实现所述升级包的在线下载,以完成所述升级包所匹配应用的在线升级。
36.其中,由于所述预升级包为所述升级包的镜像文件,故所述预升级包的文件属性与所述升级包的文件属性一致;具体的,可以通过预设的openssl(开放源代码软件库)对所述文件属性进行处理,以获取与各预升级文件对应的ca格式的安全私钥与安全公钥;进一步的,所述openssl是一个开放源代码的软件库,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份,即在本实施例中,所述升级包可以使用所述openssl进行安全通信,即进行安全私钥与安全公钥的生成。
37.进一步的,所述openssl提供的ca应用程序就是一个小型的证书管理中心,可以实现证书签发的整个流程和证书管理的大部分机制,使用openssl生成公钥(ca.crt)和私钥(ca.key)。
38.在本实施例中,所述预升级文件为所述升级包所能完成的升级操作对应的具体程序文件;进一步的,所述至少一个预升级文件的打包文件包即为所述预升级包。
39.具体的,根据所述预升级包得到摘要文件,包括:通过预设的摘要提取算法对所述预升级包中包括的各预升级文件进行处理,获取与各预升级文件分别对应的各预摘要数据;将所述各预摘要数据进行组合,得到所述预摘要文件。
40.其中,所述摘要提取算法可以为sha256算法;进一步的,所述sha256算法为哈希函数,对于任意长度的消息,sha256都可以产生一个256bit长度的散列值,称为消息摘要,可以用一个长度为64的十六进制字符串表示,即在本实施例中,通过所述摘要提取算法,可以获取与各预升级文件分别对应的各预摘要数据;进一步的,所述各预升级文件对应的各预摘要数据按照摘要提取的时间顺序进行组合,得到所述预摘要文件。
41.现有技术中,原始的升级包镜像文件,即预升级文件的文件较大,如果全部进行加
密与解密操作计算量较大,做包和解包的过程耗能高,用时长,严重影响了加密与解密的效率;在本实施例中,采用对预升级文件进行sha256处理,获得了简短且抗碰撞的预摘要文件,对摘要数据进行私钥加密无需对原始的预升级文件进行直接加密与解密,计算量小且安全性能高。
42.s120、通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件。
43.其中,所述签名可以为通过所述安全私钥对所述预摘要文件进行签名算法;进一步的,所述签名算法是指数字签名的算法;进一步的,所述数字签名是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明;具体的,所述数字签名是通过一个单向函数,对要传送的信息进行处理得到的用以认证信息来源,并核实信息在传送过程中是否发生变化的一个字母数字串;在本实施例中,可以认为通过述安全私钥对所述预摘要文件进行处理产生的字母数字串即为与所述预摘要文件匹配的签名后数据。
44.在本实施例中,通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件,包括:通过所述安全私钥对所述预摘要文件进行签名,获取与所述预摘要文件匹配的签名后数据;将所述签名后数据添加至所述预摘要文件中,得到所述目标摘要文件。
45.其中,所述签名后数据可以为通过述安全私钥对所述预摘要文件进行处理产生的字母数字串;在本实施例中,由于所述签名后数据的格式为字符串,故可以直接将所述字符串添加至所述摘要文件的预设位置,而不会改变所述摘要文件的文件格式与文件内容。
46.s130、基于目标摘要文件与所述预升级包,生成目标文件包。
47.其中,所述目标文件包可以为包含目标摘要文件与所述预升级包全部预升级文件数据的打包文件。
48.其中,基于目标摘要文件与所述预升级包,生成目标文件包,包括:将所述目标摘要文件添加至所述预升级包中并进行文件压缩操作,生成所述目标文件包;进一步的,所述文件压缩操作为:一种通过特定的算法来减小计算机文件大小的机制,所述文件压缩操作可以减少数据大小以节省保存空间和传输的时间。
49.s140、获取升级包,并基于所述目标文件包对所述升级包进行安全校验。
50.在本实施例中,所述升级包可以为终端或服务器通过ota在线下载获取;进一步的,由于在线下载过程中可能出现升级包内容被篡改、升级包地址出错导致文件下载错误等情况,将所述下载的升级包与所述目标文件包进行安全校验,可以保证升级包数据来源的完整性与可靠性。
51.本发明实施例的技术方案,通过获取预升级包,并根据预升级包得到安全私钥、安全公钥与预摘要文件,之后通过安全私钥对预摘要文件进行签名,得到目标摘要文件,并基于目标摘要文件与预升级包,生成目标文件包,最后获取升级包,并基于目标文件包对升级包进行安全校验,实现了升级包安全性的校验,提高了升级包安全校验的可靠性,进而保证了升级包数据来源的完整性与可靠性,简化了升级包安全校验的流程,提高了安全校验工作的工作效率。
52.实施例二
53.图2a为本发明实施例二提供的一种升级包安全校验的方法的流程图,本实施例以上述实施例为基础进行细化,在本实施例中具体是将对获取升级包,并基于所述目标文件
包对所述升级包进行安全校验具体细化为:将所述升级包进行解压处理,得到所述升级包中包含的至少一个升级文件;通过预设的摘要提取算法对所述升级包中包括的各升级文件进行处理,获取与各升级文件分别对应的各摘要数据;将所述各摘要数据进行组合,得到摘要文件;基于所述摘要文件与所述目标文件包对所述升级包进行安全校验。
54.如图2a所示,该方法包括:
55.s210、获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件。
56.其中,所述预升级包中包括至少一个预升级文件。
57.s220、通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件。
58.s230、基于目标摘要文件与所述预升级包,生成目标文件包。
59.s240、将所述升级包进行解压处理,得到所述升级包中包含的至少一个升级文件。
60.其中,所述升级包可以为通过人工操作或客户端进行自动更新时,通过ota在线下载获取的升级文件的打包文件。
61.进一步的,所述解压处理为解压缩处理;进一步的,所述解压缩是压缩的反过程,是将一个通过软件压缩的文档、文件等各种东西恢复到压缩之前的样子的操作;在上述步骤的基础上,由于在将升级包进行ota上传的过程中存在压缩操作,故在进行升级包的下载后,需要进行解压处理以获得完整的各升级文件。
62.s250、通过预设的摘要提取算法对所述升级包中包括的各升级文件进行处理,获取与各升级文件分别对应的各摘要数据。
63.其中,所述摘要提取算法为sha256算法;进一步的,所述sha256算法为哈希函数,对于任意长度的消息,sha256都可以产生一个256bit长度的散列值,称为消息摘要,可以用一个长度为64的十六进制字符串表示,即在本实施例中,通过所述摘要提取算法,可以获取与各升级文件分别对应的各预摘要数据。
64.s260、将所述各摘要数据进行组合,得到摘要文件,并基于所述摘要文件与所述目标文件包对所述升级包进行安全校验。
65.其中,基于所述摘要文件与所述目标文件包对所述升级包进行安全校验,包括:通过所述安全公钥对所述目标文件包进行解密处理,获取所述目标文件包中包含的目标摘要文件;从所述目标摘要文件中提取所述预摘要文件;将所述预摘要文件与所述摘要文件进行一致性对比,获取所述升级包的安全校验结果。
66.现有技术中,在验证升级包签名的过程中,所述私钥加密的数据只有公钥可以解开,但公钥有很多把,管理各公钥具有一定的难度;本发明实施例通过openssl生成公钥与私钥,即通过openssl的ca认证中心来生成含有公钥的ca免费证书,若所述证书可信,所述公钥即为可信的,省去了多把公钥管理带来的安全问题。
67.进一步的,将所述预摘要文件与所述摘要文件进行一致性对比,获取所述升级包的安全校验结果,包括:若所述预摘要文件与所述摘要文件之间存在一致性,则确定所述升级包的安全校验结果为校验成功;若所述预摘要文件与所述摘要文件之间不存在一致性,则确定所述升级包的安全校验结果为校验失败。
68.在本实施例中,容易理解的是,由于在生成目标摘要文件与所述摘要文件所使用的摘要算法一致,若所述预摘要文件与所述摘要文件的内容一致,则说明产生所述预摘要
文件与所述摘要文件的预升级包与所述升级包的内容一致,即所述升级包的安全校验结果为校验成功;相应的,若所述预摘要文件与所述摘要文件的内容不一致,则说明产生所述预摘要文件与所述摘要文件的预升级包与所述升级包的内容存在差别,即所述升级包的安全校验结果为校验失败。
69.本发明实施例的技术方案,通过获取预升级包,并根据预升级包得到安全私钥、安全公钥与预摘要文件,之后通过安全私钥对预摘要文件进行签名,得到目标摘要文件,并基于目标摘要文件与预升级包,生成目标文件包,之后将升级包进行解压处理,得到升级包中包含的至少一个升级文件,并通过预设的摘要提取算法对升级包中包括的各升级文件进行处理,获取与各升级文件分别对应的各摘要数据,最后将各摘要数据进行组合,得到摘要文件,并基于摘要文件与目标文件包对升级包进行安全校验,实现了升级包安全性的校验,提高了升级包安全校验的可靠性,进而保证了升级包数据来源的完整性与可靠性,简化了升级包安全校验的流程,提高了安全校验工作的工作效率。
70.具体实施场景
71.为了更清楚的表述本发明实施例提供的技术方案,本实施例将一种根据本实施例得到的一种具体的实施场景进行简单介绍。
72.步骤1:生成目标文件包:
73.1)将各预升级文件指定摘要算法(sha256)生成目标摘要文件。
74.2)用私钥ca.key对目标摘要文件进行签名,生成签名后的数据。
75.3)将签名后的数据文件添加到预升级包中,生成目标文件包。
76.步骤2:如图2b所示,进行升级包的安全校验:
77.通过ota对升级包以及目标文件包进行下载,并对所述升级包进行解压操作,获得与所述升级包匹配的升级文件。
78.获取目标文件包中包含的带有签名数据的目标摘要文件,并使用匹配的公钥对所述目标摘要文件进行解密,获取原始的目标摘要文件。
79.通过sha256对升级文件进行处理,得到摘要文件。
80.将所述目标摘要文件与所述摘要文件进行一致性对比,如果一致则能确定升级包的发布方的安全性以及升级包的完整性,确认升级包安全且未被篡改。
81.实施例三
82.图3为本发明实施例三提供的一种升级包安全校验的装置的结构示意图。
83.如图3所示,该装置包括:
84.预升级包获取模块310,用于获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件;其中,所述预升级包中包括至少一个预升级文件;
85.签名模块320,用于通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件;
86.文件包生成模块330,用于基于目标摘要文件与所述预升级包,生成目标文件包;
87.校验模块340,用于获取升级包,并基于所述目标文件包对所述升级包进行安全校验。
88.本发明实施例的技术方案,通过获取预升级包,并根据预升级包得到安全私钥、安全公钥与预摘要文件,之后通过安全私钥对预摘要文件进行签名,得到目标摘要文件,并基
于目标摘要文件与预升级包,生成目标文件包,最后获取升级包,并基于目标文件包对升级包进行安全校验,实现了升级包安全性的校验,提高了升级包安全校验的可靠性,进而保证了升级包数据来源的完整性与可靠性,简化了升级包安全校验的流程,提高了安全校验工作的工作效率。
89.在上述实施例的基础上,预升级包获取模块310,进一步用于:
90.通过预设的摘要提取算法对所述预升级包中包括的各预升级文件进行处理,获取与各预升级文件分别对应的各预摘要数据;
91.将所述各预摘要数据进行组合,得到所述预摘要文件。
92.在上述实施例的基础上,签名模块320,进一步用于:
93.通过所述安全私钥对所述预摘要文件进行签名,获取与所述预摘要文件匹配的签名后数据;
94.将所述签名后数据添加至所述预摘要文件中,得到所述目标摘要文件。
95.在上述实施例的基础上,文件包生成模块330,进一步用于:
96.将所述目标摘要文件添加至所述预升级包中并进行文件压缩操作,生成所述目标文件包。
97.在上述实施例的基础上,校验模块340,还包括:
98.升级文件获取单元,用于将所述升级包进行解压处理,得到所述升级包中包含的至少一个升级文件;
99.摘要数据获取单元,用于通过预设的摘要提取算法对所述升级包中包括的各升级文件进行处理,获取与各升级文件分别对应的各摘要数据;
100.摘要文件组合单元,用于将所述各摘要数据进行组合,得到摘要文件;
101.安全校验单元,用于基于所述摘要文件与所述目标文件包对所述升级包进行安全校验。
102.在上述实施例的基础上,安全校验单元,进一步包括:
103.解密处理单元,用于通过所述安全公钥对所述目标文件包进行解密处理,获取所述目标文件包中包含的目标摘要文件;
104.预摘要文件提取单元,用于从所述目标摘要文件中提取所述预摘要文件;
105.结果获取单元,用于将所述预摘要文件与所述摘要文件进行一致性对比,获取所述升级包的安全校验结果。
106.在上述实施例的基础上,结果获取单元,进一步用于:
107.若所述预摘要文件与所述摘要文件之间存在一致性,则确定所述升级包的安全校验结果为校验成功;
108.若所述预摘要文件与所述摘要文件之间不存在一致性,则确定所述升级包的安全校验结果为校验失败。
109.本发明实施例所提供的升级包安全校验的装置可执行本发明任意实施例所提供的升级包安全校验的方法,具备执行方法相应的功能模块和有益效果。
110.实施例四
111.图4示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助
理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
112.如图4所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(rom)12、随机访问存储器(ram)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(rom)12中的计算机程序或者从存储单元18加载到随机访问存储器(ram)13中的计算机程序,来执行各种适当的动作和处理。在ram 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o)接口15也连接至总线14。
113.电子设备10中的多个部件连接至i/o接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
114.处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如升级包安全校验的方法。
115.相应的,该方法包括:
116.获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件;其中,所述预升级包中包括至少一个预升级文件;
117.通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件;
118.基于目标摘要文件与所述预升级包,生成目标文件包;
119.获取升级包,并基于所述目标文件包对所述升级包进行安全校验。
120.在一些实施例中,升级包安全校验的方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由rom 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到ram 13并由处理器11执行时,可以执行上文描述的升级包安全校验的方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行升级包安全校验的方法。
121.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
122.用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
123.在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
124.为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
125.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
126.计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
127.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。

技术特征:
1.一种升级包安全校验的方法,其特征在于,包括:获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件;其中,所述预升级包中包括至少一个预升级文件;通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件;基于目标摘要文件与所述预升级包,生成目标文件包;获取升级包,并基于所述目标文件包对所述升级包进行安全校验。2.根据权利要求1所述的方法,其特征在于,根据所述预升级包得到摘要文件,包括:通过预设的摘要提取算法对所述预升级包中包括的各预升级文件进行处理,获取与各预升级文件分别对应的各预摘要数据;将所述各预摘要数据进行组合,得到所述预摘要文件。3.根据权利要求1所述的方法,其特征在于,通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件,包括:通过所述安全私钥对所述预摘要文件进行签名,获取与所述预摘要文件匹配的签名后数据;将所述签名后数据添加至所述预摘要文件中,得到所述目标摘要文件。4.根据权利要求1所述的方法,其特征在于,基于目标摘要文件与所述预升级包,生成目标文件包,包括:将所述目标摘要文件添加至所述预升级包中并进行文件压缩操作,生成所述目标文件包。5.根据权利要求1所述的方法,其特征在于,获取升级包,并基于所述目标文件包对所述升级包进行安全校验,包括:将所述升级包进行解压处理,得到所述升级包中包含的至少一个升级文件;通过预设的摘要提取算法对所述升级包中包括的各升级文件进行处理,获取与各升级文件分别对应的各摘要数据;将所述各摘要数据进行组合,得到摘要文件;基于所述摘要文件与所述目标文件包对所述升级包进行安全校验。6.根据权利要求5所述的方法,其特征在于,基于所述摘要文件与所述目标文件包对所述升级包进行安全校验,包括:通过所述安全公钥对所述目标文件包进行解密处理,获取所述目标文件包中包含的目标摘要文件;从所述目标摘要文件中提取所述预摘要文件;将所述预摘要文件与所述摘要文件进行一致性对比,获取所述升级包的安全校验结果。7.根据权利要求6所述的方法,其特征在于,将所述预摘要文件与所述摘要文件进行一致性对比,获取所述升级包的安全校验结果,包括:若所述预摘要文件与所述摘要文件之间存在一致性,则确定所述升级包的安全校验结果为校验成功;若所述预摘要文件与所述摘要文件之间不存在一致性,则确定所述升级包的安全校验结果为校验失败。
8.一种升级包安全校验的装置,其特征在于,包括:预升级包获取模块,用于获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件;其中,所述预升级包中包括至少一个预升级文件;签名模块,用于通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件;文件包生成模块,用于基于目标摘要文件与所述预升级包,生成目标文件包;校验模块,用于获取升级包,并基于所述目标文件包对所述升级包进行安全校验。9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的升级包安全校验的方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的一种升级包安全校验的方法。

技术总结
本发明公开了一种升级包安全校验的方法、装置、设备及存储介质。该方法包括:获取预升级包、安全私钥与安全公钥,并根据所述预升级包得到预摘要文件;其中,所述预升级包中包括至少一个预升级文件;通过所述安全私钥对所述预摘要文件进行签名,得到目标摘要文件;基于目标摘要文件与所述预升级包,生成目标文件包;获取升级包,并基于所述目标文件包对所述升级包进行安全校验。通过本发明的技术方案,能够实现针对升级包安全性的验证,提高了升级包安全校验的可靠性,进而保证了升级包数据来源的完整性与可靠性,简化了升级包安全校验的流程,提高了安全校验工作的工作效率。提高了安全校验工作的工作效率。提高了安全校验工作的工作效率。


技术研发人员:江治民 王国伟 叶晓宾 陈甲印 崔玚
受保护的技术使用者:鸿湖万联(江苏)科技发展有限公司
技术研发日:2023.05.12
技术公布日:2023/8/13
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐