网络安全竞赛系统的设计与开发分析研究计算机专业_第1页
网络安全竞赛系统的设计与开发分析研究计算机专业_第2页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要在互联网时代的大浪潮下,全民信息化时代已经到来,互联网给人们的生活带来许多便利,但是网络环境的复杂程度也是非常之高的,因此网络空间安全便是现如今互联网时代大背景下的重要安全课题。现在网络上已经有了许多的网络安全竞赛的组织机构和团体,在校园中也可以开发出具有相应功能的网络安全竞赛系统,来更好的适配大学本身对于这方面的需求。为了使相关组织能够更好的开展网络安全竞赛,本文设计与开发了这套网络安全竞赛系统。首先,本文阐述了该系统的研究背景以及研究意义。之后,对于本系统所使用的技术进行了分析。本系统使用C#作为编程语言,采用ASP.NET的方式创建应用程序,系统的数据库采用了SQL Server数

2、据库。之后,本文对于该系统进行了开发可行性的分析。然后,本文软件工程的开发方式对于该系统进行了系统需求分析、系统概要设计、系统详细设计和软件测试等。该系统实现了登录注册、竞赛题目、比赛规则、裁判信息、队伍信息、回答问题、队伍排名、论坛交流等功能。本系统经过测试,系统运行状态正常,各项功能使用情况良好,用户体验上使用方便。为大学生网络安全能力的检验提供了一个真实有效的平台。 关键词:互联网;ASP.NET;网络安全;竞赛系统Design and Development of Network Security Competition SystemAbstract In the era of the

3、 Internet, the era of universal information is coming. The Internet gives people a lot of convenience. But the complexity of the network environment is very high, so cyberspace security is an important security issue under the background of the era of the Internet. Now in the network, we have own a

4、lot of organizations and teams to organize races of cyberspace security, we can also develop corresponding functions of the network security competition system, to better adapt to our university itself for this demand. In order to enable the relevant organizations to better carry out network securit

5、y competition, this article designed and developed the network security competition system. First of all, this paper describes the research background and significance of the system. After that, the techniques used in the system were analyzed. The system uses C# as a programming language, uses ASP.N

6、ET to create the application, uses Microsofts SQL Server database as data storage to be the background database storage. Then, this paper analyzes the feasibility of the system. Then, the development of software engineering in this paper has carried on the system demand analysis, the system outline

7、design, the system detailed design and the software test to this system. The system to achieve the login registration, competition topics, rules of the game, the referee information, team information, answer questions, team rankings, forum exchange and other functions. After being tested, the system

8、 runs normal, the use of various functions is in good condition, users are easy to use. It provides a real and effective platform for testing network security capabilities of students.Key Words:Internet;ASP.NET;Cyber Security;Competition System目 录 TOC o 1-3 h z u HYPERLINK l _Toc484685535 摘 要 PAGERE

9、F _Toc484685535 h I HYPERLINK l _Toc484685536 Abstract PAGEREF _Toc484685536 h II HYPERLINK l _Toc484685537 引 言 PAGEREF _Toc484685537 h 1 HYPERLINK l _Toc484685538 1 绪 论 PAGEREF _Toc484685538 h 4 HYPERLINK l _Toc484685539 1.1 课题研究背景及意义 PAGEREF _Toc484685539 h 4 HYPERLINK l _Toc484685540 1.2 国内外的研究现状

10、 PAGEREF _Toc484685540 h 5 HYPERLINK l _Toc484685541 2 相关技术方案 PAGEREF _Toc484685541 h 6 HYPERLINK l _Toc484685542 2.1 C# 概述 PAGEREF _Toc484685542 h 6 HYPERLINK l _Toc484685543 2.2 ASP.NET简介 PAGEREF _Toc484685543 h 7 HYPERLINK l _Toc484685544 2.3 SQL Server简介 PAGEREF _Toc484685544 h 8 HYPERLINK l _To

11、c484685545 2.4 ADO.NET简介 PAGEREF _Toc484685545 h 9 HYPERLINK l _Toc484685546 3 系统分析 PAGEREF _Toc484685546 h 11 HYPERLINK l _Toc484685547 3.1 可行性分析 PAGEREF _Toc484685547 h 11 HYPERLINK l _Toc484685548 3.1.1 技术可行性 PAGEREF _Toc484685548 h 11 HYPERLINK l _Toc484685549 3.1.2 经济可行性 PAGEREF _Toc484685549 h

12、 11 HYPERLINK l _Toc484685550 3.1.3 操作可行性 PAGEREF _Toc484685550 h 12 HYPERLINK l _Toc484685551 3.2 功能需求分析 PAGEREF _Toc484685551 h 12 HYPERLINK l _Toc484685552 3.2.1 服务对象 PAGEREF _Toc484685552 h 12 HYPERLINK l _Toc484685553 3.2.2 功能分析 PAGEREF _Toc484685553 h 12 HYPERLINK l _Toc484685554 3.3 用例分析 PAGE

13、REF _Toc484685554 h 13 HYPERLINK l _Toc484685555 4 系统设计 PAGEREF _Toc484685555 h 17 HYPERLINK l _Toc484685556 4.1 系统概要设计 PAGEREF _Toc484685556 h 17 HYPERLINK l _Toc484685557 4.2 系统模块设计 PAGEREF _Toc484685557 h 17 HYPERLINK l _Toc484685558 4.3 数据库设计 PAGEREF _Toc484685558 h 20 HYPERLINK l _Toc484685559

14、5 系统实现 PAGEREF _Toc484685559 h 27 HYPERLINK l _Toc484685560 5.1 首页实现 PAGEREF _Toc484685560 h 27 HYPERLINK l _Toc484685561 5.2 比赛规则的实现 PAGEREF _Toc484685561 h 28 HYPERLINK l _Toc484685562 5.3 注册登录功能的实现 PAGEREF _Toc484685562 h 29 HYPERLINK l _Toc484685563 5.4 账户管理功能的实现 PAGEREF _Toc484685563 h 29 HYPER

15、LINK l _Toc484685564 5.5 参赛队伍与裁判员展示功能实现 PAGEREF _Toc484685564 h 30 HYPERLINK l _Toc484685565 5.6 论坛交流功能实现 PAGEREF _Toc484685565 h 31 HYPERLINK l _Toc484685566 5.7 竞赛题目功能实现 PAGEREF _Toc484685566 h 32 HYPERLINK l _Toc484685567 5.8 竞赛管理功能实现 PAGEREF _Toc484685567 h 33 HYPERLINK l _Toc484685568 6 系统测试 PA

16、GEREF _Toc484685568 h 35 HYPERLINK l _Toc484685569 6.1 测试目的 PAGEREF _Toc484685569 h 35 HYPERLINK l _Toc484685570 6.2 测试方法 PAGEREF _Toc484685570 h 35 HYPERLINK l _Toc484685571 6.3 测试过程与结果 PAGEREF _Toc484685571 h 35 HYPERLINK l _Toc484685572 结 论 PAGEREF _Toc484685572 h 39 HYPERLINK l _Toc484685573 参考文

17、献 PAGEREF _Toc484685573 h 40 HYPERLINK l _Toc484685574 致 谢 PAGEREF _Toc484685574 h 41引 言互联网的广泛使用推动了全球性信息化时代的迅速发展,推动了全民信息化网络化的大进程。互联网为全球范围内的信息交流与互动提供了可靠地平台,网络的迅速发展极大的剪短了信息传递所需要花费的时间。互联网带给了现代生活新的便利与更便捷的生活方式,网络技术已经慢慢的渗透了我们生活的每一个领域,网络教育平台、网络学习平台、网络考试平台、网络教育平台等等与我们大学生息息相关的网络平台已经成为我们大学生学习知识与检验自身知识水平的有利途径。

18、而其中的网络竞赛平台就是代替传统纸质竞赛比拼知识水平的新途径。传统的竞赛形式往往需要大量的人力物力来维持进行,经过专业人员出题,再进行打印,分发给不同的参赛人员,作答完毕后进行回收,再进行批阅等等环节,存在着诸多缺点。首先对于组织方的工作量就压力巨大,他们要承担竞赛场地与管理人员,还包括试题纸张等等前期准备,而作为专业的教师人员等,他们还承担着繁重的出题与批阅工作,大量的纸张审阅工作无疑是极其繁重的。再者,对于试卷的保存很难保证完好,竞赛试卷的制作需要使用大量的纸张,这些试卷使用完毕后也需要保存一段时间后再销毁,处于对资源利用的角度,这与我们现在社会新时期的生态环境战略政策相违背。尤其是如果举

19、办大型赛事的话,竞赛场地的问题也是很关键的,场地的选择以及维护也需要使用很多的经费。而且来自不同地域的参赛选手来同一地点参赛也是不利于庞大的基数选拔的。因此,从各个角度来看,传统的竞赛模式已经不适合现在的竞赛需求,开发网络竞赛的平台是符合新的教育理念的,网络竞赛平台不受空间场地的限制,对于环境保护和资源利用更加合理,对于题库的建立修改以及保存更加便利,对于赛事结果的裁定更加透明,网络竞赛平台近年来越来越多的开展是符合当今时代的发展要求和发展轨迹的。同样,在互联网时代全民信息化的大背景下,人们虽然享受到了网络所带来的极大的便利,但是与此同时,人们也面临着许多新的挑战和新的威胁。网络空间安全如同每

20、个人所处的真正的社会人身安全一样,人们在其中都需要处处小心。各种病毒软件的在网上的肆虐,对个人已经企业集团的计算机进行入侵,盗取或者破坏或者篡改计算机中的数据,都造成了大量的经济损失,网络空间安全一旦出现问题,人们的个人资料会被泄露,人们的个人数据将会受到破坏,很多有害的恶意的信息不能被过滤,人们不光在网络中,现实中的生活也会受到波及影响。因此,对于在计算机专业学习的大学生来说,加强对网络空间安全领域的学习也是很重要的一个方向。为了面对当今社会复杂又研究的网络空间安全形势,我国为了实现国家网络空间安全战略,加速网络空间安全高层次人才培养,在“工学”门类下增设“网络空间安全”一级学科,旨在为了国

21、家的网络空间安全领域培养新的人才。网络空间为我们的生活提供了信息传播的新渠道,我们每个人在这个空间里进行生活,包括教育、医疗、购物等方方面面,互联网也因此成为新时代新的社会经济支柱产业,促进了国家的经济发展,推动了传统经济产业的升级,网络空间安全也成为了我们国家主权的新领域。因此我们在网络空间安全领域的教育是必要的,国家也的确在此方面加大了教育力度来培养相关的科技人才。利用网络平台,开展网络空间安全领域的竞赛是必要的,这有利于整个网络空间安全领域的人才培养和新的技术创造,在世界上已经有许多相关性质的比赛开展了,我国在这方面起步较晚,但是相关的高校、科研机构和相关领域的公司企业都在积极开展网络安

22、全竞赛。CTF(Capture The Flag)的中文名称叫做夺旗赛,网络安全技术人员之间用这种比赛形式在网络安全领域中进行技术竞技。CTF竞赛的以网络空间安全技术为主要竞赛考核核心,涉及编码解码、加密解密、信息隐藏、恶意网页分析、网络编程、漏洞攻击、恶意代码分析、入侵行为分析、渗透测试、二进制安全等方面的考核内容。CTF的起源是在1996年开展的DEFCON全球黑客大会,在这次黑客大会上,网络安全技术人员用技术比拼的方式代替了之前通过互相发起真实攻击的方式来进行黑客技术高低的角逐。发展到了今天,CTF赛事已经成为全球范围网络安全圈流行的竞赛形式,2013年在全球范围内举办了超过五十场国际性

23、CTF赛事。因为DEFCON全球黑客大会是CTF赛制的发源地,所以目前全球最高技术水平和影响力的CTF竞赛便非DEFCON CTF莫属了,类似于CTF赛场中的“世界杯” 。而在我国,现如今也已经开展了许许多多的网络安全竞赛,比如CSTS(Cyberspace Security Technology Contest)网络空间安全技术大赛、全国大学生信息安全竞赛、WCTF 世界黑客大师等等,现在我国的互联网公司如百度、360等均已举办相关赛事用以培养网络安全领域的人才。以上赛事的竞赛系统的功能都基本相同,功能都是主要用于对网络安全竞赛的开展,仅仅是在网站的前台页面布局和风格有所差异,而比赛的规则以

24、及数据库中所储存的数据库题目不同而已。对于网络安全竞赛平台的设计与开发已经有很多成熟的案例,本文所设计的网络安全竞赛平台与其他成熟的网络安全平台的功能选择上也比较相似,在前台页面的设计上加入了新的思路。因此,本文中所介绍的网络安全竞赛系统吸取了网络上已经存在的系统的开发经验,并且考虑了需要在大学内部开展相关工作使用本套网络竞赛系统的实际情况,详细的介绍了网络安全竞赛系统的开发思路和功能实现。首先本文给出了这套系统的开发技术需要,对于开发的可行性在不同的几个方面进行了分析,在得出了设计的可行性之后,本文分析介绍了网络安全竞赛系统的功能需求,根据功能需求划分了系统的设计模块,阐述了不同模块的设计思

25、路和设计思想。之后本文对不同模块划分下的不同系统功能进行了实现,并进行了进一步的阐述,在系统的功能实现完成之后,本文对系统的功能进行了全方位的测试,给出了测试结果和分析。最后本文对整个系统做出了总结,对整套系统所存在的不足进行了分析。综上所述,本文开发的系统可以在网络空间安全领域的人才培养和筛选上使用,符合在我们大学中开展此类比赛的实际情况,因此选择网络安全竞赛系统的设计与开发作为此次毕业设计(论文)的选题。 注:页码,居中,底部,宋体,小五,正文起始页页码为1。阅后删除此文本框。1 绪 论1.1 课题研究背景及意义计算机时代的来临表示着人类进入了信息时代,信息技术的空前发展意味着人们的生活方

26、式也开始变得信息化和网络化。从衣、食、住、行等方方面面人们都享受着网络生活给人们带来的诸多便利。在人们对于网络的需求不断加深的同时,人们对于网络的依赖也在不断变大,甚至说在如今社会的大多数人都无法离开网络独自生活,很多工作也无法离开网络独自展开。在人们依赖网络利用网络的同时,人们也把自己暴露于网络之中,人们的计算机中的各项数据、人们在网络上活动的各项记录、人们在网络上登录的个人信息等等都是人们在网络中留下的痕迹,因此人们不得不承认网络空间已经成为了每个人在计算机信息时代生活的另一个社会,而网络的空间安全也正是和人们在社会中的人身安全一样,必须值得每一个人重视。我国已经在国家安全战略中将网络空间

27、安全作为了安全战略的重要一环,维护网络空间安全就是维护国家安全的一部分,对个人信息的安全保护、数据的安全管理、防止非法的网络入侵等都是对于网络空间安全的保护,因此国家需要大量的网络空间安全方向的人才来在此领域做出杰出贡献。作为计算机相关专业的大学学部,更应该培养和筛选出杰出的网络安全方向的人才来从事相关工作,因此对网络安全领域的教育便迫在眉睫,对于网络安全领域人才的培养更是教育的首当其冲。虽然网络安全是计算机时代的重大安全问题,但是网络安全知识却很难普及,网络安全方向的人才也很难选出。因此,也应该开发出更加符合规范的网络安全竞赛平台来进行人才筛选。现在国内为已经存在了很多相关类型的网站和系统来

28、选拔网络安全方向的人才,学校自己本身也应该有自己相适应需求的系统来对网络安全人才进行培养和筛选。因此,本文此次选择开发这个网络安全竞赛系统。随着对于竞赛要求的不断提高,网络安全竞赛工作非常繁琐,传统的竞赛形式已经不能满足与计算机时代的网络安全竞赛,传统的竞赛方式需要付出大量的人力物力,对于参赛选手来讲也不是很方便。于是本文开发了这套网络安全竞赛系统。本套系统选用B/S(浏览器/服务器)的架构来作为本套系统的系统架构,选用ASP.NET作为技术开发框架。网络安全竞赛系统给参赛者提供了一个比较安全的竞赛方式,由管理员来进行网站后台的管理,进行数据的维护、更改,可以对竞赛的题目进行发布,发布赛事规则

29、以及资讯,参赛者通过自己的账户来回答竞赛题目,参与论坛讨论,实现此套网络安全竞赛系统。1.2 国内外的研究现状我国在网络空间安全领域的研究是从上个世纪八十年代末期开始的,在1986年中国计算机学会计算机安全专业委员会的正式成立以及1987年国家信息中心信息安全处的设置,标志着我国在计算机安全这个领域的事业开展,之后随着计算机互联网领域的迅猛发展,不同领域的各个企业对于计算机与互联网的办公需求也不断增强,在互联网内部的安全问题也不断显现。在1987年,全世界首例计算机病毒被制作,病毒问题、内部信息泄漏和系统宕机等问题都在当时造成了很大的经济损失。1983年,第一代防火墙诞生,时至今日,已经推出了

30、第五代防火墙。于是乎从九十年代到二十一世纪这段时期,国家对网络安全领域的重视程度不断提高,网络信息安全成为了许多大学和科研机构的重要课程和研究项目,对于网络安全领域的人才培养也愈发的重视。在2014年,我国政府成立了网络安全和信息化领导小组,该小组将研究制定网络安全和信息化发展战略、宏观规划和重大政策,推动国家网络安全和信息化法治建设,不断增强安全保障能力。现如今,存在于互联网的计算机病毒超过一万种,不断威胁着网络空间安全。在未来的网络安全领域,更应该注重于网络安全体系的研究、对于网络攻击和网络入侵的检测与抵御技术的研究、对于受攻击的数据的保护与恢复的研究等等。网络安全竞赛的历史可以追溯到19

31、96年,在当年举办的DEFCON全球黑客大会上,黑客们选在了技术比拼的方式来对互相的技术水平做出对比,而没有使用以前的互相攻击的方式。发展至今,在全球范围内,网络空间安全领域最流行的竞赛形式就是CTF类赛事。在CTF赛事上,团队之间通过技术程序分析和攻防对抗等形式,解答出主办方给出的题目的内容来获得分数。根据来自CTFTIME的数据显示,于2015年举办国际性CTF赛事就有78场。现如今国际上的主流赛事有:DEFCON CTF,是CTF赛事的发起者,被誉为CTF赛事中的“世界杯”;Pwn2own:全世界最著名、奖金最丰厚的黑客大赛;Boston Key Party,是一项近年来兴起的在线解题赛

32、事;EBCTF:是由荷兰老牌网络安全竞赛强队Eindbazen组织的在线解题赛事等等。而近年来,国内也兴起了大量的CTF赛事:XCTF全国联赛,是国内最具有权威、最高技术水平与最大影响力的网络安全CTF赛事平台;AliCTF:由阿里巴巴公司组织的面向大学生的网络安全竞赛平台等等。虽然我国对于网络安全竞赛的开展比较晚,但是由于现在大量互联网公司的创办,社会上对于网络安全领域人才的需求与越来越多,因此我们现在开展的网络安全赛事也越来越多。很多大型的互联网企业也积极投身于网络安全竞赛的举办,借鉴国际赛事的组织经验和开展形式,纷纷开发出了相适应自身需求的网路安全竞赛系统。2 相关技术方案2.1 C#

33、概述C#开发语言是美国微软针对面向对象开发的一种全新技术,它需要.net framework类库的支持,C#语言在接口使用、继承以及相同的语法和编译成中间语言再执行的过程的方面与Java语言有很多相似的地方,但C#语言与COM组件是直接集成的,可以直接调用Com组件,这也是与Java的不同之处。C#语言是一种既安全又稳定的开发语言,它是通过C和C+语言所衍生过来的一种全新的面向对象的开发语言,它继承了C语言和C+语言的一些优点,同时呢也规避了这2种语言的一些缺点,比如,C#没有宏的概念,C#语言综合了VB等面向对象开发语言的过程以及C+语言的高效运行,已经成为.NET开发的首要选择。本系统之所

34、以选择C#作为开发语言主要是因为C#语言有以下特点:效率与安全性面对快速的网络技术发展,使得企业必须更加快速的面对竞争对象的各种威胁。所以开发人员需要最大限度的减少整个开发周期,并且能够随着技术的发展能够稳定的发布各种新版本,而不是简单的只有一个标准版本,C#语言在最初设计时就已经考虑到了这些问题,也做了很好的规避,它会使开发人员能够用最精简的代码去完成更多的任务,并确保他们不容易犯错误。支持现有的网络编程新标准C#开发人员可以利用.NET框架平台来搭建它本身可扩展的功能,当然C#语言也涵盖了很多独有的内置特性,它可以使很多组件能够转化为IE所能够识别的xml,并且能够被所有的操作系统所运行。

35、消除大量程序错误 C#的资源自动回收方式为开发人员减少了很多不必要的考虑,包括对内存的优化等等; C#中的变量是通过环境来自动进行的初始化。 C#变量类型是非常安全的。(4) 扩展交互性 内置对Com组件和基于对API的支持; 允许有规范的使用指针(Native Pointer)。2.2 ASP.NET简介ASP.NET不仅仅是升级过后的ASP语言,它是微软推出的全新一代的脚本语言。是非常完备的网站系统的开发技术。ASP.NET一种全新的Web开发模式,它是基于.NET Framework平台下的。这种全新的开发模式不但吸收了ASP的优点,而且还增加了不少新的特点,同时呢也改正了ASP上面的一

36、些错误。ASP.NET不仅仅支持开发网站的一切解决方案,包括对数据的验证、缓存技术以及调试和部署等功能。ASP.NET提供在HTML代码中混合某种程序代码、由语言引擎解释执行程序代码。它在代码编写时可以将页面和代码进行分离,这样可以让开发人员更轻松的应对页面代码的编写工作,让网页内容更加丰富多彩,同时也使代码更加简单、明了。表2.1展示了ASP.NET的性能特点。表2.1 ASP.NET性能特点表性能参数ASP.NET的性能特点运行速度较快运行耗损较大难易程度上手简单运行平台Windows扩展性好安全性较差函数支持较多数据库支持多厂商支持较少对XML的支持不支持对组件的支持支持对分布式处理的支

37、持支持应用程度较广ASP.NET特点和优势:(1) 与浏览器无关ASP.NET是完全遵循W3C标准的,所以只需要设计一次标准化的页面,就可以在任何不同的浏览器中进行显示,也就是说用ASP.NET设计的程序在IE浏览器的呈现效果与遨游、火狐等浏览器的呈现效果是一样的。(2) 方便设置断点、易于调试在Web程序的开发过程中,针对代码的调试一直以来都是开发人员最头疼的事情,因为IDE约束不了很多实用的Web服务器,在这一点上微软就有着得天独厚的优势,因为IIS是微软开发的,有了代码断点跟踪调试,在排除错误时就显着相当的方便。(3) 在编译后执行,运行效果提高程序代码的编译就是将代码转换成机器可以识别

38、的语言的过程,而ASP.NET并没有直接将代码编译成机器可识别的语言,而是由即时编译器通过微软的中间语言,一步一步的翻译成最终机器可识别的语言,在这其中即时编译器也并不是做一次完整的编译,而是调用哪些代码就编译哪部分的代码,这样的操作会缩短启动时间,并且无需再次编译已经编译过的代码,这就极大的提高了开发的效率。(4) 支持丰富的服务器控件我们通常看到的一些菜单导航功能,这些功能如果换在JAVA中,实现一个导航栏或者菜单栏是需要非常多的代码编写工作的,而在ASP.NET中,我们可以直接使用类库提供的控件进行直接的拖拽就可以完成,极大地节省了开发人员的大量时间,并且ASP.NET内置了上百种的常用

39、控件,它们可以帮助我们实现各种各样的功能,早期的开发工作使用纯编码的方式,工作量巨大,而改用拖拽控件的方式量可以减少了大约70%的工作量,使我们的工作效率大大提高。(5) 基于事件驱动编程,采用代码后置的方式,使代码更清晰ASP.NET将程序代码和页面进行分离,.aspx文件中只编写HTML的代码和控件,代码文件.cs中编写相应的执行代码,这两个文件相互关联构成一个页面,这样可以使代码看起来更加清晰,而且非常有利于代码的阅读和维护。2.3 SQL Server简介SQL Server数据库是由微软开发出来的一个数据存储的平台,是一个关系数据库管理系统。它可以协助人们不受地点以及时间的限制来管理

40、数据。数据库中可以直接存入一些结构化的数据或者半结构化的数据。SQL Server拥有用很多集成的服务,它不仅能够对数据搜索、查询以及分析之类的操作,而且它可以不用管数据存储在哪里,因为它存储数据的地方,可以是在服务器上,也可以是在移动终端设备上。SQL Server允许使用Visual Studio 开发的程序来使用数据,而且还可以通过日常使用的像Office来访问数据,SQL Server为人们提供了一套高效率、可信的数据存储平台,可以满足任何形式的数据存储的要求。SQL Server特点:(1) SQL Server 为应用程序提供了很高的安全性、伸缩性、确保业务可持续性和可靠性。(2)

41、 SQL Server可以极大的减少开发应用程序的成本和时间。(3) SQL Server拥有真正的客户机/服务器体系结构,拥有图形化的用户界面,使用者可以更加直观并且简单的对数据库进行操作。(4) SQL Server提供了全面的数据存储平台,在用户需要对数据存储时提供智能的数据化存储服务,而这一点在其他付费的DBMS上才有。2.4 ADO.NET简介ADO.NET起源于ADO,它的主要作用是访问数据,因为希望在.NET的环境中优先使用它来对数据进行操作,所以微软公司将它叫做ADO.NET。ADO.NET是针对数据源进行相互交互的类库,通常来讲,数据源也就是数据库,它同样也可以是Excel或

42、者XML等数据源。ADO.NET可以通过跟不同的数据源进行关联,ADO.NET是需要针对不同的数据库来采用不同的协议的,因为每个数据库的协议也都是不一样的,所以在链接数据库时要提供相关的协议,像ODBC的协议应用于一些老的数据库,而OLEDB协议则应用于新的数据源,并且将来还会有更多的数据源不断地涌现在技术领域,这些较新的数据源完全可以利用ADO.NET提供的类库进行数据交互链接。ADO .NET会提供最直接的方法,让开发人员在 .NET Framework 中进行资料存取。ADO.NET在访问数据时会用到一些数据操作对象,用于与特定的数据存储设施交互,通过ADO.NET的DataSet接口提

43、供:(1) Command对象Command对象主要是用来实现对数据库的增加、修改、删除、查询等命令,通过Command对象转换为数据库可执行的脚本。(2) Connection对象Connection对象用于执行T-SQL语句,提供了一些对数据库进行连接的对象,通过这些连接对象可以实现对不同数据库的连接。(3) DataAdapter对象DataAdapter对象可以对数据集(DataSet)进行数据源的操作,同时提供了数据库连接或断开的一些方法,它主要是通过Fill方法来实现的对数据源的一些操作。(4) DataReader对象DataReader主要是用来读取数据使用的,它能够很快的返回

44、数据信息,同时也不会大量的消耗内存资源,它还可以连接数据库,对数据信息进行处理等。(5) DataSet对象DataSet是一种数据集,好比电脑的内存,它是ADO.NET的核心组件,可以帮助程序员在编写代码时来规避数据库的差异,使数据模型能够统一,当然DataSet跟关系数据库基本都一致,它也提供了表和表之间的约束以及关系等,也可以对DataSet进行查询筛选等。3 系统分析3.1 可行性分析对本套网络安全竞赛系统开展可行性分析的目的是为了表明开发该系统实现在技术、经济和使用后操作方面是否合适与可行,并且合理的对开发这套系统提出各种可能的方案假设并且选择出最合适的开发方案。决定系统开发可行性的

45、因素有首先是成本效益分析,效益大于成本时才可以着手开发。其次是技术分析,技术可行表明现有技术可完成开发任务,最后是操作分析,现有的工作人员可以快速掌握并使用本套系统。3.1.1 技术可行性技术可行性主要包括系统能否在硬件或者软件技术上都能够满足用户的需要。由于本套网络安全竞赛系统采用的是C #编程语言,这种编程语言简单易用,上手容易。利用的是ASP.NET技术框架,用以上技术框架作为本套系统的开发技术,系统的运行消耗时间更少、运行速度更快以及有着更加良好的结构,对于系统的安全性和扩展性有良好的保障,对于组件和分布式处理也可以很好的支持,应用程度较为广泛。整个系统采用的是B/S(浏览器/服务器)

46、开发模式,这种开发模式是很利于WEB网页开发的一种网络结构模式,系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用,通过浏览器就可以实现系统的复杂功能,系统的维护和扩展也会很容易,在开发的技术层面有着好好地支持。数据库使用的是微软比较成熟的SQL Server数据库进行数据的存储,在数据的安全性、准确性上都能够得到完好的保护,使用起来也是非常的方便,为整个系统的开发及使用提供一个良好的基础。因此,该系统的在技术上的开发是可行的。 3.1.2 经济可行性本系统使用的是Visual Studio作为开发工具,用SQL Server数据库作为数据存储依托,两个软件都可以在网上直接下载

47、进行使用,因此,在开发成本上现有的开发工具都是免费的,基本上不需要什么启动资金,按照目前的情况来看,每人都有一台电脑,开发软件也都是可以免费使用的,并不存在前期的开发成本。再次,本系统还未实现盈利,目前只供毕业设计使用,但未来还有很大的改进空间,如果能够进一步的完善,当然也可以作为一个成品进行销售,从而实现利益的双赢。所以说,本系统在经济可行性上是可以接受的。3.1.3 操作可行性在如今这个信息化的时代,人们的教育水平与日俱增,特别是对计算机的基本操作都是很熟悉的。本套网络安全竞赛系统的页面设计非常直观,功能设计一目了然,很便于在大学内部使用。系统的使用用户分辨是作为参赛用户的学生团体以及作为

48、管理用户的教师团体,两者都是具有专业的计算机知识的使用用户,因此对于系统的操作和使用应该没有困难的地方。另外,即使使用者真的对整个系统不熟练,也可以通过专业技术人员对使用者进行简单的指导,让技术人员协助你完成一些操作,说明系统的操作是可以在用户群体内流通的,那么该系统的在操作上是可行的。综上所述,本系统不管是在操作上、技术上、经济上都是可行的,能够实现在前期不投入资金的情况下,就进行开发,并且再投入使用之后,实现预期的应用效果。因此,该套网络安全竞赛系统是可以开发的。3.2 功能需求分析在软件系统开发的过程中,对系统的功能需求分析是为了表明开发系统的目的,也就是为了表明系统的使用者希望获得什么

49、样的用户体验。只有了解了使用者的需求,软件的开发才能分析并解决使用者对于功能的需求,这个阶段是面向使用者的阶段,相当于把系统的功能和使用者的业务流程对接,开发出让使用者满意的系统。3.2.1 服务对象该系统的使用者分为两种,分别是参赛用户和管理用户。参赛用户就是学生团体,学生们自己组织队伍注册信息,登录之后可以查看网站的信息,对赛事咨询、赛事规则、赛事裁判信息进行查看,对赛事题目进行解答,在论坛中发帖交流。管理员用户就是教师团体,管理员用户登陆后进入后台管理页面,可以发布赛事信息与赛事规则,发布题目并且对已经提交的答案进行打分,同时对数据库进行维护与管理。3.2.2 功能分析(1) 用户注册登

50、录功能参赛队伍注册,包括用户名密码和队伍详细信息,其中带有*号标示的是必填选项。注册成功可以返回登录。系统验证用户成功安全登录后赋予用户相应权限,用户可以查看比赛规则和比赛题目,实现题目检索和论坛发帖等。用户注销后可以退出系统,更换其他已经注册的账号登录,用户在个人信息功能中可以更改自己队伍的信息。管理员用户登录后进入后台管理页面,此时可以查看不同的用户信息,对网站进行维护管理,包括对竞赛题目、竞赛规则、竞赛信息、参赛选手、裁判信息等进行查看和修改。(2) 比赛规则模块对最新比赛规则信息进行展示。参赛用户可以查看,管理员用户可以在后台进行添加、删除、修改等操作。(3) 竞赛题目模块对竞赛题目进

51、行展示,展示题目列表,显示题目的名称和发布时间,点开后可以看到题目的详细信息,参赛用户可以对题目进行作答并提交答案。(4) 搜索功能在已经发布题目过多的情况下,可以对题目进行检索,查找更适合自己先作答的题目抢先得分。(5) 队伍信息功能已经注册的队伍信息在这个模块下进行展示,可以显示队伍信息以及队伍在赛事中的得分和排名情况。(6) 裁判信息功能可以展示裁判信息。将高水准网络安全领域的裁判员信息公布,表示出比赛的正规性。(7) 论坛功能成功登陆参赛队伍可以进行发帖讨论相关技术知识,参与互动讨论,并且具有相应的帖子回功能,用户和管理员可以删除帖子。(8) 竞赛管理功能管理员对数据库进行维护和管理,

52、可以维护竞赛题目、规则等内容,包括对比赛规则信息和题目的添加、修改和删除,还可以审核参赛队伍的回答情况,裁判员对提交答案进行打分。3.3 用例分析用例图是描述使用者是如何使用系统功能的,用例分析是把用例模型转换为分析模型的过程。本文使用用例图按照对参与者有用的需求将系统的功能划分为几个模块,表明该网络安全竞赛系统的使用者与用例之间的关系。下面先给出根据系统的功能分析得出的系统用例图,之后从系统的参与者开始分析用例,解释用例图中每个参与者是如何参与到系统中来的。图3.1 管理员作为使用者的用例图由上述用例图我们可以看出,图3.1描述的参与者是管理员,其中管理员用户可以使用的用例有登录系统、竞赛规

53、则管理、竞赛题目管理和竞赛答案审阅。其中登录系统后可以获得管理员的权限,相当于登录系统的附加功能,因此获得管理员权限用例与登录系统用例是扩展关系。同时竞赛规则管理用例又包含竞赛规则添加、竞赛规则修改和竞赛规则删除用例,竞赛题目管理用例包含竞赛题目添加、竞赛题目修改和竞赛题目删除用例,竞赛答案审阅用例包含打分和评语用例,这都属于用例之间的包含关系。而在打分之后,队伍会根据得分情况拥有积分排名,是打分的扩展功能,队伍得分排名用例和打分用例之间是扩展关系。此部分属于整个网络安全竞赛系统的一个子系统,是后台管理的部分。从用例图3.1中我们可以分析该子系统的主事件流,管理员用户登录系统获得管理员权限,可

54、以进行竞赛规则的管理,管理员用户添加新的竞赛规则删除无用的竞赛规则并修改待更新的竞赛规则,之后管理员对竞赛题目进行管理,管理员用户添加新的竞赛题目删除无用的竞赛题目并修改待更新的竞赛题目,最后管理员对已经被参赛团队用户提交的竞赛回答进行审阅,给每一个竞赛回答打分和评价,根据得分系统更新队伍的排名。图3.2 参赛团队作为使用者的用例图由上述用例图我们可以看出,图3.2描述的参与者是参赛团队用户,参赛团队用户参与的用例有注册用户、登录系统竞赛信息查看、竞赛题目操作与竞赛论坛交流几种用例。其中登录系统的附加功能是获得参赛团队权限,两者属于扩展关系。竞赛信息查看用例包括竞赛规则查看用例、竞赛裁判查看用

55、例和竞赛队伍查看用例,前者和后者之间属于包含关系。竞赛队伍查看用例还包含查看队伍积分排名用例。竞赛题目操作用例包括竞赛题目查看用例、竞赛题目检索用例和竞赛题目回答用例,竞赛题目回答用例还包括获得竞赛积分用例。这部分也属于这个网络安全竞赛系统的一个子系统,是前台竞赛部分。从用例图3.2中我们可以分析该子系统的主事件流,参赛团队用户首先注册团队信息拥有登录账号,之后登录系统获得参赛用户权限,可以对系统进行查看和操作,首先可以对竞赛信息进行查看,包括竞赛规则、竞赛题目、竞赛裁判与其他参赛队伍,查看参赛队伍信息的时候可以看到排名信息。之后可以对竞赛题目进行回答,回答之后等待管理员用户的审阅,或得相应的

56、积分,最后还可以使用论坛进行交流。4 系统设计4.1 系统概要设计通过上一章对系统的需求分析,可以知道网络安全竞赛系统的使用者分为管理员即裁判方和参赛队伍两种角色。两种使用者分别使用系统的不同功能,因此可以得出本系统的功能模块可以分为两个部分,就此本文给出系统的功能模块图,如图4.1所示:图4.1 功能模块划分4.2 系统模块设计本系统的使用流程都是针对于需求分析里的功能概述进行设计的,分别是系统的登录注册模块、竞赛管理中的竞赛的信息规则和题目发布模块、竞赛题目回答模块、论坛交流模块等。系统登录注册功能能够保证系统的安全性,进入系统后可以根据自己的需要来进行相关的操作,整个系统以方便快捷为目的

57、,秉承着易操作、快上手的原则。通过对登录注册功能进行设计,必须保证输入的用户名以及密码都不允许为空,如果存在空的输入的话,系统会对用户进行提示,要求用户不可以输入为空。并且系统保证管理员能够对系统的功能进行综合性的管理。在登录界面中,如果用户输入的用户名或者密码错误则系统会给出相应提示,如密码错误或者用户名不存在等等,并且能够保证页面始终在登录界面上,可以使用户进一步的使用其它密码进行尝试,当输入的用户名和密码都正确的话,才允许其登录系统来进行操作,如图4.2所示:图4.2 登录功能流程图竞赛的后台管理模块主要是用于管理员用户管理系统的。这里用比赛规则模块为例做统一的说明,比赛规则信息主要是裁

58、判发布比赛规则的相关信息,裁判输入比赛规则名称和详细内容,如果裁判输入内容为空,则不能发布信息,流程如图4.3所示:图4.3 比赛规则信息流程图竞赛题目模块主要是裁判上传题目,参赛人员回答题目上传答案,裁判员进行打分,如图4.4所示:图4.4 竞赛题目流程图4.3 数据库设计在对数据库进行数据表设计前,需要进行概念结构的设计,概念结构设计是在数据库设计之前非常重要的一项内容,概念结构设计是将需求转换成概念模型的过程。概念结构设计的特点有:(1) 能够真实的反映现实世界的内容。(2) 能够轻松理解内容。(3) 当应用或者环境发生改变时,能够轻松的修改概念模型。(4) 可以往网络、层次、关系等方面

59、进行模型的数据转换。概念模型作为各种数据模型的基础,比概念结构能够更加独立,但其稳定性优于各种对象。为了能更好的表述用户的数据模型,通常是创建一个数据模型,这也是从用户的观点出发。最常用的就是概念数据模型也就是E-R模型。为了表达用户的数据,有必要根据用户的观点来建模数据和信息,并建立面向问题的数据模型。下面本文将E-R图分成几个部分来展示。图4.5 用户回答竞赛内容的E-R图图4.5展示了实体用户与实体竞赛内容之间的关系,用户包括账号、密码、队名、简介、对标、邮箱、成员、权限等几个属性,竞赛内容实体包括分类、标题、内容、图片、发布人、发布日期等几个属性。用户和竞赛内容之间是多对多的关系,每个

60、用户可以回答多个问题,每个问题也可以被多个用户回答。图4.6 用户发帖回帖的E-R图图4.6展示了用户实体与论坛帖子实体之间的关系,由于用户实体的属性在上面已经给出,这里就没有重复,论坛帖子实体拥有标题、内容、发布人、发布日期等属性,用户和论坛帖子之间是多对多的关系,一个用户可以发多个帖子,每个帖子也可以被多个用户回复。另外用户实体还有查看比赛规则和比赛题目的逻辑关系,但这层逻辑关系比较简单,也是多对多的关系,每个用户可以查看多条比赛规则和比赛题目,每个比赛题目可以被多个用户查看,本文就不再给出E-R图示说明。图4.7 管理员管理竞赛和审阅答案的E-R图图4.7展示了管理员用户实体和竞赛内容实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论