一种基于原生桥接实现移动端H5国密改造的方法及系统技术方案

技术编号:38938570 阅读:15 留言:0更新日期:2023-09-25 09:39
本发明专利技术公开了一种基于原生桥接实现移动端H5国密改造的方法及系统。本发明专利技术的方法具体为:WebView将H5请求数据转发到原生桥接组件;原生桥接组件将H5请求数据提供给移动端原生国密通信组件;原生国密通信组件与目标服务器之间建立SSL链接,将H5请求数据通过SSL链接发送至目标服务器;目标服务器将响应信息通过加密隧道返回给移动端原生国密通信组件;原生国密通信组件解析目标服务器的响应信息,并将解密后的响应信息返回给原生桥接组件;原生桥接组件将移动端原生国密通信组件解密后的响应信息返回给WebView中的H5。本发明专利技术的方案降低了H5国密改造的成本,用户体验、性能、安全性和稳定性都得到了保障。稳定性都得到了保障。稳定性都得到了保障。

【技术实现步骤摘要】
一种基于原生桥接实现移动端H5国密改造的方法及系统


[0001]本专利技术属于移动端H5国密改造的技术实现,尤其涉及一种基于原生桥接的方式实现移动端H5国密改造的方法及系统。

技术介绍

[0002]目前移动端(Android和iOS)所使用的WebView以及其他第三方的WebView对国际算法(如RSA算法)默认支持但对国密算法支持不足。对于H5国密改造常用的方式主要有如下两种:
[0003]第一种方式如图示1所示,应用内启用SSL VPN服务。通过在应用内启用SSL VPN服务,拦截WebView中H5发出的请求,然后通过SSL VPN与目标服务器之间建立的一条加密通道对拦截到的来自WebView中H5的请求数据进行加密发送到目标服务器,目标服务器将服务响应数据返回给SSL VPN。SSL VPN将解密后的服务响应信息再返回给H5。以此实现国密安全通信的需求。
[0004]第二种方式,应用内启动Proxy代理服务。通过在应用内启动一个Proxy代理服务,H5不直接向目标服务器发送请求,而是将请求数据发送至代理服务。代理服务与目标服务器之间建立国密SSL链接,然后将H5请求数据发送至目标服务器,目标服务器将服务响应数据通过SSL隧道返回给Proxy代理服务。最后代理服务将解密后的服务响应数据再返回给H5,以此来完成国密安全通信需求。如图2所示。
[0005]以上两种方式从技术验证角度看可以达到国密改造的目的,但从实际应用角度看存在以下弊端:
[0006]第一种方式:
[0007]1.SSL VPN服务的首次启用,系统会弹出警告,提示用户可能存在应用数据被拦截并进行恶意篡改的安全隐患。不论是iOS,还是Android,首次启用都会弹出警告,弹框警告不可跳过且不可以自定义警告内容,用户只能选择允许或者拒绝。这将导致用户使用的心理负担增加,大大降低了用户体验。
[0008]2.SSL VPN服务的拦截是全局的,只要是满足要求的请求都会被拦截,包括其他应用发出的请求,容易造成其他应用不可用。
[0009]3.占用资源,影响性能,同时兼容性和稳定性也无法保证,特别是Android系统碎片化严重,很难保证SSL VPN能够真正的在不同设备上稳定性运行。
[0010]第二种方式:
[0011]1.需要在应用内额外启动Proxy代理服务,占用APP资源,影响性能。
[0012]2.稳定性无法保证,在低端移动设备上运行,系统资源紧张的时候,有可能导致无法正常运行。
[0013]可见以上两种H5国密改造方案在用户体验、性能、安全性、兼容性和稳定性方面都存在问题和缺陷,很难满足应用上线的标准。

技术实现思路

[0014]针对上述常用的H5国密改造技术存在的问题,本专利技术公开了一种基于原生桥接实现移动端H5国密改造的方法及系统,提高H5国密改造的安全性和稳定性。
[0015]为了实现上述专利技术目的,本专利技术采用的技术方案为:一种基于原生桥接实现移动端H5国密改造的方法,通过原生桥接的方式将H5请求转发给原生国密通信模块,原生国密通信模块加密H5请求数据,构造请求信息,与目标服务器之间建立国密SSL加密隧道,将加密后的H5请求数据发送至目标服务器。目标服务器通过加密隧道将服务响应信息返回给移动端原生国密通信模块,原生国密通信模块将解密后的明文数据再通过桥接返回给H5,由此来实现H5的国密改造。
[0016]上述方法具体包括以下步骤:
[0017]步骤一:WebView将H5请求数据转发到原生桥接组件;
[0018]步骤二:原生桥接组件将H5请求数据提供给移动端原生国密通信组件;
[0019]步骤三:原生国密通信组件与目标服务器之间建立SSL链接,将H5请求数据通过SSL链接发送至目标服务器;
[0020]步骤四:目标服务器将响应信息通过加密隧道返回给移动端原生国密通信组件;
[0021]步骤五:原生国密通信组件解析目标服务器的响应信息,并将解密后的响应信息返回给原生桥接组件;
[0022]步骤六:原生桥接组件将移动端原生国密通信组件解密后的响应信息返回给WebView中的H5。
[0023]进一步的,封装原生桥接组件的方法为:
[0024]定义H5与原生的接口通信协议,封装JavaScript桥接,将JavaScript对象和方法注入到webview中;接着根据定义的接口通信协议,封装原生桥接组件,并将原生桥接组件对象注入到webview中;以此实现H5与原生的双向通信能力。
[0025]进一步的,实现符合国密标准的原生国密通信模块的方法为:
[0026]对原生通信库的SSL层协议和密码套件进行国密改造,SSL层协议增加支持GMSSL协议(包括数据类型的定义,记录层协议,握手协议族,密钥计算等),密码套件增加支持国密算法,如SM1/SM2/SM3/SM4/SM9等。以此来实现符合国密标准的原生国密通信模块。
[0027]进一步的,通过原生桥接组件转发H5请求的方法为:
[0028]基于上述的原生桥接组件和原生国密通信模块的实现,H5通过调用原生桥接组件将请求数据转发给原生国密通信模块,原生国密通信模块与目标服务器之间建立国密SSL链接,将H5请求数据通过支持国密算法的密码套件进行加密并发送至目标服务器;目标服务器处理H5请求数据后得到响应信息,利用支持国密算法的密码套件加密响应信息并发送给原生国密通信模块,原生国密通信模块将响应信息再通过原生桥接组件返回给H5。
[0029]作为优选的,原生国密通信组件先利用国密算法加密H5请求数据,再将加密后的H5请求数据通过SSL链接发送至目标服务器;目标服务器解密H5请求数据,再处理后得到响应信息。
[0030]作为优选的,目标服务器先利用国密算法加密响应信息,再将加密后的响应信息通过SSL链接发送至原生国密通信组件;原生国密通信组件解密响应信息,将解密后的响应信息再通过原生桥接组件返回给H5。
[0031]本专利技术还公开一种基于原生桥接实现移动端H5国密改造的系统,包括能够执行权利要求上述的基于原生桥接实现移动端H5国密改造的方法的原生桥接组件、原生国密通信组件;
[0032]原生桥接组件,原生桥接组件具备H5与原生之间的双向通信能力;将WebView的H5请求数据转发至原生国密通信组件,将原生国密通信组件解密后的数据返回给WebView中的H5;
[0033]原生国密通信组件,原生国密通信组件符合国密标准;原生国密通信组件对H5请求数据进行加密,然后通过原生国密通信组件与目标服务器之间建立国密SSL链接,将加密后的H5请求数据通过加密隧道发送至目标服务器;原生国密通信组件解析目标服务器的响应信息,并将解密后的数据传输给原生桥接组件。
[0034]进一步的,原生国密通信组件还包括第一加密模块,所述第一加密模块利用国密算法加密H5请求数据;还在目标服务器中设置第一解密模块,所述第一解密本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于原生桥接实现移动端H5国密改造的方法,其特征在于,包括以下步骤:步骤一:WebView将H5请求数据转发到原生桥接组件;步骤二:原生桥接组件将H5请求数据提供给移动端原生国密通信组件;步骤三:原生国密通信组件与目标服务器之间建立SSL链接,将H5请求数据通过SSL链接发送至目标服务器;步骤四:目标服务器将响应信息通过加密隧道返回给移动端原生国密通信组件;步骤五:原生国密通信组件解析目标服务器的响应信息,并将解密后的响应信息返回给原生桥接组件;步骤六:原生桥接组件将移动端原生国密通信组件解密后的响应信息返回给WebView中的H5。2.根据权利要求1所述的基于原生桥接实现移动端H5国密改造的方法,其特征在于,封装原生桥接组件的方法为:定义H5与原生的接口通信协议,封装JavaScript桥接,将JavaScript对象和方法注入到webview中;接着根据定义的接口通信协议,封装原生桥接组件,并将原生桥接组件对象注入到webview中;以此实现H5与原生的双向通信能力。3.根据权利要求1或2所述的基于原生桥接实现移动端H5国密改造的方法,其特征在于,实现符合国密标准的原生国密通信模块的方法为:对原生通信库的SSL层协议和密码套件进行国密改造,SSL层协议增加支持GMSSL协议,密码套件增加支持国密算法,实现符合国密标准的原生国密通信模块。4.根据权利要求3所述的基于原生桥接实现移动端H5国密改造的方法,其特征在于,通过原生桥接组件发送H5请求数据的方法为:H5通过调用原生桥接组件将请求数据转发给原生国密通信模块,原生国密通信模块与目标服务器之间建立国密SSL链接,并将H5请求数据通过支持国密算法的密码套件进行加密并发送至目标服务器;目标服务器处理H5请求数据后得到响应信息,利用支持国密算法的密码套件加密响应信息并发送给原生国密通信模块,原生国密通信模块将响应信息再通过原生桥接组件返回给H5。5.根据权...

【专利技术属性】
技术研发人员:施耀祖王杰勋
申请(专利权)人:南京壹证通信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1