基于认证服务器的网络防火墙加密算法仿真

来源:优秀文章 发布时间:2023-04-14 点击:

陈 芳,张 爽,陈 姣*

(1. 湖南信息学院计算机科学与工程学院,湖南 长沙 410151;
2. 沈阳理工大学自动化与电气工程学院,辽宁 沈阳 110117)

近年来,网络使用方式与用户数量均发生巨大变化。起初用户数量小,网络结构简单,随着各类移动终端的不断发展,网络结构逐渐复杂,信息化时代来临。信息化背景下,丰富的网络资源带来便利的同时,由于计算机技术进步、资源数量增多、信息丰富程度加深,网络安全问题也逐渐显现。用户系统中的隐私很有可能被攻击者盗取,破坏网络的安全可靠性能,无法为用户上网安全提供保障。防火墙技术有效解决了这一问题。防火墙技术作为一种控制访问技术,可防止非法用户进入内部网络,减少内网安全隐患,并根据安全策略检查数据包是否存在安全隐患,实时感知网络运行态势。防火墙虽然是一种有效的网络保护设备,但也存在一些不足,难以防范内部威胁,也无法避免发送病毒文件。尽管该技术有很大的应用前景,但上述缺陷成为其进一步发展的阻碍。为此,该领域学者针对防火墙安全问题,提出以下几种策略。

刘毅[1]等人构建一种基于雾计算的智能防火墙模型,结合语义推理内容建立隔离防火墙,使用雾计算信息中心网络防火墙技术,感知网络环境中的威胁,针对不同威胁,制定过滤策略,构建防御雾模型。岳少博[2]等人采用虚拟专用技术实现防火墙防御。结合网络防御需求,设计整体功能架构,利用入侵检测技术、虚拟专用网络以及防火墙技术实现空间信息的三层加密,通过聚类分析法获得未知攻击规则,为防火墙设立一道安全屏障。

上述方法从不同角度提高了防火墙安全性能,但是当用户请求较多时,会降低系统吞吐量。为此,本文研究一种基于认证服务器[3]的防火墙加密算法,利用加密技术[4]保护网络安全,为防火墙设置一道密钥,当信息传输到防火墙时,只有通过密钥对防火墙解密,才能使信息安全发送到接收方。同时结合认证服务器缓解系统工作压力,提高吞吐量,即使用户请求数量较大,也能保证网络安全运行。

1)防火墙结构与执行准则

防火墙是在两个网络中间发挥控制作用的系统,也是监测网络安全的设备,其结构示意图如图1所示。

由图1可知,防火墙相当于一个阻塞点,所有的网络连接必须经过该点,避免非法用户入侵系统内部。此外,防火墙能够执行相关管理条例[5]、记载可疑信息,主要遵循下述基本准则:

图1 防火墙主要架构示意图

准则一:一切没有经过允许的都视作禁止的。对于此条规则,防火墙必须隔离全部信息,仅可以对理想的服务开放,营造安全网络环境,对通过的项目必须仔细筛查。

准则二:一切没有被视为禁止的都具有开放权。防火墙可转发网络中所有信息流,经过筛选,屏蔽存在一定风险的服务。该方式灵活多变,服务的用户更加多元化。

2)相关功能探析

安全屏障功能:防火墙的位置通常在网络结构的出入口,能够检测全部数据,结合相关规则来判断数据是否可以进出,保障了内部网络的安全性,抵挡一些不安全的外部攻击[6]。

流量审计功能:网络流量进出必须通过防火墙,因此,防火墙可记录流量使用情况。此外还可以统计带宽利用率,如果检测到流量存在风险,防火墙会自动报警,生成监测日志,为分析网络是否受到攻击提供依据。

3.1 认证服务器设计与业务流程

1)服务器整体架构

本文利用分布式思想,设计认证服务器处理系统,如图2所示。该系统由一台负载均衡机和多个服务器构成,这些服务器均访问相同数据库。

①负载均衡服务器:属于认证服务器的前端机,主要工作是将用户请求传输到执行服务器上,而用户通常认为服务来自某虚拟IP地址[7]。

图2 认证服务器整体架构图

②集群服务器:执行用户提出的请求。

③数据库:为服务器执行任务提供数据,确保所有服务器获取统一信息。由于设计过程中添加缓存机制,当服务器节点增加时,不会发生访问压力急剧上升的情况。若要求数据库具备更高性能,可利用分布式数据库技术。

2)业务流程

当建立用户端和服务器之间的联系后,通信层将Session当作对象,利用Session中请求队列保存用户传输的报文。

集群服务器将认证、计费与代理模块作为处理对象,这些对象同样具有一个请求队列。当报文到达通信层时,按照报文种类发送到相应队列中。认证模块会结合配置信息建立执行集合,构成完整的执行模块链。

业务模块作为所有业务的执行者,是通过数据缓存方式完成信息存储的。如需调出某数据,从缓存模块中重新调取即可。

3.2 基于寻找大素数的密钥生成

3.2.1 公开大素数筛选

分析密钥生成原理,通过窗函数[8]与模乘优化算法获取寻找公开大素数与保密大素数,生成防火墙密钥。

素数初步筛选方式如下:

步骤一:建立一个素数集合Su(k)={pi|pi≤k,k∈N},其中k表示正整数。获取随机生成的n位奇整数d,假设i=0,生成的n位整数表达式为:

[w1,w2,...]=[dmodp1,dmodp2,…,dmodpi]

(1)

式中,pi表示第i小的素数。

步骤二:针对某个j∈{r|pr∈Su(k),r∈N},若j符合wj=0的要求,则跳转到步骤四继续计算,否则执行下一步骤。

步骤三:假设素性测试模式为Ts(d),Ts代表测试函数,若测试结果显示True,则将d作为输出结果并结束测试;
反之继续执行下一步骤。

步骤四:针对j∈{r|pr∈Su(k),r∈N},运算wj=wj+2,再将计算结果和公开素数对比,若结果为wj≥pj,继续运算wj=wj-pj。

步骤五:利用公式q=q+2和i=i+1获取其值,将循环操作过程转到步骤二,直到符合要求停止循环。

经过以上计算,循环结束后即可筛选出大素数,生成公开大素数p。

3.2.2 保密大素数筛选

为降低模幂计算过程算法复杂度,利用模乘操作替换乘法操作,通过滑动窗口与模乘优化算法相结合确定保密大素数。

改进的模幂算法执行过程如下:

将x,e=(etet-1...e1e0)2作为输入数据,当et=1,k′≥1(窗口尺寸)时,输出结果为xemodn。

1)计算下述公式

MontMul(x,R2,n)→x1

(2)

MontSqu(x1,n)→x2

(3)

针对i由1到2k′-1-1,运算MontMul(x2i-1,x2,n)→x2i+1,R→A和t→i。

2)如果i≥0,继续执行下一步,反之跳转到步骤4)。

3)如果ei=0,MontSqu(A,n)→A,i-1→i,寻找最长的位串eiei-1ei-2...es,确保i-s+1≤k′,且es=1。

4)MontMul(A,1,n)→A,返回A。

上述步骤中,MontMul(·)与AontSqu(·)分别表示模乘函数与模平方函数。将该方法与滑动窗口[9]相结合,能够获得简便的模幂算法。

3.2.3 密钥生成

结合上述选择的公开与保密大素数共同生成防火墙密钥。密钥生成包括以下三个过程。

原始密钥建立:结合公开大素数p得出密钥位数共256位,再使用保密大素数建立密钥,如果位数低于256,则在有效位之后添加一个字符,补全密钥位数。再将补全后获得的密钥平均分成8份,表示为ω-8,ω-7,…,ω-1。

中间密钥建立:利用下述公式将以上8等份密钥扩展至132个中间密钥ω0,ω-1,…,ω131。

ωi←(ωi-8⊕ωi-5⊕ωi-3⊕ωi-1⊕i)

(4)

子密钥建立:针对生成的中间密钥,使用8个S盒,建立33个子密钥,计作S0,S1,…,S7。生成过程如下

(5)

由此能够看出,密钥生成过程是根据多项式x8+x7+x5+x3+1实现的,必须依赖该密钥和之前密钥进行两轮循环。即便攻击者获得其中某一轮密钥,因不具备前一轮密钥,难以继续推算,确保了防火墙安全。

3.3 认证服务器下加密方案设计

在本文构建的认证服务器下,结合上述生成的密钥提出一种多服务器认证策略,该策略共分为如下四个阶段。

阶段一:初始化

在此方案中,下述两个问题属于难点:已知椭圆曲线[10]E(FP)上存在P、aP与bP三个点,且a,b∈[1,n-1],在椭圆曲线中寻找这三点较为困难;
假设已知E(FP)中的任意两点Q′与R′,寻找一个整数K∈[1,n-1],确保R′=K·Q′,也是不容易实现的。

阶段二:服务器注册

(6)

阶段三:登录

阶段四:认证

当认证服务器接收到查找票据Tγ时,利用私钥解密,服务器检测私钥与上述建立的密钥是否一致,如果二者相同,允许通过防火墙,反之防火墙开启防守模式,避免外部攻击。

仿真环境中设置四台机器,客户端与服务器各两台,这些设备均安置在相同局域网中。首先测试本文设计的认证服务器性能。假设用户端在短时间内发出海量认证请求,将系统吞吐量作为衡量指标,将本文方法与文献[1]提出的基于雾计算的智能防火墙加密算法、文献[2]提出的基于虚拟专用技术的防火墙加密算法三种算法进行对比,不同方法下系统吞吐量测试结果如图3所示。

图3表明,随用户数量的上升,本文方法下系统吞吐量明显上升,智能防火墙模型也能够提高系统吞吐量,但是上升幅度小,虚拟专用技术由于是一种三层次防御技术,当用户请求不断增加时,系统吞吐量会降低。本文认证服务器结构相对简单,业务逻辑设置合理,因此具有较高的性能表现。

图3 不同方法系统吞吐量对比图

本文通过将扩散率作为指标,验证该方法的加密强度与加密速度。当扩散率高于0.5时,则认为密文扩散率达到完全扩散状态。不同方法下的密文、明文扩散率分别如图4和5所示。

图4 密文扩散率

结合完全扩散定义,分析不同算法的密文与明文扩散率可知,所提算法经过四次加密与解密处理后,便可以达到完全扩散状态,其它方法都需要五次以上的操作才可以实现完全扩散。因此,在认证服务器中使用基于大素数的加密算法,不仅加密强度大,且加解密速度更快,这是因为将单一循环换更换为多个循环同时进行,减少运算时间,有效解决加密、解密效率低的问题,缩短用户等待时长。

图5 明文扩散率

击中次数最能体现防火墙加密性能的好坏,本文建立一个攻击集合,对不同算法下的防火墙进行模拟攻击,记录被击中的次数,并使用下述公式获取击中率。

(7)

式中,O(η)代表成功击中防火墙次数,Mi′为数据成功传输的次数,ρ(i′)表示总截取率。不同算法的防火墙击中率如图6所示。

由图6能够看出,本文方法的击中率非常低,低于5%,表现出防火墙强大的防守性能。这是因为本文不仅仅生成了初始密钥,还另外建立中间密钥与子密钥,为防火墙提供多重保护,不容易被轻易击中。

图6 不同算法防护墙击中率

表1是通过不同攻击类型对三种算法下的防火墙进行攻击,检验三种算法面对哪种攻击时容易被击中。利用“√”表示经过多次实验没有出现击中现象,“×”代表出现击中现象。

表1 不同攻击方式下防火墙性能

表1显示,本文方法只有在防火墙受到伪造攻击时,会出现被击中现象,面对其余攻击方式时都表现出良好的性能。这是因为攻击者会伪造真实身份,容易通过非法途径获取密钥,导致防火墙被击中。

本文建立了认证服务器,并在服务器中添加密钥生成算法,通过安全认证来实现防火墙加密,保障网络安全。仿真结果表明,该算法提高系统吞吐量,减少加密与解密时间,在面对多数攻击类型时均能表现出良好的防守性能。但是随着攻击方式的层出不穷,网络环境依旧威胁不断,因此防御技术也应该不断推陈出新。本文实验中模拟的攻击类型较少,在今后研究中应该增加攻击种类,使加密算法可以更好的抵御各种攻击形式。

猜你喜欢素数加密算法防火墙两个素数平方、四个素数立方和2的整数幂数学年刊A辑(中文版)(2022年1期)2022-08-20有关殆素数的二元丢番图不等式数学年刊A辑(中文版)(2021年2期)2021-07-17关于两个素数和一个素数κ次幂的丢番图不等式数学年刊A辑(中文版)(2019年4期)2019-12-16构建防控金融风险“防火墙”当代陕西(2019年15期)2019-09-02关于素数简化剩余系构造的几个问题中等数学(2019年6期)2019-08-30HES:一种更小公钥的同态加密算法衡阳师范学院学报(2016年3期)2016-07-10基于小波变换和混沌映射的图像加密算法火控雷达技术(2016年1期)2016-02-06在舌尖上筑牢抵御“僵尸肉”的防火墙IT时代周刊(2015年7期)2015-11-11下一代防火墙要做的十件事自动化博览(2014年6期)2014-02-28对称加密算法RC5的架构设计与电路实现应用技术学报(2014年1期)2014-02-28推荐访问:仿真 防火墙 加密算法
上一篇:基于TBTA网络的高光谱图像分类
下一篇:基于分形理论的异质网络中局部离群点检测

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有