System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开属于通信,尤其涉及一种用于http的保密通信方法及系统。
技术介绍
1、本部分的陈述仅仅是提供了与本公开相关的
技术介绍
信息,不必然构成在先技术。
2、在当前i t技术中,无论是通过手机访问app、微信小程序,还是通过pc电脑访问网页,最终都是要访问后台服务。而后台服务的访问通常以http接口为单位。专利技术人发现,使用传统的http接口接收和返回的数据,存在以下安全问题:
3、窃听风险:由于http是明文传输协议,数据在传输过程中未加密,因此可能被攻击者窃听并获取敏感信息,如用户名、密码、银行卡号等;
4、中间人攻击:攻击者可以在传输过程中截取数据包并进行篡改或注入恶意内容,从而实施攻击;
5、csrf(跨站请求伪造)攻击:攻击者可以伪造用户已认证的请求,以用户的身份执行恶意操作,例如恶意提交表单、发起请求等;
6、数据篡改:攻击者可以截获数据并对其进行修改,从而对web应用程序进行攻击。
7、当前虽然存在一些简单的解决办法,如将http封装为https,但https仍然存在风险,具体表现在:
8、证书被劫持或伪造:攻击者可能会在中间人攻击中劫持或伪造证书,导致用户访问的是假冒的网站或受到中间人攻击;使用弱加密算法或老旧版本:如果使用弱加密算法或老旧版本的ssl/tls协议,https连接可能会被破解或窃听,从而泄露敏感信息;
9、错误配置或不当设置:在设置https时,可能会出现错误配置或不当设置,例如未正确使用http st
技术实现思路
1、本公开为了解决上述问题,提供了一种用于http的保密通信方法及系统,所述方案通过采用自主设计的edfp(encryptdatafi lterpay load)格式进行http通信,通过sm2-sm3-sm4国密算法对http的传输数据进行加解密和数据抽取整合,实现对数据的加密传输,在http通信过程中,数据以密文形式传输,能够有效保证其无法被截取或破解,确保数据传输过程中的完全保密性;同时,所述方案通过采用请求或返回时间范围的加密传输,有效防止了http通信过程中的重放攻击问题。
2、根据本公开实施例的第一个方面,提供了一种用于http的保密通信方法,其应用于请求端,包括:
3、在进行数据请求时,自动生成sm4密钥,并基于sm4密钥对当前请求包含的明文数据进行加密,获得第一加密请求数据;其中,所述明文数据为接口参数;
4、采用sm4密钥加密请求时间范围,获得第二加密请求数据;采用预先存储的sm2公钥加密sm4密钥,获得第三加密请求数据;采用sm3算法获取所述明文数据以及请求时间范围的数据摘要;
5、将所述第一加密请求数据、第二加密请求数据、第三加密请求数据以及数据摘要进行组合,并以请求报文的方式发送至响应端;
6、接收来自响应端的所述请求报文对应的响应报文,通过对响应报文中的数据进行解密,获得请求的明文数据。
7、进一步的,所述通过对响应报文中的数据进行解密,获得请求的明文数据,具体为:
8、接收响应端返回的响应报文;
9、基于预先存储的sm2私钥对响应报文中的第三加密返回数据进行解密,获得解密后的sm4密钥;
10、基于sm4密钥对响应报文中的第一加密返回数据进行解密,获得明文数据;
11、基于sm3算法提取明文数据的数据摘要,并与响应报文中的数据摘要进行比对,若比对一致,则基于获得的明文数据进行页面展示。
12、进一步的,当对比结果不一致,则进行错误提示;以及,基于sm4密钥对响应报文中的第二加密返回数据进行解密,获得返回时间范围,若当前时间超出所述返回时间范围,则终止本次数据请求。
13、进一步的,所述请求端,每次进行数据请求时,均自动生成新的sm4密钥。
14、根据本公开实施例的第二个方面,提供了一种用于http的保密通信方法,其应用于响应端,包括:
15、接收来自请求端的数据请求报文;
16、基于预先存储的sm2私钥对请求报文中的第三加密请求数据进行解密,获得解密后的sm4密钥;
17、基于sm4密钥对请求报文中的第一加密请求数据进行解密,获得明文数据;
18、基于sm3算法提取明文数据的数据摘要,并与请求报文中的数据摘要进行比对,若比对一致,则基于所述明文数据中的参数信息,将请求端请求的数据加密后发送至请求端。
19、进一步的,当对比结果不一致,则终止本次数据请求;以及,基于sm4密钥对请求报文中的第二加密请求数据进行解密,获得请求时间范围,若当前时间超出所述请求时间范围,则终止本次数据请求。
20、进一步的,所述将请求端请求的数据加密后发送至请求端,具体为:
21、在进行数据返回时,自动生成sm4密钥,并基于sm4密钥对返回的明文数据进行加密,获得第一加密返回数据;
22、采用sm4密钥加密返回时间范围,获得第二加密返回数据;采用预先存储的sm2公钥加密sm4密钥,获得第三加密返回数据;采用sm3算法获取返回的明文数据以及返回时间范围的数据摘要;
23、将所述第一加密返回数据、第二加密返回数据、第三加密返回数据以及数据摘要进行组合,并以返回报文的方式发送至请求端。
24、进一步的,所述响应端,每次进行数据返回时,均自动生成新的sm4密钥。
25、根据本公开实施例的第三个方面,提供了一种用于http的保密通信方法,包括上述应用于请求端的一种用于http的保密通信方法,以及上述应用于响应端的一种用于http的保密通信方法。
26、根据本公开实施例的第四个方面,提供了一种用于http的保密通信系统,包括:
27、请求端,其用于执行上述应用于请求端的一种用于http的保密通信方法;
28、响应端,其用于执行上述应用于响应端的一种用于http的保密通信方法。
29、与现有技术相比,本公开的有益效果是:
30、本公开提供了一种用于http的保密通信方法及系统,所述方案通过采用自主设计的edfp格式进行http通信,通过sm2-sm3-sm4国密算法对http的传输数据进行加解密和数据抽取整合,实现对数据的加密传输,在http通信过程中,数据以密文形式传输,能够有效保证其无法被截取或破解,确保数据传输过程中的完全保密性;同时,所述方案通过采用请求或返回时间范围的加密传输,有效防止了http通信过程中的重放攻击问题。
31、本公开附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
本文档来自技高网...【技术保护点】
1.一种用于HTTP的保密通信方法,其应用于请求端,其特征在于,包括:
2.如权利要求1所述的一种用于HTTP的保密通信方法,其特征在于,所述通过对响应报文中的数据进行解密,获得请求的明文数据,具体为:
3.如权利要求2所述的一种用于HTTP的保密通信方法,其特征在于,当对比结果不一致,则进行错误提示;以及,基于sm4密钥对响应报文中的第二加密返回数据进行解密,获得返回时间范围,若当前时间超出所述返回时间范围,则终止本次数据请求。
4.如权利要求1所述的一种用于HTTP的保密通信方法,其特征在于,所述请求端,每次进行数据请求时,均自动生成新的sm4密钥。
5.一种用于HTTP的保密通信方法,其应用于响应端,其特征在于,包括:
6.如权利要求5所述的一种用于HTTP的保密通信方法,其特征在于,当对比结果不一致,则终止本次数据请求;以及,基于sm4密钥对请求报文中的第二加密请求数据进行解密,获得请求时间范围,若当前时间超出所述请求时间范围,则终止本次数据请求。
7.如权利要求5所述的一种用于HTTP的保密通信方法
8.如权利要求5所述的一种用于HTTP的保密通信方法,其特征在于,所述响应端,每次进行数据返回时,均自动生成新的sm4密钥。
9.一种用于HTTP的保密通信方法,其特征在于,包括如权利要求1-4任一项所述的应用于请求端的一种用于HTTP的保密通信方法,以及如权利要求5-8任一项所述的应用于响应端的一种用于HTTP的保密通信方法。
10.一种用于HTTP的保密通信系统,其特征在于,包括:
...【技术特征摘要】
1.一种用于http的保密通信方法,其应用于请求端,其特征在于,包括:
2.如权利要求1所述的一种用于http的保密通信方法,其特征在于,所述通过对响应报文中的数据进行解密,获得请求的明文数据,具体为:
3.如权利要求2所述的一种用于http的保密通信方法,其特征在于,当对比结果不一致,则进行错误提示;以及,基于sm4密钥对响应报文中的第二加密返回数据进行解密,获得返回时间范围,若当前时间超出所述返回时间范围,则终止本次数据请求。
4.如权利要求1所述的一种用于http的保密通信方法,其特征在于,所述请求端,每次进行数据请求时,均自动生成新的sm4密钥。
5.一种用于http的保密通信方法,其应用于响应端,其特征在于,包括:
6.如权利要求5所述的一种用于http的保密通信...
【专利技术属性】
技术研发人员:徐景龙,吴佐平,古敬彬,甄宗,刘若怡,王斌,
申请(专利权)人:北京中电普华信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。