为软件包处理签名的方法、装置及电子设备与流程
- 国知局
- 2024-10-15 09:40:29
本技术涉及软件安全,尤其涉及一种为软件包处理签名的方法、装置及电子设备。
背景技术:
1、互联网是一个面向大众的开放系统,对于信息的安全性考虑得并不完备,由此引起的信息安全问题日益严重。
2、信息安全问题涉及到国家安全、社会公共安全及重大国家利益,是互联网经济的制高点,也是推动互联网发展、电子政务和电子商务的关键,发展信息安全技术是目前面临的迫切要求。
3、但目前多数软件包没有采用国密算法,导致软件项目面临更高的信息安全风险。
技术实现思路
1、鉴于上述问题,本技术提供了一种为软件包处理签名的方法、装置及电子设备,以实现为软件包处理国密签名以提高信息安全的目的。具体方案如下:
2、本技术第一方面提供一种为软件包处理签名的方法,所述方法包括:
3、响应于签名添加指令,获得所述软件包中的文件内容;
4、根据所述文件内容,调用第一国密算法对应的第一签名接口,以得到所述第一签名接口返回的第一签名数据;
5、根据所述第一签名数据,调用第二国密算法对应的第二签名接口,以得到所述第二签名接口返回的第二签名数据;
6、根据所述第一签名数据和所述第二签名数据,获得签名概要信息,所述签名概要信息至少表征所述第一国密算法的算法类型和所述第二国密算法的算法类型;
7、在所述软件包中添加所述签名概要信息、所述第一签名数据和所述第二签名数据。
8、在一种可能的实现中,所述方法还包括:
9、根据所述签名概要信息,更新所述软件包中用于记录签名概要条数的字段值,所述签名概要条数为所述软件包中所包含的签名概要信息的数量;
10、根据所述第一签名数据和所述第二签名数据,更新所述软件包中用于记录签名长度的字段值,所述签名长度为所述软件包中所包含的签名数据的长度。
11、在一种可能的实现中,所述方法还包括:
12、响应于软件安装指令,从所述软件包中读取所述第一国密算法对应的签名概要信息;
13、如果在所述软件包中没有读取到所述第一国密算法对应的签名概要信息,获得第一验证结果,所述第一验证结果表征所述软件包没有通过国密算法的签名验证;
14、如果在所述软件包中读取到所述第一国密算法对应的签名概要信息,根据所述第一国密算法对应的签名概要信息,从所述软件包读取所述第一国密算法对应的第一签名数据;
15、根据读取到的第一签名数据,调用所述第二国密算法对应的第二签名接口,以得到所述第二签名接口返回的第三签名数据;
16、将所述第三签名数据与从所述软件包读取到的第二签名数据进行比对;
17、如果所述第三签名数据与从所述软件包读取到的第二签名数据比对不一致,获得所述第一验证结果;
18、如果所述第三签名数据与从所述软件包读取到的第二签名数据比对一致,根据所述软件包中的文件内容和所述软件包中的第一签名数据,调用所述第一国密算法对应的验签接口,以得到所述验签接口返回的签名验证结果;
19、在所述签名验证结果表征所述软件包中的文件内容与所述软件包中的第一签名数据验证通过的情况下,执行所述软件包的安装流程;
20、在所述签名验证结果表征所述软件包中的文件内容与所述软件包中的第一签名数据验证不通过的情况下,获得所述第一验证结果。
21、在一种可能的实现中,所述方法还包括:
22、响应于签名验证指令,从所述软件包中读取所述第一国密算法对应的签名概要信息;
23、如果在所述软件包中没有读取到所述第一国密算法对应的签名概要信息,获得第一验证结果,所述第一验证结果表征所述软件包没有通过国密算法的签名验证;
24、如果在所述软件包中读取到所述第一国密算法对应的签名概要信息,根据所述第一国密算法对应的签名概要信息,从所述软件包读取所述第一国密算法对应的第一签名数据;
25、根据读取到的第一签名数据,调用所述第二国密算法对应的第二签名接口,以得到所述第二签名接口返回的第三签名数据;
26、将所述第三签名数据与从所述软件包读取到的第二签名数据进行比对;
27、如果所述第三签名数据与从所述软件包读取到的第二签名数据比对不一致,获得所述第一验证结果;
28、如果所述第三签名数据与从所述软件包读取到的第二签名数据比对一致,根据所述软件包中的文件内容和所述软件包中的第一签名数据,调用所述第一国密算法对应的验签接口,以得到所述验签接口返回的签名验证结果;
29、在所述签名验证结果表征所述软件包中的文件内容与所述软件包中的第一签名数据验证通过的情况下,获得第二验证结果,所述第二验证结果表征所述软件包通过国密算法的签名验证;
30、在所述签名验证结果表征所述软件包中的文件内容与所述软件包中的第一签名数据验证不通过的情况下,获得所述第一验证结果。
31、在一种可能的实现中,从所述软件包中读取所述第一国密算法对应的签名概要信息,包括:
32、在所述软件包中读取算法类型与所述第一国密算法相匹配的签名概要信息。
33、在一种可能的实现中,根据所述第一国密算法对应的签名概要信息,从所述软件包读取所述第一国密算法对应的所述第一签名数据,包括:
34、从所述软件包中,至少按照所述第一国密算法对应的签名概要信息所记录的数据地址,读取所述第一国密算法对应的所述第一签名数据。
35、在一种可能的实现中,所述方法还包括:
36、响应于签名删除指令,删除所述软件包中所述第一国密算法对应的签名概要信息和所述第二国密算法对应的签名概要信息。
37、在一种可能的实现中,在获得所述软件包中的文件内容之前,所述方法还包括:
38、确定所述软件包满足第一条件;
39、其中,所述软件包满足第一条件,包括:国密配置项存在,且,所述软件包中没有所述第一国密算法对应的签名概要信息。
40、本技术第二方面提供一种为软件包处理签名的装置,所述装置包括:
41、内容获得单元,用于响应于签名添加指令,获得所述软件包中的文件内容;
42、第一签名单元,用于根据所述文件内容,调用第一国密算法对应的第一签名接口,以得到所述第一签名接口返回的第一签名数据;
43、第二签名单元,用于根据所述第一签名数据,调用第二国密算法对应的第二签名接口,以得到所述第二签名接口返回的第二签名数据;
44、概要获得单元,用于根据所述第一签名数据和所述第二签名数据,获得签名概要信息,所述签名概要信息至少表征所述第一国密算法的算法类型和所述第二国密算法的算法类型;
45、签名添加单元,用于在所述软件包中添加所述签名概要信息、所述第一签名数据和所述第二签名数据。
46、本技术第三方面提供一种计算机程序产品,包括计算机可读指令,当所述计算机可读指令在电子设备上运行时,使得所述电子设备实现上述第一方面或第一方面任一实现方式的为软件包处理签名的方法。
47、本技术第四方面提供一种电子设备,包括至少一个处理器和与所述处理器连接的存储器,其中:
48、所述存储器用于存储计算机程序;
49、所述处理器用于执行所述计算机程序,以使所述电子设备能够实现上述第一方面或第一方面任一实现方式的为软件包处理签名的方法。
50、本技术第五方面提供一种计算机存储介质,所述存储介质承载有一个或多个计算机程序,当所述一个或多个计算机程序被电子设备执行时,能够使所述电子设备上述第一方面或第一方面任一实现方式的为软件包处理签名的方法。
51、借由上述技术方案,本技术提供的一种为软件包处理签名的方法、装置及电子设备中,在软件包需要添加国密签名时,响应于签名添加指令,先获得软件包中的文件内容,然后根据文件内容调用第一国密算法对应的签名接口,以得到签名接口返回的第一签名数据;之后,再根据第一签名数据调用第二国密算法对应的签名接口,以得到签名接口返回的第二签名数据,这样就可以在获得相应的签名概要信息之后在软件包中添加签名概要信息和这两个签名数据。可见,本技术中可以利用国密算法提供的签名接口为软件包获得签名数据及相应的签名概要信息,由此在软件包中添加签名数据和签名概要信息之后,能够使得软件包受国密签名保护,从而提高软件包的安全性。
本文地址:https://www.jishuxx.com/zhuanli/20241015/314965.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表