System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,尤其涉及一种数据传输方法、装置、电子设备及存储介质。
技术介绍
1、相关技术中,在终端与服务端进行数据传输时,面临的一个重要的挑战是防止数据被盗刷或者伪造,即伪造真正的终端请求或者篡改其中的关键信息。举例来说,对于广告投放服务而言,通过请求广告服务接口,可以从响应数据中提取广告的计费链接,然后直接使用该链接发起计费请求,这会对广告服务产生数据被盗刷或者伪造等严重的不良影响。
2、目前,通常采用的固定的请求签名方法对响应数据进行整体加密;或者,在终端向服务端发送数据请求时,采用的固定的请求签名方法对请求的数据直接进行加密处理,但是此类方法防盗刷伪造效果不好。
技术实现思路
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、所述将所述签名值添加至所述原始请本文档来自技高网...
【技术保护点】
1.一种数据传输方法,其特征在于,所述方法应用于终端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述签名算法用于指示生成所述原始请求的签名值的算法;以及
3.根据权利要求2所述的方法,其特征在于,所述终端信息还包括所述终端的目标应用的应用版本,所述目标应用为所述终端安装的应用;以及
4.根据权利要求3所述的方法,其特征在于,所述算法信息包含于所述服务端发送的配置信息中,其中,所述配置信息用于配置所述目标应用。
5.根据权利要求2所述的方法,其特征在于,所述签名值包括签名字段的字段值,所述签名算法用于指示对所述字段值进行处理的算法;以及
6.根据权利要求2所述的方法,其特征在于,所述签名值包括随机数,所述签名算法用于指示对所述随机数进行处理的算法;以及
7.根据权利要求1所述的方法,其特征在于,所述按照所述签名算法,对所述原始请求进行签名,包括:
8.一种数据传输装置,其特征在于,所述装置设置于终端,所述装置包括:
9.一种电子设备,其特征在于,包括:
10.
...【技术特征摘要】
1.一种数据传输方法,其特征在于,所述方法应用于终端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述签名算法用于指示生成所述原始请求的签名值的算法;以及
3.根据权利要求2所述的方法,其特征在于,所述终端信息还包括所述终端的目标应用的应用版本,所述目标应用为所述终端安装的应用;以及
4.根据权利要求3所述的方法,其特征在于,所述算法信息包含于所述服务端发送的配置信息中,其中,所述配置信息用于配置所述目标应用。
5.根据权利要求2所述的方法,其特征在于,所述签名值包括签名字段的字段值,所述签名算...
【专利技术属性】
技术研发人员:高耀东,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。