一种数据验证方法、装置及电子设备制造方法及图纸

技术编号:35451151 阅读:10 留言:0更新日期:2022-11-03 12:06
本申请公开了一种数据验证方法、装置及电子设备,涉及网络安全技术领域。其中,客户端对应的数据验证方法包括:根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到当前时间对应的第一口令,进一步将包含第一口令的第一业务请求发送给所述服务端,用于服务端根据第一口令对第一业务请求进行重放攻击验证和/或被篡改验证。通过上述方法,客户端生成当前时间对应的口令,以使服务端根据口令对业务请求进行验证,防止业务请求存在重放攻击和/或被篡改风险。或被篡改风险。或被篡改风险。

【技术实现步骤摘要】
一种数据验证方法、装置及电子设备


[0001]本申请涉及网络安全
,特别是涉及一种数据验证方法、装置及电子设备。

技术介绍

[0002]在网络安全领域,在客户端向服务端发送业务请求时,可能会存在重放攻击和业务请求被篡改的风险。其中,重放攻击(Replay Attacks)又称重播攻击(Playback Attack)或新鲜性攻击(Freshness Attacks),是指攻击者拦截并重发一个服务端已接收过的数据包,进而来达到欺骗服务端的目的。因此,为了防止重放攻击和传输数据被篡改,亟需一种对业务请求进行合规验证的方法。

技术实现思路

[0003]本申请公开了一种数据验证方法、装置及电子设备,基于当前时间对应的动态口令对业务请求进行验证,防止业务请求存在重放攻击和/或被篡改风险。
[0004]第一方面,本申请提供了一种数据验证方法,所述方法包括:
[0005]根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到所述当前时间对应的第一口令;
[0006]将包含所述第一口令的第一业务请求发送给所述服务端,用于所述服务端根据所述第一口令对所述第一业务请求进行重放攻击验证和/或被篡改验证。
[0007]通过上述方法,客户端生成当前时间对应的口令,以使服务端根据口令对业务请求进行验证,防止业务请求存在重放攻击和/或被篡改风险。
[0008]在一种可能的设计中,在所述根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到所述当前时间对应的第一口令之前,还包括:
[0009]获取所述当前时间与指定时间之间的差值;
[0010]根据所述差值和时间步长,计算所述当前时间对应的第一数值,其中,所述时间步长表征生成所述第一口令的间隔时长。
[0011]通过上述方法,获取得到当前时间对应的数值。
[0012]在一种可能的设计中,所述根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到所述当前时间对应的第一口令,包括:
[0013]对所述第一数值及所述密钥串进行加密计算,得到所述当前时间对应的加密字符串;
[0014]在所述加密字符串中确定出目标字符串,并将所述目标字符串作为所述当前时间对应的第一口令。
[0015]通过上述方法,生成当前时间对应的第一口令。
[0016]在一种可能的设计中,在所述将包含所述第一口令的第一业务请求发送给所述服务端之前,还包括:
[0017]生成第一随机数;
[0018]对包含所述第一随机数、所述第一口令的第二业务请求进行签名,得到第一签名值;
[0019]将所述第一签名值、所述第一随机数、所述第一口令以及所述第二业务请求组成的数据包,作为所述第一业务请求。
[0020]通过上述方法,在业务请求中携带随机数及请求入参对应的签名值,为后续业务请求验证创造条件。
[0021]第二方面,本申请还提供了一种数据验证方法,所述方法包括:
[0022]接收客户端发送的第一业务请求,其中,所述第一业务请求中至少包括第一口令;
[0023]基于所述第一口令,对所述第一业务请求进行重放攻击验证和/或被篡改验证。
[0024]通过上述方法,服务端基于客户端生成的口令对业务请求进行验证,防止业务请求存在重放攻击和/或被篡改风险。
[0025]在一种可能的设计中,基于所述第一口令,对所述第一业务请求进行重放攻击验证,包括:
[0026]根据当前时间对应的第二数值以及本地数据库中的密钥串,计算得到所述当前时间对应的第二口令;
[0027]在所述第二口令与所述第一口令一致时,判断本地数据库中的第二随机数与所述第一业务请求中的第一随机数是否一致,其中,所述第二随机数与所述第一随机数基于相同的算法及数据生成;
[0028]若所述第二随机数与所述第一随机数不一致,则确定所述第一业务请求被重放攻击。
[0029]通过上述方法,结合口令及随机数对业务请求进行双重验证,防止业务请求被重放攻击。
[0030]在一种可能的设计中,基于所述第一口令,对所述第一业务请求进行被篡改验证,包括:
[0031]根据当前时间对应的第三数值以及本地数据库中的密钥串,计算得到所述当前时间对应的第三口令;
[0032]在所述第三口令与所述第一口令一致时,判断本地数据库中的第二签名值与所述第一业务请求中的第一签名值是否一致,其中,所述第二签名值与所述第一签名值基于相同的算法及数据生成;
[0033]若所述第二签名值与所述第一签名值不一致,则确定所述第一业务请求被篡改。
[0034]通过上述方法,结合口令及签名值对业务请求进行双重验证,防止业务请求被篡改。
[0035]第三方面,本申请提供了一种数据验证装置,所述装置包括:
[0036]第一计算模块,用于根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到所述当前时间对应的第一口令;
[0037]发送模块,用于将包含所述第一口令的第一业务请求发送给所述服务端,用于所述服务端根据所述第一口令对所述第一业务请求进行重放攻击验证和/或被篡改验证。
[0038]在一种可能的设计中,所述装置还包括:
[0039]获取模块,用于获取所述当前时间与指定时间之间的差值;
[0040]第二计算模块,用于根据所述差值和时间步长,计算所述当前时间对应的第一数值,其中,所述时间步长表征生成所述第一口令的间隔时长。
[0041]在一种可能的设计中,所述第一计算模块具体用于:
[0042]对所述第一数值及所述密钥串进行加密计算,得到所述当前时间对应的加密字符串;
[0043]在所述加密字符串中确定出目标字符串,并将所述目标字符串作为所述当前时间对应的第一口令。
[0044]在一种可能的设计中,所述装置还包括:
[0045]生成模块,用于生成第一随机数;
[0046]签名模块,用于对包含所述第一随机数、所述第一口令的第二业务请求进行签名,得到第一签名值;
[0047]确定模块,用于将所述第一签名值、所述第一随机数、所述第一口令以及所述第二业务请求组成的数据包,作为所述第一业务请求。
[0048]第四方面,本申请还提供了一种数据验证装置,所述装置包括:
[0049]接收模块,用于接收客户端发送的第一业务请求,其中,所述第一业务请求中至少包括第一口令;
[0050]验证模块,用于基于所述第一口令,对所述第一业务请求进行重放攻击验证和/或被篡改验证。
[0051]在一种可能的设计中,所述验证模块具体用于:
[0052]根据当前时间对应的第二数值以及本地数据库中的密钥串,计算得到所述当前时间对应的第二口令;
[0053]在所述第二口令与所述第一口令一致时,判断本地数据库中的第二随机数与所述第一业务请求中的第一随机数是否一致,其中,所述第二随机数与所述第一随机数基于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据验证方法,其特征在于,所述方法包括:根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到所述当前时间对应的第一口令;将包含所述第一口令的第一业务请求发送给所述服务端,用于所述服务端根据所述第一口令对所述第一业务请求进行重放攻击验证和/或被篡改验证。2.如权利要求1所述的方法,其特征在于,在所述根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到所述当前时间对应的第一口令之前,还包括:获取所述当前时间与指定时间之间的差值;根据所述差值和时间步长,计算所述当前时间对应的第一数值,其中,所述时间步长表征生成所述第一口令的间隔时长。3.如权利要求1所述的方法,其特征在于,所述根据当前时间对应的第一数值以及服务端生成的密钥串,计算得到所述当前时间对应的第一口令,包括:对所述第一数值及所述密钥串进行加密计算,得到所述当前时间对应的加密字符串;在所述加密字符串中确定出目标字符串,并将所述目标字符串作为所述当前时间对应的第一口令。4.如权利要求1所述的方法,其特征在于,在所述将包含所述第一口令的第一业务请求发送给所述服务端之前,还包括:生成第一随机数;对包含所述第一随机数、所述第一口令的第二业务请求进行签名,得到第一签名值;将所述第一签名值、所述第一随机数、所述第一口令以及所述第二业务请求组成的数据包,作为所述第一业务请求。5.一种数据验证方法,其特征在于,所述方法包括:接收客户端发送的第一业务请求,其中,所述第一业务请求中至少包括第一口令;基于所述第一口令,对所述第一业务请求进行重放攻击验证和/或被篡改验证。6.如权利要求5所述的方法,其特征在于,基于所述第一口令,对所述第一业务请求进行重放攻击验证,包括:根据当前时间对应的第二数值以及本地数据库中的密钥串,计算得到所述当前时间对应的第二口令;在所述第二口令与所述第一口令一致时,判断本地数据库中的第二随机数与所述第一业务请求中的第一随机数是否一致,其中,所述第二随机数与所述第一随机数基于相同的算法及数据生成;若所述第二随机数与所述第一随机数不一致,则确定所述第一业务请求被重放攻击。7.如权利要求5所述的方法,其特征在于,基于所述第一口令,对所述第一业务请求进行被篡改验证,包括:根据当前时间对应的第三数值以及本地数据库中的密钥串,计算得到所述当前时间对应的第三口令;在所述第三口令与所述第一口令一致时,判断本地数据库中的第二签名值与所述第一业务请求中的第一签名值是否一致,其中,所述第二签名值与所述第一签名值基于相同的算法及数据生成;
若所述第二签名值与所述第一签名值不一致,则确定所述第一业务请求被篡改。8.一种数据验证装置,其特征在于,所述装置包括:第一计算模块,用于根据当前时间对应的第一数值以及服务端生成的密钥串,计算得...

【专利技术属性】
技术研发人员:陆利刚
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:

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

1