一种基于两阶段工作量证明的防攻击方法

文档序号:35458838发布日期:2023-09-15 17:08阅读:50来源:国知局
一种基于两阶段工作量证明的防攻击方法

本发明涉及网络安全领域,具体涉及一种基于两阶段工作量证明的防攻击方法。


背景技术:

1、在网络服务中,服务方为请求方提供各种网络服务或接收邮件,服务方需要确保自己的系统在面对恶意请求和攻击时具有一定的防御能力,以维护系统的稳定性和安全性。攻击者通常会伪装成请求方通过发送大量垃圾请求或信息,给服务方造成负担,甚至在某些时候导致正常的服务请求无法被响应。因此为了使请求方能够快速、安全地访问所需的服务,避免服务方被恶意攻击,需要针对性的建立防攻击机制。


技术实现思路

1、针对现有技术中的上述不足,本发明提供的一种基于两阶段工作量证明的防攻击方法可以有效防止垃圾请求和垃圾信息攻击。

2、为了达到上述发明目的,本发明采用的技术方案为:

3、提供一种基于两阶段工作量证明的防攻击方法,其包括以下步骤:

4、s1、设定第一难度系数d1;

5、s2、获取请求方生成的消息体msgl和数字n1;其中消息体msgl包含请求方身份信息、服务方身份信息、时间戳和请求服务类型;

6、s3、计算并判断hash(msg1+n1)<d1是否成立,若是则认定请求方第一阶段工作量有效,并进入步骤s4;否则拒绝向请求方提供服务;

7、s4、根据msgl中的请求服务类型和当前负载情况计算第二难度系数d2,并将第二难度系数d2发送至请求方;

8、s5、判断在设定时间内是否接收到请求方返回的请求信息request_message和数字n2,若是则进入步骤s6;否则判定无第二阶段工作量,作废当前的第二难度系数d2;其中请求信息request_message包括请求的时间和请求服务类型;

9、s6、计算并判断hash(request_message+n1+n2)<d2是否成立,若是则向请求方提供相应的服务;否则拒绝向请求方提供服务。

10、进一步地,步骤s2中数字n1的获取方法为:

11、响应于第一难度系数d1,请求方从0开始以逐步递增的方式选取一个数字n1,直至hash(msg1+n1)<d1成立,并将此时的msgl和n1发送至服务方;其中hash为哈希函数,包括sha256和sha512。

12、进一步地,步骤s4中计算第二难度系数d2的具体方法为:

13、基于当前的系统负载,通过线性回归模型预测下一时间段的系统负载l_predicted(t_next);根据公式:

14、d2=d_base+α*l_predicted(t_next)+γ*cost(request_type)

15、获取第二难度系数d2;其中d_base为预设常数;α为负载影响因子;γ为请求的服务代价因子;cost(request_type)表示请求服务类型的成本。

16、本发明的有益效果为:本发明通过第一难度系数使请求方进行工作量证明,然后根据系统负载动态调整第二阶段的工作量证明难度,避免了请求方通过大量垃圾请求和垃圾信息对服务方的攻击,提高了系统的安全性,改善了用户体验、优化了资源分配,并增强了系统的可扩展性。



技术特征:

1.一种基于两阶段工作量证明的防攻击方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的基于两阶段工作量证明的防攻击方法,其特征在于,步骤s2中数字n1的获取方法为:

3.根据权利要求1所述的基于两阶段工作量证明的防攻击方法,其特征在于,步骤s4中计算第二难度系数d2的具体方法为:


技术总结
本发明公开了一种基于两阶段工作量证明的防攻击方法,其包括以下步骤:设定第一难度系数D1;基于第一难度系数D1和请求方生成的消息体msgl和数字n1判断请求方第一阶段工作量是否有效,若无效则拒绝向请求方提供服务,若有效则根据系统负载动态调整第二阶段的工作量证明难度,要求请求方进行第二阶段的工作量证明,当请求方通过第二阶段的工作量证明后向其提供相应服务。本方法避免了请求方通过大量垃圾请求和垃圾信息对服务方的攻击,提高了系统的安全性,改善了用户体验、优化了资源分配,并增强了系统的可扩展性。

技术研发人员:罗旭斌,刘家芬
受保护的技术使用者:西南财经大学
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1