证书指纹动态更新和校验方法、装置、设备和存储介质与流程

文档序号:36098984发布日期:2023-11-21 07:37阅读:58来源:国知局
证书指纹动态更新和校验方法与流程

本发明涉及计算机应用,更为具体而言,涉及一种证书指纹动态更新和校验方法、装置、设备和存储介质。


背景技术:

1、app(应用程序)中如果不进行证书锁定校验,app被反编译后,黑客或不法分子会利用未绑定指向信任的业务服务漏洞,作为中间人篡改访问报文,直接改变银行汇款信息或窃取公司信息及资料,从而导致企业直接或间接的经济损失。为了防止app访问网络信任所有证书等导致中间人攻击的漏洞出现,业界普遍采用在app中锁定业务服务器证书的方式。

2、鉴于目前线上的业务服务器ca证书(由认证机构颁发的数字证书,用于证明网站的身份和安全性)有效期不是永久有效,如果ca证书过期则app的原证书比对会导致与服务器握手失败而无法与服务器直接通信,线上的业务功能就会受到影响,所以ca证书每次失效前都需要app更换新的ca证书并进行指纹校验或者更换新的ca证书指纹并进行指纹校验,再进行功能测试,上架应用市场,而app上应用市场又需要经过审核,过程繁琐。

3、目前市面上对于ca证书失效前的更换方法存在以下缺点:(1)通过推送把证书推送到app端,但是如果客户关闭推送则无法获取新证书,而且推送操作本身不能百分百保证将新证书推送到每个客户;(2)在ca证书过期前,app端通过接口获取新证书,然而该方法虽然解决了现有技术(1)的问题,但如果用户在ca证书过期前一直没有打开app,则app端在其ca证书过期后无法和服务器通信,导致app端无法取得最新证书。


技术实现思路

1、为解决上述现有技术存在的问题或至少部分问题,本发明实施方式提供了一种适用于app的证书指纹动态更新和校验方法、装置、设备和存储介质,app通过接口调用证书指纹分发服务的动态查询获取处于使用状态的证书指纹信息,避免了在app中内置证书等不安全行为,同时提高了证书管理的效率。

2、根据本发明的第一方面,本发明实施方式提供了一种适用于app的证书指纹动态更新方法,其包括:所述app启动时通过证书指纹分发服务的接口调用证书指纹分发服务;所述证书指纹分发服务通过内部证书指纹查询机制获取当前处于使用状态的证书指纹信息,并将所述证书指纹信息返回至所述app;所述app对所述证书指纹信息进行格式校验,并将符合规范的证书指纹信息进行存储。

3、根据本发明上述实施方式,app通过证书指纹分发服务的接口动态查询获取处于使用状态的证书指纹信息,使得app不直接管理证书,进而使用证书指纹等方式做证书校验,避免了在app中内置证书等不安全行为,同时,能够避免传统的ca证书过期需要修改证书锁定校验并重新打包和发布应用程序的缺点,提高了证书管理的效率并实现无感的用户体验。

4、在本发明的一些实施方式中,所述将符合规范的证书指纹信息进行存储包括:将所述符合规范的证书指纹信息进行加密并保存至所述app所在终端的隐私存储路径。

5、根据本发明上述实施方式,通过将证书指纹信息加密保存至app所在终端的隐私存储路径,可以实现具有安全性、隐私性和高效传输能力的证书指纹管理。并且,由于证书指纹信息数据极小,基本在几个字符以内,因此不会占用过多的存储空间。

6、在本发明的一些实施方式中,所述证书指纹分发服务根据app的aes加密口令对所述app进行身份认证,并在所述app的身份认证通过后将所述证书指纹信息返回至所述app。

7、根据本发明的第二方面,本发明实施方式提供了一种适用于app的证书指纹校验方法,其包括:当所述app向业务服务发出业务处理请求时,读取所述业务服务对应的服务器证书密钥指纹;获取根据前述更新方法中所述app存储的证书指纹信息;将所述服务器证书密钥指纹与所述app存储的证书指纹信息进行比对;当所述服务器证书密钥指纹与所述app存储的证书指纹信息不一致时,校验不通过,结束所述业务处理请求;当所述服务器证书密钥指纹与所述app存储的证书指纹信息一致时,校验通过,所述业务服务执行所述app的业务处理请求。

8、根据本发明上述实施方式,将app从证书指纹分发服务获取的证书指纹信息与业务服务对应的服务器证书密钥指纹进行比对,并在两者一致时使业务服务执行app发出的业务服务请求,由此,可以通过证书指纹实现证书校验,避免在app中内置证书等不安全行为。

9、根据本发明的第三方面,本发明实施方式提供了一种适用于app的证书指纹动态更新装置,其包括:接口调用模块,用于当所述app启动时通过证书指纹分发服务的接口调用证书指纹分发服务,其中,所述证书指纹分发服务通过内部证书指纹查询机制获取当前处于使用状态的证书指纹信息,并将所述证书指纹信息返回至所述app;证书指纹存储模块,用于对所述证书指纹信息进行格式校验,并将符合规范的证书指纹信息进行存储。

10、根据本发明上述实施方式,app通过证书指纹分发服务的接口动态查询获取处于使用状态的证书指纹信息,使得app不直接管理证书,进而使用证书指纹等方式做证书校验,避免了在app中内置证书等不安全行为,同时,能够避免传统的ca证书过期需要修改证书锁定校验并重新打包和发布应用程序的缺点,提高了证书管理的效率并实现无感的用户体验。

11、在本发明的一些实施方式中,所述将符合规范的证书指纹信息进行存储包括:将所述符合规范的证书指纹信息进行加密并保存至所述app所在终端的隐私存储路径。

12、根据本发明上述实施方式,通过将证书指纹信息加密保存至app所在终端的隐私存储路径,可以实现具有安全性、隐私性和高效传输能力的证书指纹管理。并且,由于证书指纹信息数据极小,基本在几个字符以内,因此不会占用过多的存储空间。

13、在本发明的一些实施方式中,所述证书指纹分发服务根据app的aes加密口令对所述app进行身份认证,并在所述app的身份认证通过后将所述证书指纹信息返回至所述app。

14、根据本发明的第四方面,本发明实施方式提供了一种适用于app的证书指纹校验装置,其包括:服务器证书密钥指纹获取模块,用于当所述app向业务服务发出业务处理请求时,读取所述业务服务对应的服务器证书密钥指纹;信息比对模块,用于将所述服务器证书密钥指纹与前述更新装置中证书指纹存储模块存储的证书指纹信息进行比对,当所述服务器证书密钥指纹与所述app存储的证书指纹信息不一致时校验不通过,结束所述业务处理请求;当所述服务器证书密钥指纹与所述app存储的证书指纹信息一致时校验通过,使所述业务服务执行所述app的业务处理请求。

15、根据本发明上述实施方式,将app从证书指纹分发服务获取的证书指纹信息与业务服务对应的服务器证书密钥指纹进行比对,并在两者一致时使业务服务执行app发出的业务服务请求,由此,可以通过证书指纹实现证书校验,避免在app中内置证书等不安全行为。

16、根据本发明的第五方面,本发明实施方式提供一种计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时,使得计算机执行如下操作:所述操作包括如上任意一种实施方式所述更新方法或校验方法所包含的步骤。

17、根据本发明的第六方面,本发明实施方式提供一种包括存储器和处理器的计算机设备,所述存储器用于存储一条或多条计算机可读指令,其中,所述一条或多条计算机可读指令被所述处理器执行时能够实现如上任意一种实施方式所述的更新方法或校验方法。

18、由上述可知,实施本发明提供的适用于app的证书指纹动态更新和校验方法、装置、设备和存储介质,app通过证书指纹分发服务的接口动态查询获取处于使用状态的证书指纹信息,使得app不直接管理证书,进而使用证书指纹等方式做证书校验,避免了在app中内置证书等不安全行为,同时,能够避免传统的ca证书过期需要修改证书锁定校验并重新打包和发布应用程序的缺点,提高了证书管理的效率并实现无感的用户体验。

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