003 数据加密技术_第1页
003 数据加密技术_第2页
003 数据加密技术_第3页
003 数据加密技术_第4页
003 数据加密技术_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、网络信息安全(2011版) 讲 授: Email: MyTel: 1第2章 数据加密技术主要内容古典密码技术DES算法RSA算法MD5算法数字签名PGP加密课时:3.0 22.1 加密技术概述 1.加密技术一般原理 加密的目的是使非授权者无法理解其真正含义。 伪装即对信息进行一组数学变换。伪装前的原始信息为明文,伪装后的信息为密文。 将明文伪装为密文的过程为加密,其逆过程称为解密。 32.1 加密技术概述 1.加密技术一般原理 42.1 加密技术概述 1.加密技术一般原理 加解密使用的一组数学变换称为密码算法。 在密码算法实现过程中,需要某些仅被通信双方所掌控的关键信息参与计算,这些关键信息被

2、称为密钥(Key)。 用于加密的key为加密密钥,解密的则称解密密钥。52.1 加密技术概述 2.密码算法的分类按发展分类: 经历了古典密码、对称密钥密码、公开密钥密码发展阶段。 古典密码是基于字符替换的密码,现已少用。 现常用算法是对称密钥算法、公开密钥算法。62.1 加密技术概述 2.密码算法的分类对称密码算法 即加密密钥和解密密钥相同,也称单密钥算法,如DES等。 该类算法主要用于数据加密,存在密钥管理困难等问题。72.1 加密技术概述 82.1 加密技术概述 2. 密码算法的分类 公开密码算法 两个密钥不同的称为公开密钥算法,如RSA等,两个密钥称为公用和私有密钥。92.1 加密技术概

3、述 102.1 加密技术概述 2. 密码算法的分类 公开密码算法 公钥密码既可实现保密通信,也可用于数字签名。 但该类算法加解密速度较慢。 加密和数字签名过程示意图如下页:112.1 加密技术概述 返回122.1 加密技术概述 2.密码算法的分类按加密模式分 1)序列密码每次加密1位或1字节的明文,也称为流密码。 2)分组密码将明文分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文。132.1 加密技术概述 3.网络传输加密 链路加密 链路加密方式中,所有消息在被传输之前进行加密,对数据正文和控制信息都加密,在每个节点接收到报文后,须先解密以获得路由信息和校验和,再进行路由

4、选择、差错检测,然后加密后传输到下一节点。 在每一个网络节点中,消息以明文形式存在。142.1 加密技术概述 3.网络传输加密 节点加密 仅在节点处进行解密和加密,链路则传输明文形式。在节点处的加解密是在节点上的一个安全模块中进行,均以密文形式呈现。 节点加密要求报头和路由信息以明文形式传输。不能有效防止攻击者分析通信业务。152.1 加密技术概述 3.网络传输加密 端到端加密 数据在从源点到终点的传输过程中始终以密文形式存在。 这种方式通常不允许对目的IP地址加密,便于节点确定如何传输消息。由于不能掩盖源点与终点,因此也它有一定的脆弱性。 162.2 古典密码技术 替代密码 替代密码就是明文

5、中每一个字符被替换成密文中的另外一个字符。接收者对密文进行逆替换就恢复出明文来。 在替代法加密体制中,使用了密钥字母表。它可以由一个字母表构成,也可以由多个字母表构成,分别称为单表密码和多表密码。17 凯撒(Caesar)密码 典型的单表替代密码,又叫循环移位密码。它的加密方法就是把明文中所有字母都用它右边的第k个字母替代,Z后又是A。 E(a)=(a+k) mod n 其中:a表示明文字母;n为字符集中字母个数;k为密钥,一个正整数。2.2 古典密码技术 182.2 古典密码技术 凯撒(Caesar)密码 设k3;对于明文PCOMPUTE则: E(C)=(3+3) mod 26 = 6 =

6、F E(O)=(15+3)mod 26 = 18 = R E(M)=(13+3)mod 26 = 16 = P 所以,密文C= Ek(P) = FRPSXRWH。 当然,用于加密的字符集可以自设定。 192.2 古典密码技术 换位密码 换位密码是采用移位法进行加密的。它把明文中的字母进行重新排列,但位置变了。 (l)列换位法: 将明文字符分割成为n个字符一列的形式进行排列,不足一行由特定字符填充。 分组后并按列手顺序输出即得密文。 202.2 古典密码技术 如:WHAT YOU CAN LEARN FROM THIS BOOK 密钥5,则密文:WOFHOHURIKACOSXTAMBXYNTOX

7、WHATYOUCANFROMTHISBOOKXXX212.2 古典密码技术 换位密码(2)矩阵换位法: 把明文中的字母按给定的顺序安排在一个矩阵中,然后用另一种顺序选出矩阵的字母来产生密文。 如:将明文ENGINEERING按行排在3*4矩阵中,如下页所示:222.2 古典密码技术一个置换矩阵 :232.2 古典密码技术(2)矩阵换位法: 按第2、4、1、3列次排列,得到密文: NIEGERNEN IG 在这个加密方案中,密钥就是矩阵的行数m和列数n,即m*n3*4,以及给定的置换矩阵。也就是:k=(m*n,f) 242.2 古典密码技术 其解密过程是将密文按3*4矩阵排列,再按置换矩阵的逆序

8、,即第3、1、4、2列次输出,得到明文:ENGINEERING252.3 数据加密标准(DES) 数据加密标准DES是美国国家标准局制定的商用数据加密标准,军方除外。 DES是一个分组加密算法,它以64位为分组对数据加密。64位一组的明文从算法的一端输入,64位的密文从另一端输出。 算法需要进行16轮编码。262.3 数据加密标准(DES) DES是一个对称密码算法:加密和解密用的是同一算法,两个密钥相同。 密钥长度为64bit,其中有效密钥长度56bit,其余8bit为奇偶校验。 DES的算法体制是公开的,因此系统的安全性主要依赖密钥的保密来实现。 3DES算法的出现。272.3 数据加密标

9、准(DES)生成密钥Kii(i=116)56位密钥64位明文初始变位迭代处理 i(i=116)左右32位互换还原移位64位密文282.4 RSA算法 RSA是MIT出品,于1978年公布。密钥有由是两个很大质数构成,一个公开,另一个保密,前者称为“公用密钥”,后者称为“私有密钥”。 这两个密钥相互补充,就是说公用密钥的密文可以用私有密钥来解密,反之也然。 292.4 RSA算法 每个用户都有一个密钥对:(1)公钥:加密明文;(2)私钥:解密密文。 采用RSA时,当用户A发信息给用户B时,用户A用B的公开密钥加密明文,用户B则用解密密钥解读密文。302.4 RSA算法 RSA密钥可从40位到20

10、48位,加密时块大小可变,但不超过密钥的长度,RSA算法把每一块明文转化为与密钥长度相同的密文块。 密钥越长,加密效果越好,但开销也大。 如常见的SSL、PGP等都应用了RSA算法。312.4 RSA算法 密钥产生1.取两个大素数 p, q , 保密; 2.计算n=pq,公开n; 3.计算欧拉函数f(n)=(p-1)(q-1);4.任取一个与f(n) 互素的小整数e: gcd(e,f(n)=1; 1ef(n)5.寻找d,df(n), 使得 d*e=kf(n)+1p=7,q=17n=119f(n)=96选择e=55d=k961令 k=4, 得到求得d=77322.4 RSA算法公开密钥:KU=e

11、, n 秘密密钥: KR=d, n加密过程把待加密的内容分成k比特的分组,k log2n,并写成数字,设为M,则:C= Me mod n解密过程M = Cd mod n5, 11977, 119c=m5 mod 119 m=c77 mod 119332.4 RSA算法34DES&RSA速度 硬件实现的最快的RSA算法所消耗的时间也是DES算法的1000倍。 据报道,已RSA加密速率达350Mbps的芯片已研制成功。DES:数据传输加密;RSA:密钥传输(交换)加密;352.5 MD5算法 MD5,即Message-Digest Algorithm 5(信息-摘要算法),是基于杂凑函数(HASH

12、)的密码算法,由RSA的设计者R.Rivest于20世纪90年代初开发出来。 MD5能够将不同格式的数据信息在用数字签名软件来签署私人密钥前“压缩”成一种保密的格式,而且这种“压缩”是不可逆的。362.5 MD5算法 MD5的典型应用是对一段信息产生信息摘要,防篡改。 MD5 (tanajiya.tar.gz) = 0ca175b9c0f726a831d895e269332461 MD5算法通过其不可逆的字符串变换算法,产生了一个唯一的MD5信息摘要。 如果有第三方认证机构,则MD5就可以防止文件作者的“抵赖”,实现“数字签名”。372.5 MD5算法 2004年8月17日美国加州圣巴巴拉的国

13、际密码学会议(Crypto2004) 王小云教授成功破译MD5、HAVAL-128、MD4和RIPEMD、SHA-1等密码。 数字签名算法收到巨大挑战! 38 数字签名体制 签名算法(Signature Algorithm) Sig(M)=S 签名算法或签名密钥K是秘密的,只有发方掌握; 验证算法(Verification Algorithm) Ver(S)=0,1=真,伪 验证算法公开,便于他人进行验证;2.6 数字签名39 数字签名体制 签名体制的安全性在于,从M和其签名S难以推出签名密钥K或伪造一个M使M和S可被证实为真。2.6 数字签名40 数字签名分类1)直接数字签名(direct

14、digital signature) 只涉及通信双方2)仲裁数字签名(arbitrated digital signature) 引入仲裁者,通信双方都非常信任仲裁者。2.6 数字签名41直接数字签名方法1)用发送方的私钥对整条消息进行加密来产生签名.【方式1】 AB: EKRaM 提供了鉴别与签名; 只有A具有KRa进行加密; 传输中没有被篡改; 任何第三方可以用KUa 验证签名2.6 数字签名42直接数字签名方法1)用发送方的私钥对整条消息进行加密来产生签名.【方式2】 AB: EKUb EKRa(M) 提供了保密(KUb)、鉴别与签名(KRa)2.6 数字签名43直接数字签名方法2)用发

15、送方的私钥对消息hash码进行加密;【方式1】 AB: M|EKRaH(M) 提供数字签名H(M) 受到密码算法的保护,例如MD5或SHA-1;只有A 能够生成EKRaH(M)2.6 数字签名44直接数字签名方法2)用发送方的私钥对消息的hash码进行加密;【方式2】AB: EkUb M|EKRaH(M) 提供保密性、数字签名。2.6 数字签名45 仲裁数字签名方法 1)引入仲裁者。 通常的做法是所有从发送方X到接收方Y的签名消息首先送到仲裁者A,A将消息及其签名进行一系列测试,以检查其来源和内容,然后将消息加上日期并与已被仲裁者验证通过的指示一起发给Y。2.6 数字签名46 仲裁数字签名方法

16、 2)仲裁者在这一类签名模式中扮演敏感和关键的角色。 所有的参与者必须相信这一仲裁机制工作正常。2.6 数字签名47 数字水印技术 数字水印就是将特定的标记隐藏在数字产品中,用以证明原创者对产品的所有权,并作为起诉侵权者的证据。用来对付数字产品的非法复制、传播和篡改,保护产权。数字水印还可以广泛应用于其他信息的隐藏,如在一个正常的文件中嵌入文本、图像、音频等信息。2.6 数字签名482.7 PGP加密 PGP(Pretty Good Privacy)是一个基于RSA、DSS和Diffie-Hellman、IDEA、3DES、CAST128、SHA-1、MD5等算法的加密软件。实现对邮件、文件的

17、加密与数字签名。 由于PGP功能强,速度快,源代码免费,因此,PGP成为最流行的公用密钥加密软件之一。 具体应用见相关文档49习题与思考题 什么是加密?简述加密和解密的过程。在凯撒密码中令密钥k=3,制造一张明文字母与密文字母对照表。对称和非对称体制的主要特点是什么?DES、RSA算法的基本原理及其应用。掌握MD5和PGP软件的应用。数字签名的基本过程。50数字签名的应用例子 现在Alice向Bob传送数字信息,为了保证信息传送的保密性、真实性、完整性和不可否认性,需要对要传送的信息进行数字加密和数字签名,其传送过程如下: 51Alice准备好要传送的数字信息(明文)。Alice对数字信息进行哈希(hash)运算,得到一个信息摘要。Alice用自己的私钥(SK)对信息摘要进行加密得到Alice的数字签名,并将其附在数字信息上。Alice随机产生一个加密密钥(DES密钥),并用此密钥对要发送的信息进行加密,形成密文。数字签名的应用例子 52Alice用Bob的公钥(PK)对刚才随机产生的加密密钥进行加密,将加密后的DES密钥连

温馨提示

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

评论

0/150

提交评论