信息安全结课论文

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

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

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

资源描述

信息安全结课论文(2014-2015第二学期)题目:数据加密技术研究院(系、部):工商管理学院学生姓名:于跃任课教师:刘海滨2015年4月30日HebeiNormalUniversityofScience&Technology专业:信息管理与信息系统学号:0811120120摘要数据密码技术[1]是网络与信息安全的核心技术,其基本的设计思想是把欲发送消息(明文)的各种变换(称为加密算法)后的载体形式(称为密文)进行存储和传输,授权的接受者用相应的变换(称为解密算法)恢复明文,不合法的截收者对明文不可见或不理解,从而达到信息安全的目的。关键词:明文;加密算法;密文;解密算法ABSTRACTDocumentcodetechnologyisthecoreofthenetworkandinformationsecuritytechnology,itsbasicdesignthoughtistosendthemessage(plaintext)ofallkindsoftransform(calledencryptionalgorithm)afterthecarrierform(calledciphertext)forstorageandtransmission,authorizedreceiverusingcorrespondingtransform(calleddecryptionalgorithm)resumeexpressly,notlegalJieShouexpresslytheinvisibleordon'tunderstand,soastoachievethepurposeofinformationsecurity.keywords:expressly;encryptionalgorithm;ciphertext;decryptionalgorithm1.绪论1.1时代背景在信息时代,信息安全问题越来越重要。我们经常需要一种措施来保护我们的数据,防止被一些怀有不良用心的人所看到或者破坏。因此,在客观上就需要一种强有力的安全措施来保护机密数据不被窃取或篡改。解决这个问题的方式就是数据加密。一个加密网络,不但可以防止非授权用户的搭线窃听和入网,而且也是对付恶意软件的有效方法之一。有些时候用户可能需要对一些机密文件进行加密,不是因为要在网络上进传输该文件,而是担心有人窃取计算机口令而获得该机密文件。身份认证是基于加密技术的,其作用是来确定用户是否是真实的。在传输过程中对数据进行加密,可以保障数据在传输过程中安全。网络安全所要求的保密性、完整性、可用性,都可以利用密码技术来实现。可以说,密码技术是保护大型通信网络上传输信息的实用手段之一。1.2时代意义随着现代信息快速发展和网络的普及,人们可以不用出门而了解世界大事和得知一些重要的信息。同时,带来的负面影响:人们在这快速发展的今天再也没有属于自己的秘密,已经成了“裸人”。为了我们个人隐私不被泄漏,因此要保护好自己的个人信息。所以数据的加密对我们来说非常的重要,数据的加密可以用到各个领域,它影响我们生活的方方面面。2数据加密2.1密码学概述密码学[2]是一门古老而深奥的学科,对一般人来说是非常陌生的。长期以来,只在很小的范围内使用,如军事、外交、情报等部门。计算机密码学是研究计算机信息加密、解密及其变换的科学,是数学和计算机的交叉学科,也是一门新兴的学科。随着计算机网络和计算机通讯技术的发展,计算机密码学得到前所未有的重视,并迅速普及和发展起来。在国外,它已成为计算机安全主要的研究方向。密码学的历史比较悠久,在四千年前,古埃及人就开始使用密码来保密传递消息。两千多年前,罗马国王JuliusCaesarea(恺撒)就开始使用目前称为“恺撒密码”的密码系统。但是密码技术直到20世纪40年代以后才有重大突破和发展。特别是20世纪70年代后期,由于计算机、电子通信的广泛使用,现代密码学得到了空前的发展。2.2消息和加密遵循国际命名标准,加密和解密可以翻译成:“Encipher(译成密码)”和“(Decipher)(解译密码)”,也可以这样命名:“Encrypt(加密)”和“Decrypt(解密)”。消息被称为明文,用某种方法伪装消息加以隐藏它的内容的过程称为加密[3]。加了密的消息称为密文,而把密文转变为明文的过程称为解密。加密和解密的过程如下图1所示:图1加密解密过程明文用M(Message,消息)或P(Plaintext,明文)表示,它可能是比特流、文本文件、位图、数字化的语音流或者数字化的视频图像等。密文用C(Cipher)表示,也是二进制数据,有时和M一样大,有时稍大。通过压缩和加密的结合,C有可能比P小些。加密函数E作用于M得到密文C,用数学公式表示为:E(M)=C(1)解密函数D作用于C产生M,用数据公式表示为:D(C)=M(2)先加密后再解密消息,得到原始的明文,用数据公式表示为:D(E(M))=M(3)2.3密码学的性质除了提供机密性外,密码学需要提供三方面的功能:鉴别、完整性和抗抵赖性。这些功能是通过计算机进行社会交流,是社会重要的需求。鉴别:消息的接收者应该能够确认消息的来源;入侵者不可能伪装成他人。完整性:消息的接收者应该能够验证在传送过程中消息没有被修改;入侵者不可能用假消息代替合法消息。抗抵赖性:发送消息者事后不可能虚假地否认他发送的消息。3密钥和算法3.1密钥K可以是很多数值里的任意值,密钥K的可能值的范围叫做密钥空间[4]。加密和解密运算都使用这个密钥,即运算都依赖于密钥,并用K作为下标表示,加解密函数表达式为:EK(M)=C(4)DK(C)=M(5)DK(EK(M))=M(6)有些算法使用不同的加密密钥和解密密钥,也就是说加密密钥K1与相应的解密密钥K2不同,在这种情况下,加密和解密的函数表达式为:EK1(M)=C(7)DK2(C)=M(8)3.2凯撒加解密算法实现JuliusCeasar使用了一种简单的替换密码——称为恺撒密码(Caesarcipher)。恺撒密码首先被应用于军事上(GallicWars),他的替换规则:每个字母用其后的第三个字母替换。恺撒密码可以描述如下:Plain:ABCDEFGHIJKLMNOPQRSTUVWXYZCipher:DEFGHIJKLMNOPQRSTUVWXYZABC“凯撒密码”代码实现如下importjava.util.Scanner;publicclassCaeser{privateStringtable;//定义密钥字母表privateintkey;//定义密钥keypublicCaeser(Stringtable,intkey){//根据不同的字母表和不同的密钥生成一个新的凯撒算法,达到通用的目的super();his.table=table;this.key=key;}publicStringencrypt(Stringfrom){//凯撒加密算法,传入明文字符串,返回一个密文字符串Stringto=“”;for(inti=0;ifrom.length();i++){to+=table.charAt((table.indexOf(from.charAt(i))+key)%table.length());}returnto;}publicstaticvoidmain(String[]args){Caesercaeser=newCaeser(“abcdefghijklmnopqrstuvwxyz“,3);Scannerscanner=newScanner(System.in);System.out.println(“请输入要加密的字符串“);Stringstr=scanner.nextLine();//输入字符串Stringresult=caeser.encrypt(str);//调用加密方法进行加密System.out.print(result);//可得结果vhfxulwb}}3.3对称算法基于密钥的算法通常有两类:对称算法和公开密钥算法(非对称算法)。对称算法有时又叫传统密码算法,加密密钥能够从解密密钥中推算出来,反过来也成立。在大多数对称算法中,加解密的密钥是相同的。对称算法要求发送者和接收者在安全通信之前,协商一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都能对消息进行加解密。对称算法的加密和解密表示为:EK(M)=C(9)DK(C)=M(10)3.4公开密钥算法公开密钥算法(非对称算法)的加密的密钥和解密的密钥不同,而且解密密钥不能根据加密密钥计算出来,或者至少在可以计算的时间内不能计算出来。之所以叫做公开密钥算法,是因为加密密钥能够公开,即陌生者能用加密密钥加密信息,但只有用相应的解密密钥才能解密信息。加密密钥叫做公开密钥(简称公钥),解密密钥叫做私人密钥(简称私钥)。公开密钥K1加密表示为:EK1(M)=C(11)公开密钥和私人密钥是不同的,私人密钥K2解密表示为:DK2(C)=M(12)3.5DES算法美国国家标准局1973年开始研究除国防部外的其它部门的计算机系统的数据加密标准,于1973年5月15日和1974年8月27日先后两次向公众发出了征求加密算法的公告。加密算法要达到的目的有四点:(1)提供高质量的数据保护,防止数据未经授权的泄露和未被察觉的修改;(2)具有相当高的复杂性,使得破译的开销超过可能获得的利益,同时又要便于理解和掌握;(3)密码体制的安全性应该不依赖于算法的保密,其安全性仅以加密密钥的保密为基础;(4)实现经济,运行有效,并且适用于多种完全不同的系统应用;1997年1月28日,美国的RSA数据安全公司在互联网上开展了一项名为“密钥挑战”的竞赛,悬赏一万美元,破解一段用56比特密钥加密的DES密文。计划公布后引起了网络用户的强力响应。一位名叫RockeVerser的程序员设计了一个可以通过互联网分段运行的密钥穷举搜索程序,组织实施了一个称为DESHALL的搜索行动,成千上万的志愿者加入到计划中,在计划实施的第96天,即挑战赛计划公布的第140天,1997年6月17日晚上10点39分,美国盐湖城Inetz公司的职员MichaelSanders成功地找到了密钥,在计算机上显示了明文:“Theunknownmessageis:Strongcryptographymakestheworldasaferplace”。DES算法[5]是这样工作的:如Mode为加密,则用Key去把数据Data进行加密,生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。DES算法实现加密需要三个步骤[6]:(1)变换明文。对给定的64位比特的明文x,首先通过一个置换IP表来重新排列x,从而构造出64位比特的x0,x0=IP(x)=L0R0,其中L0表示x0的前32比特,R0表示x0的后32位。(2)按照规则迭代[7]。Li=Ri-1;Ri=Li+f(Ri-1,Ki)(i=1,2,3…16)经过第一步变换已经得到L0和R0的值,其中符号“+”表示的数学运算是异或,f表示一种置换,由S盒置换构成,Ki是一些由密钥编排函数产生的比特块。(3)对L16R16利用IP-1作逆置换,就得到了密文y。加密过程如图所示图2DES算法加密过程DES算法具有比较高安全性,到目前为止,除了用穷举搜索法对DES算法进行攻击外,还没有发现更有效的办法。而56位长的密钥的穷举空间为256,这意味着如果一台计算机的速度是每一秒种检测一百万个密钥,则它搜索完全部密钥就需要将近2285年的时间。可见,这是难以实现的,当然,随着科学技术的发展,当出现超高速计算机后,我们可考虑把DES密钥的长度再增长一些,以此来达到更高的保密程度。4office文件加密4.1Word文档的加密(1)建立一个Word文档,如图3所示输入64位比特明文IP置换表L0R0Li=Ri-1Ri=Li⊕f(Ri-1,Ki)(i=

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

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

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

×
保存成功