《安全文件传输系统的设计与实现学士学位论文.doc》由会员分享,可在线阅读,更多相关《安全文件传输系统的设计与实现学士学位论文.doc(55页珍藏版)》请在三一办公上搜索。
1、分类号 密级独 创 性 声 明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含本人为获得江南大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。签名:日期:关于论文使用授权的说明本学位论文作者完全了解江南大学有关保留、使用学位论文的规定:江南大学有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等
2、复制手段保存、汇编学位论文,并且本人电子文档的内容和纸质论文的内容相一致。保密的学位论文在解密后也遵守此规定。签名:导师签名:日期:摘 要随着计算机技术的迅速发展,在计算机的应用领域中软件系统的应用越来越广泛。而文件传输是其中重要的一个方面,现在人们对传输系统的性能和功能要求也越来越高。但文件传输系统尤其是在文件传输的安全性上却存在着巨大的缺陷。大多数的安全文件传输系统的安全性体现在了算法的改良或者使用更高级的算法,根据实际的需要,本文中所采用的是在成熟算法的基础上,通过管理员或者父节点对节点的授权,只能对授权过的节点进行文件传输,而对其他节点不能传输,对节点路径进行了选择,在网络安全上更进一
3、步的提高了文件传输的安全性。本文首先介绍了课题的背景及国内外现状,然后对系统进行一全面的需求分析并对设计平台进行分析并设计了开发技术,对开发技术做了一个简单的介绍。接着对系统进行概要分析,包括了网络拓扑分析、架构分析及主要模块分析,为了能够更好的完成系统,在概要分析时做了用例分析,以便于更好的实现详细设计。最后,对系统做了详细的流程分析及详细说明表,并进行系统实现。本系统采用C/S架构,主要由服务器端和用户端组成,其中服务器端的操作系统为Linux系列操作系统,用户端为Windows系列操作系统,开发语言使用Java语言,平台使用Eclipse,并对节点间网络通讯方式使用套接字(Socket)
4、和SSL安全控制。开发过程中,使用软件工程理论知识对整个系统进行分析与设计。关键词:文件传输;节点授权;路径;软件工程AbstractWith the rapid development of computer technology, software system is more and more widely used in the field of computer application. File transfer is one of the important aspects and people increasingly have higher demands for the f
5、unction and performance of the transmission system. But the file transmission system is imperfect in security. Most secure file transfer system security is reflected in the improvement of the algorithm or the use of more advanced algorithm. According to the actual need, node is authorized by the adm
6、inistrator or parent node on the basis of mature algorithm in this article. File is transferred only through authorized node and node path is selected purposefully. Thus security is further improved in file transmission.This article first introduced the task background and research at home and abroa
7、d. Then analyses of demand of the system and design platform were processed. Development technology is designed and briefly introduced. Summary analysis to the system is made including network topology, architecture and main modules analysis. In order to better complete the system, case analysis is
8、used in summary analysis to implement detailed design. Detailed process analysis is made to the system and explanatory table is completed Finally the system is implemented.This system adopts C/S structure and is mainly composed of server and client Linux operating system series is for the server whi
9、le Windows operating system series is for the client. Java language is the development language and Eclipse is the platform. Socket and SSL security control is used in the network communication between the nodes. The whole system is analysed and designed under the theory of software engineering in t
10、he development process. Keywords: File Transfer; Node Authorization; Path; Software Engineering摘 要IAbstractII第一章 绪论11.1 课题背景及研究意义11.2 国内外研究现状21.3相关术语31.4 本文所做工作及章节安排3第二章 SFTS的需求分析与相关开发技术52.1 SFTS的需求分析52.1.1 系统开发的要求52.1.2 系统的实现目标52.1.3运行环境配置62.1.4 系统的主要模块结构62.1.5 硬件平台设计和操作系统72.2系统相关的开发技术82.2.1 C/S软件体
11、系结构82.2.2 Java语言介绍92.2.3支持SSL的Socket通信(Java安全套接字扩展)92.3 本章小结10第三章 SFTS的总体概要分析与设计113.1 网络拓扑设计113.2 三层架构设计133.3 主要模块设计143.4 系统的用例分析173.4.1 系统的用例图173.4.2 系统的序列图183.5 课题的关键技术分析243.5.1节点通信授权243.5.2节点通信路径253.5.3配置全网同步253.5.4系统的自检与重启253.5.5 文件传输密码交换253.6 本章小结26第四章 SFTS的详细模块设计274.1文件发送模块274.1.1 模块说明及流程图274.
12、4.2 模块详细说明表304.2 文件接收模块314.2.1 模块说明及流程图314.2.2 模块详细说明表324.3 子节点管理与节点授权模块334.3.1 模块说明及流程图334.3.2 模块详细说明表354.4本章小结37第五章 SFTS的功能实现395.1 系统登陆395.2 用户管理395.3 通讯录应用405.4 文件的发送415.5 文件的接收425.6 子节点管理435.7 节点授权445.8日志管理44主要结论与展望47主要结论47展望47致 谢48参考文献49第一章 绪论1.1 课题背景及研究意义随着信息技术的迅速发展与大规模的普及应用,社会已经进入一个信息时代,网络通信成
13、为至关重要的环节,给政府和企业带来了极大的劳动效率的提高。但是目前政府和企业的IT建设都是循序渐进进行的,网络内部的电脑终端数量越来越多,除了办公电脑、服务器等设备,各种操作系统、数据库、应用系统等也不停的扩充。行业信息化建设多年来,许多公司的核心资产和数据都已经电子化,更具体地说,就是传统的技术、档案、资料都已经变成电子数据的形式保存并传递1。随着这些硬件、软件、系统的广泛应用的同时也给网络安全管理人员增加很多问题,其中,最重要的就是文件传输中的信息安全问题。信息安全也是网络安全中最重要的一部分,其它的东西在遭破坏后还可以重新回复或补救,而信息一旦丢失或者遭盗窃,那带来的损失就是无法估量的2
14、。不用共享的信息平时在做好信息备份即可,但如果涉及到网络文件的传输,那就必须要使用网络文件传输软件,一个好的网络文件传输软件不仅有海量的传输功能,最为重要的还是必须具有强大的安全性。这样能有效的防范因为操作不当或者被攻击而导致的数据丢失。文件网络传输的安全保障问题已经成为一个关注的焦点。就如同电子购物的消费者不希望自己的信用卡号被公布在一个公共站点上一样,印刷设计者在与客户、印刷商通过网络沟通时,也不愿意自己的数据被他人掌握,所以文件的安全传输问题在当代社会引起了很多人的关注3。在这种严峻的形势下,一个简单的实用功能,而且还可以运行于Windows操作系统,具有可移植性一定程度上,网络安全的文
15、件传输工具可二次开发势在必行。文件传输是各企事业及国家核心机构管理中必不可少的一部分,对文件传输进行规范化、制度化、科学化管理,对工作效率和工作质量有很大的提高,有利于促进企业向着高效,快速的方向发展。然而,文件传输管理也是日常管理工作中容易被忽视的一项工作,也是不容易做好的一项工作。稍有不慎,可能造成重要文件的丢失,后果严重。一个好的文件传输系统应该是稳定可靠的,并且适用于各类企事业、机关单位、学校、医院等。系统对传输的各个环节进行科学管理,完成对日常文件传输的规范化、制度化、科学化,帮助企业更有效、更可靠的进行文件传输的管理。随着信息技术的迅速发展,文件传输虽然便于信息的交流及共享,但是文
16、件传输过程中,文件的安全性和完整性引发了许多人的担忧。目前的这类文件传输的系统往往比较庞大,占用较多资源,并且还受到网络速度、杀毒软件、防火墙等因素的限制,因此对于企事业单位文件的传输来说并不是最佳选择。在计算机网络日益扩大和普及的今天,文件传输所要求的安全性更高、涉及的面更广。文件安全传输系统是一个功能齐全的软件,方便了用户对文件传输的使用,同时用户在不了解该软件的加解密算法的情况下,依然可以对该软件进行使用4。该软件中复杂的加解密算法,和该软件的简单操作形成了鲜明的对比,同时这种鲜明的对比,既保证了文件传输的安全性和完整性,也保证了用户的可操作性5。1.2 国内外研究现状信息安全之中网络安
17、全是重点研究内容之一。然而,目前研究的热点领域的信息安全内容有:(1)研究,分析,设计的安全解决方案(2)网络安全产品和网络的发展,其中,网络安全包括物理安全和逻辑安全,物理安全是指各种物理保护计算机网络,通信系统,设备和设施。逻辑安全指完整的数据、安全的逻辑、保密的数据。它涉及在网络中、操作系统中、数据库、人事管理等领域。而网络安全中最重要的一个方面便是安全文件的传输。目前,国内外企业的安全文件传输系统的认识和利用并不好,各业务单位局域网内的文件上传和下载,资源共享,安全漏洞百出,技术无论是从理论上或者实践上仍是不完美的。文件传输系统由于要复杂的多,更多的变数,安全性很低,发展还不成熟。而关
18、于文件传输和实时语音传输的应用程序有很多,继即时通讯之后,日常的网络应用中文件传输已经成为了第二大的网络基础应用,而点对点的文件发送是最方便快捷的文件传输手段8。在国外,大多数的互联网用户或单位采用的都是在日本发展的飞鸽传书的软件,这是一个相对简单的局域网文件传输软件,但因为它的传输速度得到广泛的应用。但其重要的缺点是缺乏一定的安全性,用户之间可以随意传递文件而没有优先级的选择,而且其功能单一,并不是可靠的传输软件。国内大多数网民或是企事业单位都采用点对点方式发送文件,目前许多即时通讯软件,例如QQ、MSN、UC等都有点对点文件传输功能,同时还出现了专门的点对点文件传输工具,例如快递通等。但其
19、本质上与飞鸽传书都相同,缺乏一定的安全性。而不管上述数据最终如何传输,都必须依赖于底层的网络传输通道,数据包传输过程中可能被攻击者截取,然后解包分析,甚至被篡改,信息的传递因此会会泄漏9。所有,当我们要传输文件的信息是保密文件时,它就需要使用一个安全,可靠,方便的文件传输系统来传输文件,防止泄露重要的文件。虽然即时通讯软件的不断更新,完善,但仍然存在有不足的地方。例如,各种商业软件越来越多,软件里面有很多烦人的广告植入,让用户使用起来非常不方便,一些软件从功能上考虑设计的非常大,部分用户并不需要一些不常用的功能,这无疑造成了一定的空间和资源上的浪费,有些软件可以实现的局域网文件传输,但功能相对
20、简单,所以有必要做一个高效率低成本的局域网文件传输软件来弥补这些缺陷10。随着科学技术的发展,各种各样的局域网文件传输系统已经进入了一个稳定发展时期,国外大型金融企业已经开始寻找一些安全、高效的文件传输机制来提高文件传输的效率。而在国内,计算机资源管理的企业资源管理的标准化和规模的不断扩大,将不会停止对硬件或访问Internet网络为依托,将走向安全的内部网络资源管理。相信在未来的几年内,将有更多更好的安全文件传输系统被各类企业事业单位所替代使用。1.3相关术语(1)SFTS,安全文件传输系统(Security File Transfer System),SFTS为其的英文简称。主要包括了服务
21、器端程序及客户机端程序。服务器端程序由管理员进行操作执行,对于用户的管理,节点的授权分配等有最优先的权利。而服务器端的程序由每个用于执行,主要是针对文件的安全发送和接收,并可对节点进行授权与回收。(2)网络节点(节点),是指整体网络中的子网络、终端或者其他设备,它们逻辑上同属于一个部门。通信链路是通过节点进行传输的。(3)父节点,指在中间管理节点部署模式中,某一个节点(P11)只有一个前节点(P1),那么前节点(P1)称为节点(P11)的父节点。父节点可以统一管理子节点,优先级高于子节点。(4)授权,是指接收或者拒绝授予节点访问的一个过程。节点之间的授权具有一定的优先级,以确保文件的安全传输。
22、(5)文件传输路径,表示从一个节点到另一个节点间文件传输的路径,包括起始节点和中转节点,其中中转节点是可选的。1.4 本文所做工作及章节安排本文主要是以某企业“安全文件传输系统”的项目为背景,基于计算机网络通信技术,客户端服务器端均采用C/S模式,实现了文件的安全传输。本文主要工作如下:1.深入企业,对具体情况进行需求分析,确定整个系统的要求,目标及主要解决的问题。2.针对该企业的具体情况设计出整个系统的系统技术架构、系统功能架构、业务流程和系统模块功能。3.根据系统架构对主要模块进行详细设计,设计出主要模块的功能层次、数据流程、软件设计和业务流程。重点阐述了系统的核心模块文件的发送与接收、节
23、点的管理及授权。4.系统的实现和运行。论文的章节安排如下:第一章 绪论。主要分析安全文件传输系统项目背景及存在的问题,并提出本论文的主要目标及工作要求。第二章 SFTS的需求分析与相关开发技术。针对企业的要求,提出了安全文件传输系统的解决方案,主要分析了系统的开发要求目标及主要模块结构,并介绍了系统的相关开发技术。第三章 SFTS的总体概要分析与设计。对整个系统进行了概要设计,包括了系统的开发方案总体结构设计,架构设计和主要模块设计,并进行了用例分析,最后对系统重点和难点进行了关键技术分析。第四章 SFTS的详细模块设计。对各个模块进行了详细的设计,包括了各个模块的说明及流程图,并对模块的主要
24、方法及主要接口做了详细的说明。第五章 SFTS的功能实现。对系统的功能进行实现。第六章 结论与展望。对本文所做的工作进行总结,并对二次开发做了进一步的思考,提出一些对系统的改进意见。第二章 SFTS的需求分析与相关开发技术2.1 SFTS的需求分析所谓软件工程中的需求分析,是指在系统编写前,对所要解决的问题进行一系列详细的分析,弄清楚问题的要求与目的,以便于寻求最佳的系统的解决办法。主要包括系统开发的要求、目标,系统运行的环境配置及主要模块划分。2.1.1 系统开发的要求安全文件传输系统是专为企事业单位或国家核心机构制定开发的一套文件传输软件,通过文件发送和文件接收,并可对子节点进行管理和授权
25、,使文件传输的日常工作变得简单便捷,并具有一定的安全性。具体开发要求如下:系统的业务流程系统化、合理化系统的业务流程按照部门进行划分后,突破了单一部门信息处理的进行方式,着眼于全局,将整个文件传输系统的业务流程给予系统化,合理化,从而达到最高效率。系统各部门管理具有较强的严密性及有序性系统中的各个模块应该以整个系统架构为基础进行分配和运行,确保整个系统的管理部门清晰完整。各个部门之间审核制度严格,业务流紧密并且连续,最终使得系统中的管理员、审计员及用户得到有效的管理监控和操作使用,极大的提高了管理方面的操作,提高了效率。系统功能丰富、多样、实用,并具有较强的可操作性系统的总体功能应丰富多样,由
26、于面向的是各级联网单位的操作人员及一小部分网络设备管理人员,计算机水平参差不齐,所以必须对各类人员进行分类,划分各种角色,每个角色使用的权限不同,增加系统的实用性和可操作性。系统拥有一定的可维护性从硬件平台的选择和软件应用系统的设计都应该考虑一定的可维护性,设计上尽量使用成熟的、易于维护的系统平台,降低维护的成本。具有良好的可扩展性和强大的安全性系统必须拥有良好的可扩展性,以便于适应今后的发展。同时,系统更应该具有强大的安全功能,对于不同的人员,给予不同的权限,并设立一定的优先级别。2.1.2 系统的实现目标安全文件传输系统以文件的安全传输为核心,以网络为支撑,建立集管理、审计、传输为一体化的
27、系统。系统的具体目标包括如下两个方面:(1) 抽象业务需求,开发一套通用的,易于扩展的分层次的文件传输模块组件,并提供各类扩展接口,供二次开发使用;(2)基于上面的模块组件,开发一款客户交互的文件传输客户端软件,实现与底层模块的交互。实际部署时只需要部署文件传输模块组件和此客户端程序即可完成用户交互的文件传输。2.1.3运行环境配置为了更好地管理和运行整个系统,表2-2给出了相对应的运行环境配置表。表中所罗列的是运行服务器系统及客户端系统的软、硬件环境,这是最低配置,若配置更好,则相应的运行速度也更快,而稳定性也更好。表 2-2 运行环境配置表硬件环境传输服务器CPU2.0GHz以上,内存2G
28、以上传输客户端CPU2.0GHz以上,内存1G以上软件环境传输服务器操作系统支持Linux系列操作系统(RedHat 4.05.0, SUSE1011等),数据库支持MySQL传输客户端程序Windows XP,Windows Vista,Windows7与已有软件兼容常见杀毒软件、终端监管类软件、远程控制类软件、端口过滤、SQL数据库、Oracle数据库等2.1.4 系统的主要模块结构安全文件传输模块层次图如图2-1所示:图2-1 安全文件传输模块层次图根据图2-1所示,系统的功能模块划分如下:(1)底层文件传输模块,主要实现点对点文件传输,可进行断点续传,传输带宽的上限配置,多线程配置,数
29、据的压缩及加密传输等功能。(2)用户验证模块,提供用户名、密码、验证字符串结合的用户验证模式,支持系统管理员、操作员、审计管理员三类用户权限,支持用户信息的增,删,改,挂起,恢复等常见操作,支持用户自定义通讯群组。(3)任务管理模块,主要实现任务提交,暂停,终止;传输数据支持文件、文件夹接口,支持网络路径,实现任务状态查询(文件名、大小、路径、任务标题、起始时间、(预期)结束时间、当前速度等),支持优先级设置,支持多任务同时运行,支持一次任务同时有多个接收方(群发)。(4)配置管理模块,主要实现底层文件传输模块相关参数读、写,网络同步其他节点文件传输模块参数,网络同步配置管理模块,节点间网络路
30、由和授权设置,查询,用户自定义消息接口等。(5)统计日志管理模块,能够完成文件传输任务相关统计信息的查询:主要包括发送(接收)任务数、文件数、字节数,等描述信息,可按照时间段、网络节点、节点用户等条件组合查询,实现文件传输各模块的操作日志存储,支持按条件组合查询,支持按时间段清除日志,各类日志存储开关、存储路径可独立配置。(6)状态管理模块,实现底层文件传输模块的启动、暂停、终止,查询网络状态、传输各模块状态,自动查询并重启有问题节点模块服务,各类传输状态问题提示,提示方式支持文件夹与消息接口两种方式,不同类型提示分类处理。(7)文件传输客户端程序,用户所有交互操作通过文件传输客户端程序实现,
31、其他模块操作用户透明。2.1.5 硬件平台设计和操作系统由于系统需要使用大量的网络设备及服务器等,为了保证系统的正常运行,减轻维护人员的操作,根据整个系统的建设需求,其硬件平台和操作系统必须遵循以下原则:(1)开放性网络系统实现一个真正的开放系统结构,用在全部或符合有关的国际标准,使网络具有良好的兼容性和开放性。公开解释的系统允许用户真正的实现跨系统的硬件和软件平台,由于网络系统是基于国际标准的网络系统,网络设备使用一个标准的接口规范的协议,满足用户的各种需求并且软件和硬件资源都可以得到充分利用。(2)可扩充性虽然目前的计划是足以满足当前的需要的,但随着扩大用户的硬件和软件的规模,应该能够轻松
32、地扩大产能,以支持更多的用户,并且可以匹配的高性能的硬件;系统的技术和设备的不断发展,必须能够顺利过渡到新的技术设备。为了保护用户在未来升级或再投资的情况下,用户的设备投资可以通过增加设备或模块对现有设备进行升级和扩展,充分考虑到将来的系统升级能确保网络通信媒体的顺利衔接,保证系统设计的核心的向后兼容性。(3)高可靠性所有基本应用都是建立在可运行的系统中的应用程序上,随着该系统的普及,其基本的作用将越来越多,该系统成为一个实时系统,高可靠性是最基本的要求之一。由于骨干网的失败将产生巨大的影响,所以整个网络系统必须具有良好的可靠性和冗余度。高可靠性体现在:物理链路,网络设备,特别是核心设备的可靠
33、性和冗余性,可靠性操作系统和应用软件的可靠性。(4)网络的高性能及时,快速发送数据是实现高性能网络的一种重要方式,所以网络设备必须提供高速数据链路的高速处理能力,提高网络的吞吐能力来满足当前和未来的几年里各种硬件和软件对网络带宽的需求。(5)可管理性一个好的组织和管理团队是极其有利于系统的正常运行和有效使用,并能提供方便,灵活,功能强大的工具来进行集中系统的有效管理和控制。方便的监控,用户友好的管理界面,完善的系统记录可以使管理员在不改变系统操作条件对系统测试,修改和故障恢复的管理和维护工作。(6)安全性为保证网络系统的安全运行,最重要便是的基础环节的安全运行,其意义主要是网络设计的网络安全方
34、面。建立良好的安全控制机制,保护网络上数据的安全,必须考虑内部的网络和外部的网络,所以必须通过网络的用户标识,使用提供的各种方式和存取控制层的VLAN,包过滤,入侵检测和防火墙等技术来保证网络系统的安全。(7)经济性技术和设备的发展迅速改变,现在的技术或设备,在不久的时间可能已经过时,甚至被淘汰,所以必然会有一轮新的大规模投资,因此在选择设备和技术上它必须是前瞻性的,并能够兼容发展中的标准技术和硬件设备,最大可能的保护用户投资。基于上述原则,将安全文件传输系统的部署方式设计为 C/S 部署。最终规划设计一个高性能、高可靠、高安全、高效率、易用的平台系统。2.2系统相关的开发技术首先,简单介绍下
35、系统的开发工具及关键技术,主要包括:l 服务器端操作系统: Linux系列操作系统(Red Hat 4.05.0,SUSE1011等)。l 数据库:MySQL。l 客户端操作系统:Windows XP,Windows Vista,Windows7等。l 开发工具:Eclipse。l 编程语言:服务器端和客户端均采用JAVA语言;l 节点间网络通讯方式使用套接字(Socket)和SSL安全控制;l 网络通讯协议使用TCP协议;2.2.1 C/S软件体系结构本系统为C/S结构的文件传输控制系统。系统的服务器端采用Linux操作系统,数据库使用MySql数据库,软件开发语言选用Java语言,这样在服
36、务器端就实现了一个安全、免费、高性能的系统平台,在该平台下本系统可以安全、稳定的处理足够数量的用户功能请求。MySql与Linux的组合保证了稳定的数据存储。为满足系统对客户端功能性的需求,同时保证系统的安全性,系统客户端为Java编写的富客户端程序。在界面处理上本系统采用了SWT技术,再加上JFace及Eclipse的RCP提高了客户端的性能。软件利用Java网络通信的API实现了Client与Server的高效传输。为了保证传输的安全性,系统在Java安全socket扩展包基础上实现SSL(JSSE)。C/S(客户机Client和服务器Server)是系统编程的一般结构,这种结构的功能被分
37、配到客户端和服务器端,分配的原则降低了系统的通讯开销。一般由客户端处理完成数据处理,数据显示和用户界面功能,核心业务系统的功能由服务器端来完成。C/S结构的优点是能充分发挥客户端的处理能力,将业务在客户端进程处理一部分,然后提交给服务器,这将减少服务器的压力。客户端响应速度快且可以实现较复杂的处理逻辑。采用C/S结构,服务器运行数据负荷较轻。客户端调用的是客户端的应用程序(前台程序),服务器端称为数据库服务器程序(后台程序),服务器程序来监控和处理客户端发送请求,客户端应用程序在用户终端的计算机上运行的系统,并向服务器发出处理业务处理的请求 11。服务器程序根据要求处理数据操作并送回结果。C/
38、S结构的程序,其数据储存管理的功能比较透明。由服务器和客户端独立进行数据存储管理功能,而且通常不违反规则的客户端程序可以在服务器程序中重点体现。这对于前台客户程序是“透明”的,客户端无须过问服务器端的具体处理过程,使得前台程序的开发相对简单、统一,服务器程序对数据的控制能力增强12。介于C/S结构的特点和软件功能的需求,本系统采用C/S结构。2.2.2 Java语言介绍Java是由Sun Microsystems公司于推出的面向对象程序设计语言(2010年Oracle公司收购了SUN)。Java平台由Java虚拟机(JVM)和Java应用编程接口(Java API)构成。Java API提供了
39、一个独立于操作系统的标准编程接口,Java程序可以在任何安装有JVM的机器上运行。Java有三种不同的应用版本J2SE(Java2 标准版),J2EE(Java2 企业版),J2ME(Java2 微型版)。Java最近版本为Java1.7,本系统使用版本为Java1.5版。软件中主要用到的API为Java网络编程API(Socket通信)、Java数据库API(JDBC)、Java图形编程API(SWT)。Java是一个纯粹的面向对象程序设计语言,它实现了语言面向对象技术的核心(源于C+),舍弃了指针(C、C+)、运算符重载、多重继承等特性,增加了垃圾回收器功能,使用该功能回收不再引用的对象所
40、占据的内存空间,使得内存管理对程序员而言变得简单。Java 1.5中引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性Java,其语言的特点可概括为:简单、纯面向对象(接口、动态)、分布式、健壮、安全、多线程、可移植13。正是因为Java语言的优良特性,本软件采用Java作为开发语言。2.2.3支持SSL的Socket通信(Java安全套接字扩展)SSL(安全套接层)是由Netscape公司开发的,其主要目标是提供浏览器和服务器的数据传输的安全性,提供了加密,身份认证和数据完整性功能14。 SSL3.0的改进版本TLS(传输层安全),已
41、经成为互联网标准。SSL和TCP套接字连接是非常相似的,SSL可以被简单地视为一个安全的TCP连接,但不支持某些TCP连接的特性。基于Socket的C/S程序是通过添加SSL来保护数据的安全性和完整性。此功能的Java提供了一个简单的方法:JSSE(Java安全套接字扩展),JSSE的SSL和TLS协议框架的使用纯Java实现,抽象了SSL和TLS算法复杂度,安全问题成为一个简单问题 15 。在J2SE1.4版中JSSE已成为标准组件,支持SSL3.0和TLS1.0。该系统在JSSE技术中实现传输控制的安全性。2.3 本章小结本章首先对需求进行一个详细的分析,对于整个系统开发的要求和实现目标做
42、了详细的分析。在这个基础上,对系统的模块划分进行一个说明。其次,对系统开发的一些相关技术做了一个详细的研究和说明,为整个系统的实现奠定了基础。第三章 SFTS的总体概要分析与设计基于业务系统的S FTS用户网络的网络通信系统,向客户提供安全,高效的为用户的系统的文件传输服务,部署文件传输服务独立的业务单位,个人之间的网络系统可能能够传输文件不同节点之间的不同,支持可靠的大文件传输。系统部署在任意连通网络中,每一个业务单位子网或终端作为一个网络节点,网络节点可灵活配置。它们逻辑上同属于一个部门,物理层面上相对集中,IP地址的前几位也全部都相同。每一个网络节点部署一套文件传输服务(组件)和多个文件
43、传输终端,业务单位机房服务器部署文件传输服务,业务单位用户操作终端机器部署文件传输客户端程序,文件传输服务支持多个文件传输终端同时访问。服务端与客户端可以独立部署,一套服务可以支持多个终端同时访问。服务端与客户端也可在同一台机器上运行。文件传输服务与文件传输终端采用C/S架构,网络节点间的文件传输通过各节点的文件传输服务实现,所有日常操作都通过终端界面操作实现。络中节点能与其连通的所有节点进行通信,但能否进行文件传输需要得到相应授权。根据以上要求,我们对整个系统进行概要分析。3.1 网络拓扑设计系统的网络拓扑结构分为两种模式,一种是中间管理节点部署模式,分为父节点和子节点,父节点可以对子节点进
44、行管理和授权。第二种是对等节点部署模式,其节点之间的优先级都是相同的,具体分析如下:(1)中间管理节点部署模式图3-1 中间管理节点部署模式网络拓扑图部署该系统支持的中间管理节点模式,如在图3-1中所示,在这种模式下的部署,在除了最上层的节点,每个节点都有一个父节点本身。批准的节点的父节点和子节点的每个节点具有对整个网络的拓扑结构数据,该节点的节点管理器配置信息发生变化,几个级别,定时和其他配置信息从父节点,获得最新的配置信息手动或参考其他通讯,更新拓扑数据。负责维护的下一层中的节点通信的目的,它是可以取消或授权的管理员在父节点的下一级节点。(2) 对等节点部署模式图3-2 对等节点部署模式网
45、络拓扑图如图3-2所示,系统还支持对等的互通节点构成子网络。在这种部署模式下,不存在父子节点关系,每个节点都保存全网拓扑数据等配置信息,当一个节点配置信息发生变化时,通过广播的方式通知其他所有节点。通知方式支持自动和手工两种方式。3.2 三层架构设计三层架构,通常意义上是整个业务应用划分,分为:表现层、业务逻辑层、数据访问层10。图3-3 系统架构图如图3-3所示,SFTS系统的表现层中,用户通过客户端界面,可以对系统进行有权限的操作,例如上传下载,节点授权等,然后把操作数据返回至业务逻辑层。业务逻辑层主要在服务器端,整个系统的业务处理都体现在业务逻辑层上。而数据访问层主要是对数据库中数据的管
46、理,包括数据库的访问及值守程序的运行。3.3 主要模块设计图3-4 总体模块图如图3-4所示,文件传输支持两种部署方式:1)核心模式,仅包括基础框架、文件传输核心两个模块,可以完成文件传输功能,系统需要为配置文件的方式提供某些配信息;在系统部署时,需预先编辑好配置文件;系统运行期,需变更配置,可修改配置文件后重启系统。2)完整模式, 包括传输文件管理,任务管理,审计分析,配置管理,用户管理模块,系统管理界面,并可以修改配置,并操作系统的运行和控制的服务重新启动。具体模块详细功能点见表3-1。3.4 系统的用例分析3.4.1 系统的用例图以下通过系统的用例分析图来更好的说明安全文件传输系统所具有
47、的功能。图3-5 系统用例图如图3-5所示,系统可进行如下操作:(1) 用户级别的用户代表,运营商将能够运行要发送的文件的操作定义的个人地址簿,接收操作将文件发送给用户的状态,它会传送文件,使用该系统显示文件状态,沟通的目的已被送往他们所收到的文件接收用户收到别人送他们的文件。为了在地址簿中的数据管理,维护,地址簿管理,是指用户在地址簿,任务管理器是一个用户来查看和管理文件传输任务的状态。(2) 审计员,对系统所有用户的所有操作进行审计。系统审计对系统所有用户的所有操作日志进行审计。(3) 使用值守程序,为了能够监视服务的状态,主要是自动升级的服务。监控系统管理员,可以显示出当前的系统和业务的实时状态。下载升级包升级系统,以自动检测自动升级,然后自动重启。(4) 子节点的审批和管理,用户管理,统计分析,包括配置参数,系统管理员负责的全球配置管理系统。管理是指子节点的子节点和数据管理的维护。它是经与其他节点的子,管理可能存在的,是指节点之间的通信。我指的是用户信息管理和用户管理系统,以维持网络中的节点。统计分析的统计分析系统的操作。配置参数用于设置系统参数。3.4
链接地址:https://www.31ppt.com/p-4023389.html