东莞理工学院信息安全概论期末大作业

东莞理工学院信息安全概论期末大作业

ID:14665260

大小:157.70 KB

页数:14页

时间:2018-07-29

东莞理工学院信息安全概论期末大作业_第1页
东莞理工学院信息安全概论期末大作业_第2页
东莞理工学院信息安全概论期末大作业_第3页
东莞理工学院信息安全概论期末大作业_第4页
东莞理工学院信息安全概论期末大作业_第5页
资源描述:

《东莞理工学院信息安全概论期末大作业》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、结合编程实例说明计算机加密的原理和方法班级:学号:姓名:报告日期:2013年11月27日一、基础知识介绍无论是网络传输中使用的安全传输协议,还是安全手段或安全措施,它们都需要使用加密算法和相应的解密算法。不了解与此相关的加密原理和算法,就很难深刻地认识各种安全传输协议,以及实现网络安全所采用的数字凭证、数字签名等技术。密码学是一门古老而深奥的学科,对一般人来说是非常陌生的。长期以来,只在很小的范围内使用,如军事、外交、情报等部门。计算机密码学是研究计算机信息加密、解密及其变换的科学,是数学和计算机的交叉学科,也是一门新兴的学科。随着计算机网络和计算机通讯技术的发展,计算机密码学得到前所未有的

2、重视并迅速普及和发展起来。在国外,它已成为计算机安全主要的研究方向。密码学的历史比较悠久,在四千年前,古埃及人就开始使用密码来保密传递消息。两千多年前,罗马国王JuliusCaesare(恺撒)就开始使用目前称为“恺撒密码”的密码系统。但是密码技术直到本20世纪40年代以后才有重大突破和发展。特别是20世纪70年代后期,由于计算机、电子通信的广泛使用,现代密码学得到了空前的发展。加密算法包括:对称加密算法、公开密钥算法和DES对称加密算法。二、计算机加密基本原理和方法(1)对称加密算法基于密钥的算法通常有两类:对称算法和公开密钥算法(非对称算法)。对称算法有时又叫传统密码算法,加密密钥能够从

3、解密密钥中推算出来,反过来也成立。在大多数对称算法中,加解密的密钥是相同的。对称算法要求发送者和接收者在安全通信之前,协商一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都能对消息进行加解密。对称算法的加密和解密表示为:EK(M)=CDK(C)=M(2)密钥加密算法公开密钥算法(非对称算法)的加密的密钥和解密的密钥不同,而且解密密钥不能根据加密密钥计算出来,或者至少在可以计算的时间内不能计算出来。之所以叫做公开密钥算法,是因为加密密钥能够公开,即陌生者能用加密密钥加密信息,但只有用相应的解密密钥才能解密信息。加密密钥叫做公开密钥(简称公钥),解密密钥叫做私人密钥(简称私钥)。公开

4、密钥K1加密表示为:EK1(M)=C。公开密钥和私人密钥是不同的,用相应的私人密钥K2解密可表示为:DK2(C)=M。(3)凯撒密码算法原理在密码学中存在着各种各样的置换方式,但所有不同的置换方式都包含2个相同的元素。密钥和协议(算法)。凯撒密码的密钥是3,算法是将普通字母表中的字母用密钥对应的字母替换。置换加密的优点就在于它易于实施却难于破解.发送方和接收方很容易事先商量好一个密钥,然后通过密钥从明文中生成密文,即是敌人若获取密文,通过密文直接猜测其代表的意义,在实践中是不可能的。凯撒密码的加密算法极其简单。其加密过程如下:在这里,我们做此约定:明文记为m,密文记为c,加密变换记为E(k1

5、,m)(其中k1为密钥),解密变换记为D(k2,m)(k2为解密密钥)(在这里k1=k2,不妨记为k)。凯撒密码的加密过程可记为如下一个变换:c≡m+kmodn(其中n为基本字符个数)同样,解密过程可表示为:m≡c+kmodn(其中n为基本字符个数)对于计算机而言,n可取256或128,m、k、c均为一个8bit的二进制数。显然,这种加密算法极不安全,即使采用穷举法,最多也只要255次即可破译。当然,究其本身而言,仍然是一个单表置换,因此,频率分析法对其仍是有效的。方法:恺撒密码的替换方法是通过排列明文和密文字母表,密文字母表示通过将明文字母表向左或向右移动一个固定数目的位置。例如,当偏移量

6、是左移3的时候(解密时的密钥就是3):明文字母表:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文字母表:DEFGHIJKLMNOPQRSTUVWXYZABC使用时,加密者查找明文字母表中需要加密的消息中的每一个字母所在位置,并且写下密文字母表中对应的字母。需要解密的人则根据事先已知的密钥反过来操作,得到原来的明文。例如:明文:THEQUICKBROWNFOXJUMPSOVERTHELAZYDOG密文:WKHTXLFNEURZQIRAMXPSVRYHUWKHODCBGRJ恺撒密码的加密、解密方法还能够通过同余数的数学方法进行计算。首先将字母用数字代替,A=0,B=1,...,Z=25

7、。此时偏移量为n的加密方法即为:E(x)=(x+n)mod2解密就是:D(x)=(x-n)mod2三、环境介绍编程语言C语言/JAVA编译环境MicrosoftVisualStudio20008/eclipse操作系统Windows,四、实例说明算机加密的原理和方法实例1:利用对称加密算法对“1234567”进行加密,并进行解密程序源代码:#include//DES加密算法C语言实现c

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。