基于UDP协议的数据安全摆渡系统设计
2022-05-11李恒武冯玉平
李恒武,冯玉平,熊 鑫
(中国人民解放军战略支援部队信息工程大学,河南 郑州 450000)
0 引言
计算机技术随着科学技术的发展也发展得越来越快,数据传输的数量与日俱增[1],在大量数据的传输与交互中,保证数据安全是十分必要的,对于某些简单的局域网而言,数据摆渡可能会经常面临风险,经常会产生丢包问题,从而引发安全风险[2],因此,需要重视数据摆渡中的安全问题。目前,在政府机关机房应用中,内网与外网之间的U盘拷贝传输方式主要依靠数据摆渡[3],一旦出现数据安全问题,会降低数据传输的工作效率,给保密管理带来隐患,因此本文设计了基于UDP协议的数据安全摆渡系统来避免数据摆渡风险。
1 硬件设计
1.1 DMZ缓冲器
DMZ 缓冲器可以解决安全设备隔离的内外部用户之间的数据交互问题,该缓冲器主要通过定义安全区域来确保两个子网之间的连接关系,不仅如此,DMZ缓冲区还需要确保合法数据可以在不同安全级别的子网之间传输[4]。因此DMZ缓冲器的缓冲区划分对网络安全具有重要作用。DMZ缓冲器划分的缓冲区通常是指两个安全域之间的缓冲区,例如专用网络(内网)和公共网络(外部网络)之间的子网。在数据摆渡时,由于某些主机必须为外部网络提供服务,这些外部主机必须得到有效保护才能被特定子网分割,因此,提供服务的主机往往位于该子网中。
防火墙等安全设备允许DMZ缓冲器中的主机与同一DMZ网络中的主机进行数据交换,但其限制了其他网络中的数据交换[5]。因此,在现实场景中,往往需要对特定主机进行内部核心网络解耦,保证其在对外提供友好服务的同时,也得到最大限度的保护。DMZ缓冲器可以利用现有的内部高级安全网络来保护敏感数据,避免产生暴露的风险。
1.2 数据安全接口
根据数据摆渡的实际需要,设计数据的安全接口,数据安全接口分为4个部分。第一部分是数据的实际发送接口,根据不同的需要封装在应用层,利用标准的C/S结构推送数据或传输到客户端。第二部分是通过发送端口将数据发送到指定的转发端口,从而发起数据传输请求,实现数据流量的加密传输。第三部分也是接收接口,也就是数据的实际目的地,封装了数据传输的不同需求,在该接口,数据可以被自动接收,也可以利用C/S结构接入服务器[6]。第四部分是前端,为其他安全域中的数据传输提供有限的连接通道。它从发送方接收数据,根据加载的规则选择路由器,从而控制数据。转发过程不对数据、协议等做任何处理,整个过程也不包含数据的登录或存储,一方面保证了转发操作的统一性,提高了传输效率,另一方面也保证了数据的安全。
2 软件设计
2.1 分析数据摆渡安全需求
在无线局域网环境中,需要构建安全的信息管理平台,有序地管理所有视频、音频、照片等数据信息,因此,在构建媒体服务管理平台和综合服务管理平台时需要提前进行数据摆渡安全需求分析[7]。为了让公司的内部管理人员随时随地监控数据摆渡的变化,可以让员工利用手机向服务器发送云台控制命令,从而实时调整云台方向,观察数据摆渡变化。云台的控制命令使用明文形式进行传输,在发送控制命令的过程中,如果外部不法分子截获了控制命令的明文信息,则会导致云台的方向失控,因此内部监控区是主要的规避管辖区,需要避免非法人员利用安全缝隙使整个监控平台瘫痪,导致不可逆转的后果。基于此,数据摆渡安全需求分析如下。
第一是保密。作为一个安全的数据摆渡系统,最基本的要求是数据的保密。需要将传输的原始数据经过公钥加密算法处理,只有拥有正确私钥的接收方才能进行解密。即使原始信息的数据内容被截获,攻击者也很难破解加密的数据包。第二是完整性,即需要使用完整性技术处理信息,以确保发送方发送的内容与接收方接收的内容完全匹配,并且在此过程中不会丢失任何信息。第三是Non-Repudiation,需要使用数字签名技术对数据进行处理,保证双方的一致性,防止发送方或接收方否认信息已经发送或接收。第四是要有双向认证功能。发送方和接收方可以通过身份认证信息确认对方的身份,只有通过双向认证的用户才能进行后续的数据传输[8]。第五是抵抗再生攻击的能力。如果数据在传输过程中被非法攻击者截获,则攻击者可能会伪装成合法用户再次连接服务器,系统会误以为是合法用户,完成指令,导致攻击成功。因此,当合法的客户端连接到服务器时,需要避免攻击者获得客户端的信任,并在每次通信中加入随机数值。每次传输数据的不可重复性和复杂性增加了攻击的难度。第六是需要抵抗选定的密文攻击。原始数据可以通过多次hash计算得到数字签名,因此需要将客户端和服务器发送的消息进行随机合成,对消息进行电子签名,提高抗攻击性。
2.2 基于UDF协议的数据摆渡通信方案设计
数据摆渡的主要方式即数据网络传输,只要通信双方采用协商好的通信协议,就可以实现数据摆渡。目前使用最广泛的通信协议是UDF协议。UDF 协议包括传输层协议和网络层协议,数据主要通过传输层协议在计算机内部传输,用户必须在应用程序中与数据进行交互才能得到最终结果。本文设计的系统主要基于传输层进行数据安全处理,因此在传输层的基础上增加了加密的UDF通信协议,达到数据安全的效果。基于此,本文设计了通信方案模型,如图1所示。
图1 数据摆渡通信方案模型
由图1可知,UDP协议是一种面向无线连接、无缓冲数据传输的实时通信协议,在发送数据包之前不需要预先建立连接,而需要通过目的IP地址和端口号发送指定的数据包,只要接收方需要提前建立端口连接即可。除此之外,还需要开启一个线程来监控端口。为了保证用户和服务器始终保持联系,在进行数据摆渡之前,管理员有必要决定服务器的开放状态,查看当前在线用户信息等。该过程主要使用UDP 协议构建一个持久的、可行的路径。
2.3 设计人机交互数据可视化功能
人机交互有两种方式,第一种方式指的是可以通过编写命令代码,将其输入管理平台实现在线管理,管理的端口和IP也是有规律的。管理员需要将管理IP连接到指定端口,如果此时有数据请求,则需要由Receiv进行阻塞实现动态管理。对于部署需求,除了传统的命令行模式,还需要更加灵活的B/S模式进行动态管理。网页界面采用php语言,程序框架基于Htm15,Smarty,Medoo,Bootstrap,Bootbox。
数据可视化功能需要利用UI 接口来实现,通过son task.php 连接数据库,存储所有的数据请求,并将提取的数据转换为son 格式提供给前端。可视化可以显示所有接口的实时状态。人机交互的图形绘制是基于HTMLS Canvas和Topo 插件来实现的,并通过前端的模板加载到UI 中。在代码设置时,首先需要创建场景,然后根据规则库中所有规则的源地址和目的地址绘制数据交互点。系统在进行数据转发时,会在数据库中显示转发状态,UI会根据显示的转发状态决定连接的颜色。
2.4 实现数据安全摆渡
实现数据安全摆渡需要借助Java SE平台,该平台使用Java进行编写,开发平台为Windows,在该平台中配置一个线程来完成socket双向通信,实现数据的安全摆渡。客户端通过UDP线程发送用户相关信息,从而完成用户注册和用户登录,登录成功的用户通过UDP线程与服务器进行连接。主接口的服务器可以实现关闭和重连TCP线程以及查看和删除连接到服务器的用户的功能。服务器端主要包括日志查看、参数设置、数据库管理、云台连接等功能。
基于UDP协议的数据安全摆渡系统主要用于解决外部网络的内部网络数据的交换需求,实现外部组织与内部生产网络的双向交互。外部网络(低安全级别)、DMZ 区域和内部生产网络(高安全级别)需要使用 DMZ 区域进行隔离。外网指的是外部的网络环境,主要供金融监管部门等外部机构的用户和企业获取和上传数据。前端计算机核心网中的子网用于准备来自核心网的报表数据,以供外部交互,此时的拓扑环境如图2所示。
图2 拓扑环境
根据图2的拓扑结构可知,此时的服务器必须将用户注册的基本信息存储到数据库中,以便后续用户登录时查看和使用。在用户数据储存时,本文主要使用Java进行编写,但由于编写过程中需要判断执行状况,因此还需要借助JDBC技术来执行,编写后的 Java应用程序需要进行语句传输,需要利用API,将编写后的程序发送到数据库中,JDBC的主要任务如下,首先选择要连接的数据库,如MySQL数据库或SQL Server数据库,其次是在指定的数据库中插入SQL语句,最后处理从数据库返回代码。
3 系统测试
在进行系统测试之前,预先测试各个模块的功能。测试通过后,即可对整个系统进行测试,根据设计的测试方案,在指定环境下进行性能测试。
3.1 测试准备
为方便起见,在测试之前需要为测试系统增加云盘,在进行数据摆渡时,用户首先需要登录自己的账号,在私有文件界面进行传输,并通过Socket 将其发送到Internet的服务器,然后从本地数据库中删除该信息,此时,测试系统的摆渡性能如表1所示。
表1 摆渡性能
由表1可知,此时的信号由内网进行接收,接收后对其进行分析,提取接收到的数据信息,进行加密后转移到数据库中,数据库中的数据必须与实际情况同步。此时用户进行数据摆渡前,可以使用内网登录云盘,从而查看内网和外网删除的文件,此时系统摆渡性能良好,可以进行后续的测试。
3.2 实验结果与讨论
在确定系统的摆渡性能后,本文需要测试接收线程数与接收包数的关系,在实验中,发送方仍然使用指定大小的数据作为传输数据,使用无限流方式发送了100万个数据包,接收方进行数据提取并复制到缓冲区中进行计算,测试结果如图3所示。
图3 测试结果
由图3可知,随着缓冲区的增加,丢包数呈现逐渐减少的趋势,证明本文设计的系统在面临大量数据时可以稳定进行摆渡,且其丢包数也相对较少,因此本文设计系统性能良好。
4 结语
综上所述,实现数据的安全摆渡需要借助UDP协议进行传输,因此本文设计了基于UDF协议的数据安全摆渡系统,该系统对保证数据安全传输,降低数据传输风险有重要意义。通过这种方式,员工正在改变使用U盘等移动存储介质进行内外网络传输信息的方法,提高了工作效率,同时给用户更好的体验感。系统测试证明本文设计的系统的丢包数少,不容易出错,因此性能良好,有一定的应用价值。