网络安全课程设计报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1中原工学院计算机学院《网络安全程序》课程设计报告题目:基于des加密的聊天程序班级:网络124班2目录第1章绪论____________________________________________________31.1des加密背景______________________________________________31.2聊天程序设计背景_________________________________________4第2章加密原理________________________________________________52.1des简介__________________________________________________52.2des加密原理______________________________________________52.3des加密过程______________________________________________7第3章聊天程序设计____________________________________________83.1TCP/IP协议_______________________________________________83.2客户机/服务器模式________________________________________83.3Socket___________________________________________________9第4章系统设计_______________________________________________114.1开发语言及环境__________________________________________114.2需求分析________________________________________________114.2.1功能需求分析__________________________________________114.2.2数据需求分析__________________________________________114.2.3性能需求分析__________________________________________124.2.4运行需求分析__________________________________________124.3程序流程图______________________________________________134.4模块设计________________________________________________144.4.1服务器________________________________________________144.4.2客户端________________________________________________15第5章程序测试_______________________________________________175.1运行结果________________________________________________17第6章总结___________________________________________________21参考文献______________________________________________________213第1章绪论1.1des加密背景随着计算机和网络在军事、政治、金融、工业、商业等部门的广泛应用,社会对计算机和网络的依赖越来越大,科学技术的研究和发展及其在商业领域的应用等方面,无一不与信息息息相关。所以信息就是生命,信息就是时间,信息就是财富。由于信息是共享的,信息的扩散会产生社会影响,所以保护信息的安全是信息时代的迫切需要。如果计算机和网络系统的信息安全受到破坏将导致社会的混乱并造成巨大损失。因此,确保计算机和网络系统的信息安全已成为世人关注的社会问题和计算机科学与技术领域的研究热点。当前,以Internet为代表的计算机网络的迅速发展和广泛应用,正引起社会和经济的深刻变革,极大地改变着人们的生活和工作方式。Internet已经成为我们生活和工作中一个不可缺少的组成部分。对此,发展我国的电子政务、电子商务和电子金融已成为建设具有中国特色社会主义强国的不可回避的选择。然而,目前影响电子政务、电子商务、电子金融应用的主要技术障碍是信息安全问题。由于Internet原来缺少安全设计,再加上Internet的开放性和无政府状态,使Internet成为一个不安全的网络。这就使得Internet不能适应电子政务、电子商务和电子金融等系统对信息安全的要求。确保信息的安全就必须加强加密技术,加密技术是基于密码学原理来实现计算机、网络乃至一切信息系统安全的理论与技术基础。1977年美国颁布了数据加密标准DES(DataEncryptionStantard),这是密码史上的一个创举。DES算法最初由美国IBM公司设计,经美国国家安全局评测后,颁布为标准。DES开创了向世人公开加密算法的先例。自从公布以来,它一直超越国界,成为国际上商用保密通信和计算机通信的最常用的加密算法。DES也是曾被广泛使用的分组密码,遍及世界的政府,银行和标准化组织把DES作为安全和论证通信的基础。DES算法公开是密码学史上里程碑式的事件41.2聊天程序设计背景随着互联网技术的发展,互联网应用越来越丰富。互联网以其独特的传播方式吸引了大量用户,同时也给人们带来了许多便利,譬如可以借助于网络进行相互交流、信息传递等。聊天工具作为互联网中运用最为广泛的通信工具之一,它可以让用户之间进行即时的交流和信息的传递。聊天工具的出现可以说是基于互联网通信交流方式的历史性变革,它已经渐渐取代了原来效率低、费用高的如信件、电报的通信方式,以其快速、交互、简便的方式给用户的交流提供了简单、易用的信息平台,成为现今应用最为广泛的即时通信工具之一。随着相关技术的日益发展,用户对功能的需求不断提高。为了更好地服务于用户,聊天工具的功能也在不断地完善。在未来的网络时代中,聊天工具将以即时通信为其基本特点,并与各种网络应用整合,同时随着无线网络的广泛应用,它将成为未来不可缺少的一种通信软件。本课程设计的目的主要是为了满足人们通讯交流的便捷,实现灵活、全面的语音、视频信息的传递和服务。模拟腾讯公司的QQ聊天软件,开发一个多功能的聊天系统软件,该课程设计主要实现文字聊天功能。5第2章加密原理2.1des简介DES的设计目标是,用于加密保护静态存储和传输信道中的数据,安全使用10—15年。DES综合运用了置换、代替、代数等多种密码技术。它设计精巧、安全、方便,是近代密码的世界标准,为确保数据安全作出了重大贡献。DES的设计充分体现了Shannon信息保密理论所阐述的设计密码的思想,标志着密码的设计与分析达到了新的水平。DES是一种分组密码。明文、密文和密钥的分组长度都是64位。DES是面向二进制的密码算法,因而能够加解密任何形式的计算机数据。DES是对合运算,因而加密和解密共用同一算法,从而使工程实现的工作量减半。2.2des加密原理DES全称为DataEncryptionStandard即数据加密算法,它是IBM公司研究成功并公开发表的。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。数据加密标准(DES)的算法是用于计算机数据加密保护的分组加密的数学算法,算法以64bit为一个分组对数据进行加密。使用64bit的密钥加密64bit分组的信息。首先将原始数据64bit明文进行初始置换IP,然后与子密钥(由加密密钥产生)进行一系列迭代运算,最后再经过逆置换1IP,即可得到64bit密文(加密后数据)。在每一轮中,数列块的右边32bit数据和密钥(Key)一起传送给函数f,函数f运算的结果再与数列块左边32bit数据进行“异或”操作。其中S盒(S选择函数)是DES算法的心脏,由它实现非线性变换。解密过程与此类似,只是在应用子密钥时,顺序颠倒为k16,k15,…k2,k1。6DES算法实现时用到许多的数学知识,子密钥的产生,初始值换IP,加密函数以及逆初始值换1IP。DES的整体结构如图2-1所示:1iiRL),(11iiiiKRfLRi=1,2,3,…,16图2-1DES的整体结构72.3des加密过程1)64位密钥经子密钥产生算法产生出16个子密钥:1621,,KKK,,分别供第一次,第二次,……,第十六次加密迭代使用。(2)64位明文首先经过初始置换IP(InitialPermutation),将数据打乱重新排列并分成左右两半。左边32位构成0L,右边32位构成0R。(3)由加密函数f实现子密钥1K对0R的加密,结果为32位的数据组),(10KRf。),(10KRf再与0L模2相加,又得到一个32位的数据组),(100KRfL。以),(100KRfL作为第二次加密迭代的1R,以0R作为第二次加密迭代的1L。至此,第一次加密迭代结束。(4)第二次加密迭代至第十六次加密迭代的分别用子密钥1632,,KKK,进行,其过程与第一次加密迭代相同。(5)第十六次加密迭代结束后,产生一个64位的数据组。以其左边32位作为16R,以其右边32位作为16L,两者合并再经过逆初始置换1IP,将数据重新排列,便得到64位密文。至此加密过程全部结束。综上可将DES的加密过程用如下的数学公式描述:1iiRL),(11iiiiKRfLR16,3,2,1i8第3章聊天程序设计3.1TCP/IP协议TCP/IP协议的核心部分是传输层协议(TCP、UDP),网络层协议(IP)和物理接口层,这三层通常是在操作系统内核中设计。因此用户一般不涉及。TCP是面向连接的,通信双方保持一条通路,好比目前的电话线,使用telnet登陆BBS,用的就是TCP协议;UDP是无连接的,通信双方都不保持对方的状态,浏览器访问Internet时使用的HTTP协议就是基于UDP协议的。编程时,编程界面有两种形式:一、是由内核心直接提供的系统调用;二、使用以库函数方式提供的各种函数。前者为核内设计,后者为核外设计。用户服务要通过核外的应用程序才能设计,所以要使用套接字(socket)来设计。3.2客户机/服务器模式C/S结构(Client/Server结构)是大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。首先服务器方要启动,并根据请求提供相应服务:(1)打开一通信通道并告知本地主机,它在某一公认地址端口上(如http为80)接受客户请求。(2)等待客户请求到达该端口。(3)接收到重复服务请求,处理该请求并发送应答信号。接收并发服务请求,要激活一新进程来处理这个客户请求。新进程处理此客户请求,并不需要对其他请求做出应答。服务完成后,关闭此新进程与客户的通信链路,9并终止。(4)返回第二步,等待另外的客户请求(5)关闭服务器。客户方:(1)打开一通信通道,并连接到服务器所在主机的特定端口。(2)向服务器

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功