《《计算机网络安全课件》第七章 数据加密精编版》由会员分享,可在线阅读,更多相关《《计算机网络安全课件》第七章 数据加密精编版(56页珍藏版)》请在金锄头文库上搜索。
1、第七章 数据加密,数据加密概述; 传统密码技术; 数据加密; 公用密钥/私有密钥密码学; 安全传输方法; 验证; 加密软件。,本资料由-提供 在线代理提供部分资料,7.1 数据加密概述,7.1.1 密码学的发展 1、加密的历史(P171) 2、密码学的发展 第一阶段:传统密码学阶段(基本上靠人工对消息加密、传输和防破译) 第二阶段:计算机密码学阶段 1) 传统方法的计算机密码学阶段(计算机密码工作者继续沿用传统密码学的基本观念,解密是加密的简单逆过程) 2)公用密钥密码(RSA)和计算机密码体制数据加密标准(DES) 3、什么是密码学 密码学包括密码编码学和密码分析学。密码体制的设计是密码编码
2、学的主要内容,密码体制的破译是密码分析学的主要内容。密码学不仅是编码与破译的学问,而且包括安全管理、安全协议设计、秘密分存、散列函数等内容。,本资料由-校园大学生创业网-提供 在线代理提供部分资料,7.1.2 数据加密 数据加密的基本过程包括对称为明文的可读信息进行处理,形成称为密文或密码的代码形式。该过程的逆过程称为解密,即将该编码信息转化为其原来的形式的过程。 1、为什么需要进行加密 加密在网络上的作用就是防止有价值信息在网络上被拦截和窃取。密码的泄露意味着安全体系的全面崩溃。加密后的口令即使被黑客获得也是不可读的,除非加密密钥或加密方式十分脆弱,被黑客破解,不管怎样,加密的使用使黑客不会
3、轻易获得口令。 2、加密密钥 加密算法通常是公开的,如DES和IDEA等。一般把受保护的原始信息称为明文,编码后的信息称为密文。尽管大家都知道使用加密方法,但对密文进行解码必须要有正确的密钥,而密钥是保密的。,本资料由-校园大学生创业网-提供 在线代理提供部分资料,1)保密密钥和公用/私有密钥:P173 有两类基本的加密技术:保密密钥和公用/私有密钥。 在保密密钥中,加密者和解密者使用相同的密钥,这类算法有DES和IDEA。这种加密算法必须让接收人知道自己所使用的密钥,这个密钥需要双方共同保密; 公用/私有密钥使用相互关联的一对密钥,一个是公用密钥,任何人都可以知道,另一个是私有密钥,只有拥有
4、该对密钥的人知道。 公用/私有密钥技术总结为以下几点: 公用密钥和私有密钥有两个相互关联的密钥; 公用密钥加密的文件只有私有密钥能解开; 私有密钥加密的文件只有公用密钥能解开。 2)摘要函数: 摘要是一种防止信息被改动的方法,其中用到的函数叫摘要函数。这些函数的输入可以是任意大小的消息,而输出是一个固定长度的摘要。如果改变输入消息中的任何东西,甚至只有一位,输出的摘要将会发生不可预测的改变。,总之,摘要算法从给定的文本块中产生一个数字签名,数字签名可以用于防止有人从一个签名上获取广西信息或改变文本信息内容。 3、密钥的管理和分发 1)使用同样密钥的时间范围(P174): 一般强调仅将一个对话密
5、钥用于一条信息或一次对话中,或者建立一种按时更换密钥的机制以减小密钥暴露的可能性。 2)保密密钥的分发: 假设在某机构中有100个人,如果他们任意两人之间可以进行秘密对话,那么总共需要4950个密钥,而且每个人要记住99个密钥。如果机构的人数更多,这种办法就显然过于愚蠢了。Kerberos建立了一个安全的、可信任的安息钥分发中心(KDC),每个用户只要知道一个和KDC进行通信的密钥就可以了,而不需要知道成百上千个不同的密钥。,7.1.3 基本概念 1、消息和加密 消息被称为明文。用某种方法伪装消息以隐藏它的内容的过程称为加密。被加密的消息称为密文,而把密文转变为明文的过程称为解密。使消息保密的
6、技术和科学叫做密码编码学。 明文用M或P表示,它可能是位序列、文本文件、位图、数字化的语音序列或数字化的视频图像等。对于计算机,M指简单的二进制数据。 密文用C表示,它也是二进制数据,有时和M一样大,有时稍大。加密函数E作用于M得到密文C,可用数学公式表示:E(M)=C 相反地,解密函数D作用于C产生M:D(C)=M 先加密后再解密,原始的明文将恢复,故下面的等式成立:D(E(M)=M 2、鉴别、完整性和抗抵赖 除了提供机密性外,密码学通常还有其他的作用: 1)鉴别:消息的接收者能确认消息的来源,入侵者不可能伪装成他人。 2)完整性:消息的接收者能验证在传送过程中消息没有被修改,入侵者不可能用
7、假消息代替合法消息。 3)抗抵赖:发送者事后不可能虚假地否认他发送的消息。,3、算法和密钥 密码算法也叫密码,是用于加密和解密的数学函数。通常情况下,有两个相关的函数,一个用作加密,另一个用作解密。 如果算法的保密性是基于保证算法的秘密,这种算法称为受限制的算法。P175 受限制的密码算法不可能进行质量控制或标准化。 现代密码学用密钥解决了这个问题,密钥用K表示。K可以是很多数值里的任意值。密钥K的可能值的范围叫做密钥空间。加密和解密运算都使用这个密钥,这样,加/解密函数变成:Ek(M)=C ; Dk(C)=M 这些函数具有下面特性: Dk( Ek(M) ) =M 有些算法使用不同的加密密钥和
8、解密密钥(即K1和K2) 则: Ek1(M)=C ; Dk2(C)=M ; Dk2( Ek1(M) ) =M 所有这些算法的安全性都基于密钥的安全性,而不是基于算法的细节的安全性。这就意味着算法可以公开,也可以被分析,可以大量生产使用算法的产品,即使偷窃者知道你的算法,但他不知道具体密钥,他就不可能阅读你的消息。,4、对称算法 基于密钥算法通常有两类:对称算法和公用密钥算法。 对称算法又叫传统密码算法,就是加密密钥能够从解密密钥中推导出来,反过来也成立。它要求发送者和接收者在安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都能对消息进行加解密。只要通信需要保密,密
9、钥就必须保密。对称算法的加密和解密表示为: Ek(M)=C ; Dk(C)=M 5、公用密钥算法 公用密钥算法又叫非对称算法,它是这样设计的:用作加密的密钥不同于用作解密的密钥,而且解密密钥不能根据加密密钥计算出来。加密密钥能够公开,即陌生者能用加密密钥加密信息,但只有用相应的解密密钥才能解密信息。在这些系统中,加密密钥叫做公用密钥,解密密钥叫私人密钥。私人密钥有时也叫秘密密钥。 公用密钥K加密表示为: Ek1(M)=C 相应的私人密钥解密可表示为: Dk2(C)=M 有时消息用私人密钥而用公用密钥解密,这用于数字签名。,6、密码分析 密码编码学的主要目的是保持明文 (或密钥,或明文和密钥)的
10、秘密以防止偷听者知晓。密码分析学是在不知道密钥的情况下,恢复出明文的科学。 常用的密码分析有如下几种:P178 / (1)(7) 7、算法的安全性 如果破译算法的代价大于加密数据的价值,破译算法所需的时间比加密数据保密的时间更长,用单密钥加密的数据量比破译算法需要的数据量少得多,那么这种算法可能是安全的。 破译算法可分为:全部破译、全盘推导、实例(或局部)推导、信息推导。P178 如果不论密码分析者有多少密文,都没有足够的信息恢复出明文,那么这个算法就是无条件保密的,事实上,只有一次密码本,才是不可破译的。,7.2 传统密码技术 7.2.1 数据表示方法 数据的表示有多种形式,使用最多的是文字
11、,还有图形、声音、图像等。传统加密方法的主要应用对象是对文字信息进行加密解密。 文字由字母表中的一个个字母组成,字母表可以按照排列顺序进行一定的编码,如:P180 7.2.2 替代密码 替代密码是使用替代法进行加密所产生的密码。即明文中每一个字符被替换成密文中的另外一个字符。接收者对密文进行逆替换就恢复出明文来。 在经典密码学中,有四种类型的代替密码:简单替代密码、多名码替代密码、多字母替代密码和多表替代密码。 下面介绍两种具体的替代加密法:,1、单表替代密码 单表替代密码的一种典型方法是凯撒密码,又叫循环移位密码。它的加密方法是把明文中所有字母都用它右边的第k个字母替代,并Z后边又是A。 例
12、:令26个字母分别对应于025,a=1,b=2y=25,z=0。 凯撒加密变换实际上是c (m + k) mod 26 其中m是明文对应的数据,c是与明文对应的密文数据,k是加密用的参数,叫密钥。比如明文:data security 对应数据序列: 4,1,20,1,19,5,3,21,18,9,20,25 k=5时,得密文序列 9,6,25,6,24,10,8,0,23,14,25,4 密文:ifyxjhzwnyd 这种映射关系表示为如下函数:F(m)=(m+k) mod n 优点:密钥简单易记。缺点:安全性很差。 除了凯撒密码,在其他的单表替代法中,有的字母表被打乱。,2、多表替代密码(P
13、181) 周期替代密码是一种常用的多表替代密码,又称为维吉尼亚密码。这种替代法是循环的使用有限个字母来实现替代的一种方法。即一个明文字母可表示为多个密文字母。例如:明文为System,密钥为dog,加密过程如下: 明文:S y s t e m 密钥:d o g d o g ( d对应的k1=3,o对应k2=14,g对应k3=6) 密文:V m g w r s 在这个例子中,每三个字母中的第一、第二、第三个字母分别移动3个,14个和6个位置。 优点:能抵抗简单的字母频率分析攻击。 设密钥k=k1k2kn,明文M=m1m2mn,加密变换Ek(M)=c1c2cn。其中ci( mi + ki) mod
14、 26,i=1,2n。 多表密码加密算法结果使得对单表置换用的简单频率分析方法失效。 维吉尼亚表见P182。,7.2.3 换位密码 换位密码是采用移位法进行加密的。它把明文中的字母重新排列,本身不变,但位置变了。如:把明文中的字母的顺序倒过来写,然后以固定长度的字母组发送或记录。 例:明文:computer systems 密文:sm etsy sretupmoc 1 、列换位法(P183) 例:明文:WHAT YOU CAN LEARN FROM THIS BOOK,以固定的宽度水平写出为:W H A T Y O U C A N F R O M T H I S B O O K X X X (
15、最后不全的组用字符X填满) 密文以垂直方向读出:WOFHOHURIKACOSXTAMBXYNTOX。 。,2、矩阵换位法 矩阵换位法是把明文中的字母按给定的顺序安排在一个矩阵中,然后用加一种顺序选出矩阵的字母来产生密文。 例:将明文ENGINEERING按行排在3*4矩阵中,如下所示: 1 2 3 4 E N G I N E E R I N G 1234 给定一个置换 f= 2413 据给定的置换,按第2列、第4列、第1列、第3列的次序排列,得: 1 2 3 4 N I E G E R N E N I G 得到密文:NIEGERNENIG。在这个加密方案中,密钥是矩阵的行数m和列数n,以及给定
16、的置换矩阵f,即:k=(m*n,f),7.2.5 一次密码本 一次密码本,由AT&T公司的Gilbert Vernam在1917年提出。发方和收方各保存一份一次密码本,它是一个大的不重复的真随机密钥字母集。发方用密码本中的某一页密钥加密明文。加密方法:明文字符和密码本密钥字符的模26加法。 每个密钥仅对一个消息使用一次。发方对所发的消息加密,然后销毁密码本中用过的一页。收方有一个同样的密码本,并依次使用密码本上的每个密钥去解密密文的每个字符,然后销毁密码本中用过的一页。 例;消息为ONE TIME PAD, 取自密码本的密钥序列是TBF RGFA RFM, 则O+T mod 26=I, N+B mod 26=P, E+F mod 26=K, 那么密文为:IPK LPSF HGQ。 如果偷窃者不能得到加密消息的一次密码本,这个方案是完全保密的。一次密码本主要用于高度机密的低带宽信道。 若密钥序列为