《第四章_数据加密与身份认证》由会员分享,可在线阅读,更多相关《第四章_数据加密与身份认证(63页珍藏版)》请在金锄头文库上搜索。
1、第四章 保障网络安全,2,本讲概要,密码学是整个信息安全技术的基石,只有对数据加密技术有一定的了解学员才可能对信息安全体系所涉及的各项技术有较好的掌握。身份认证是信息安全的一个重要领域,它和数据加密有着密切的关联,所以本讲将就数据加密与身份认证技术展开阐述,本讲主要内容如下: 数据加密的概念 数据加密技术原理 数据传输的加密 常用加密协议 身份认证方法,3,本讲学习目标,通过学习,同学应该掌握: 数据加密的概念 对称加密算法、非对称加密算法与混合加密算法原理 常见的数据加密协议 身份认证的概念和方法 对SSL协议有初步的认识,(一) 认识加密与认证技术,5,数据加密技术,数据加密的概念 数据加
2、密技术原理 数据传输的加密 常用加密协议,本部分涉及以下内容:,6,数据加密的概念,数据加密模型,密文,加密密钥,信息窃取者,解密密钥,加密算法,解密算法,7,数据加密的概念,数据加密技术的概念,数据加密(Encryption)是指将一个信息(明文)经过加密密钥及加密函数转换为没有意义的另一个信息(密文)的过程。该过程的逆过程称为解密。,明文(Plaintext) : 加密前的原始信息; 密文(Ciphertext) :明文被加密后的信息; 密钥(Key): 控制加密算法和解密算法得以实现的关键信息,分为加密密钥和解密密钥; 加密(Encryption):将明文通过数学算法转换成密文的过程;
3、解密(Decryption):将密文还原成明文的过程。,8,数据加密的概念,数据加密技术的概念,密码技术是解决信息安全的最有效的手段,是解决信息安全的核心技术。 数据加密的基本思想是通过变换信息的表示形式来伪装需要保护的敏感信息,使非授权者不能了解被保护信息的内容。 使用密码技术的目的是为了保护信息的保密性、完整性和可用性。 密码体制是指一个系统所采用的基本工作方式及其两个基本要素, 即加密/解密算法和密钥。,9,数据加密的概念,数据加密技术的应用,数据保密; 身份验证; 保持数据完整性; 确认事件的发生。,10,数据加密技术原理,对称密钥加密(保密密钥法) 非对称密钥加密(公开密钥法) 哈希
4、(Hash)算法,数据加密技术原理,11,数据加密技术原理,对称密钥加密(保密密钥法),加密算法,解密算法,密钥,网络信道,明文,明文,密文,两者相等,12,加法密码 对称密码是一种传统的密码体制,也称私钥密码体制,对称密码算法可分为两类: 序列算法:对明文中的单个位(或字节)运算的算法。典型代表:凯撒密码。 分组算法:把明文信息分割成块结构,逐块予以加密和解密。典型代表:DES,13,加法密码 A和B是有 n个字母的字母表。 定义一个由A到B的映射:f:AB f(ai )= bi=aj j=i+k mod n 加法密码是用明文字母在字母表中后面第 k个字母来代替。 K=3 时是著名的凯撒密码
5、。,14,K=3 加密的方法:26个英文字母循环后移3位; 解密的方法:26个英文字母循环前移3位。 例:恺撒密码是对英文26个字母进行移位代换的密码,若明文m=Caesar cipher is a shift substitution。运算得出密文。 由题知:q=26,密钥k=3,则可得明文和密文代换表 P:a b c d e f g h i j k l m n o p q r s t u v w x y z C: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C 明文: Caesar cipher is a shift substitu
6、tion 密文: FDHVDU FLSKHU LV D VKLIW VXEVWLWXWLRQ (凯撒密码算法),恺撒密码,15,数据加密技术原理,非对称密钥加密(公开密钥加密),加密算法,解密算法,公开密钥,网络信道,明文,明文,密文,私有密钥,公钥,私钥,公钥,私钥,不可相互推导,不相等,16,数据加密技术原理,非对称密钥加密(公开密钥加密)特点: a.加密和解密使用两个不同的密钥 b.加密和解密不可推导 c.算法复杂,效率低 d.特别适用于开放网络中 e.可用于数字签名,17,数据加密技术原理,非对称密钥加密(公开密钥加密)典型代表:RSA,18,例 假设明文为cryptography i
7、s an applied science,密钥为encry,请用置换技术将明文转换成密文。 Ency:在英文字母表中出现的次序可以确定为23145 我们把明文也按这样的顺序列出 2 3 1 4 5 c r y p t o g r a p h y i s a n a p p l i e d s c i e n c e,古典数据加密技术,19,先写标号为1的这一列yripdn,接着写2、3、4、5列 得出密文:yripdn cohnii rgyaee paspsc tpalce 单纯置换密码容易被破解,所以经常进行多步置换,其方法与单步相同,古典数据加密技术,20,数据加密技术原理,单向散列算法(
8、哈希算法),哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法。,21,数据加密技术原理,单向散列算法(哈希算法),单向散列算法又称哈希算法(hash algorithm),可以提供数据完整性方面的判断依据。 哈希(Hash)算法,即散列函数。它是一种单向密码体制,即它是一个从明文到密文的不可逆的映射,只有加密过程,
9、没有解密过程。同时,哈希函数可以将任意长度的输入经过变化以后得到固定长度的输出。哈希函数的这种单向特征和输出数据长度固定的特征使得它可以生成消息或者数据。,22,数据加密技术原理,单向散列算法(哈希算法),信息,哈希算法,结果相同,则数据未被篡改,比较,结果不同,则数据已被篡改,信息标记 (digest),常用的哈希算法: MD5(消息摘要算法第五版) SHA-1(安全散列算法),哈希算法,23,数据加密技术原理,规则: 保证规则不能与其他组相同 通过纸条上的信息能识别本组成员 纸条上的信息只能本组成员能识别理解 各组组员按照本组规则独立书写一句祝福本组成员的话后将纸条传递给主管,要求书写时不
10、能相互商量,相互查看,24,三、认证技术,在信息安全领域中,一方面是保证信息的保密性,防止通信中的机密信息被窃取和破译,防止对系统进行被动攻击;另一方面是保证信息完整性、有效性,即要搞清楚通信对象的身份是否真实,证实信息在通信过程中是否被篡改、伪装和否认,防止对系统进行的主动攻击。 认证是指核实真实身份的过程,是防止主动攻击的重要技术。,25,三、认证技术,1、消息认证,消息认证是一个过程,它使得通信的接收方能够验证所收到的报文在传输过程中是否被假冒、伪造和篡改,即保证信息的完整性和有效性。它也可验证消息的顺序和及时性,即消息是否有顺序的修改,消息是否延时或重放。 消息认证可以使用不同方法来实
11、现 (1) 使用MAC(消息认证码)的消息认证。 (2) 使用HASH(哈希)算法的消息认证。,26,三、认证技术,2、数字签名,数字签名,是利用数据加密技术,根据某种协议产生一个反映被签署文件的特征和签署人的特征,以保证文件的真实性和有效性。 数字签名的方法有多种,这些方法可分为三种: (1) 基于公钥的数字签名 (2) 使用消息摘要的数字签名 (3) 基于私钥的数字签名,27,三、认证技术,3、身份认证,身份认证技术是指计算机及网络系统确认操作者身份的过程所应用的技术手段。验证一个人的身份主要通过三种方式判定。 (1) 根据个人所知的信息,如用户名、密码等 (2) 根据个人所拥有的东西,如
12、身份证、工作证等 (3) 根据个人独一无二的身体特征,如指纹、视网膜等,28,三、认证技术,3、身份认证,常用的身份认证技术有: (1) 密码认证:最简单、最常用的身份认证的方法 (2) IC卡认证 (3) 个人特征认证:最可靠的身份认证方式,29,数据加密技术原理,数字签名的工作原理,非对称加密算法,非对称解密算法,Alice的私有密钥,网络信道,合同,Alice的公开密钥,哈希算法,标记,标记-2,合同,哈希算法,比较,标记-1,如果两标记相同,则符合上述确认要求。,Alice,Bob,假定Alice需要传送一份合同给Bob。Bob需要确认:,合同的确是Alice发送的 合同在传输途中未被
13、修改,30,数字签名 数字签名就是为了防止在通话结束后,发生抵赖事件。 数字签名的性质: 1)能够验证签名者的的身份,以及产生签名的日期和时间。 2)能用于证实被签消息的内容。 3)数字签名可以由第三方验证,从而能够解决通信双方的争议。 数字签名应该满足的要求: 1)签名的产生必须使用发送方独有的一些信息以防伪造和否认。,31,2)签名的产生应较为容易。 3)签名的识别和验证应较为容易。 4)对已知的数字签名构造一新的消息或对已知的消息构造一假冒的数字签名在计算上都是不可行的。 数字签名可以验证消息的完整性,有效地对抗冒充、抵赖等威胁。 数字签名的分类:直接数字签名和仲裁数字签名,32,直接数
14、字签名 直接数字签名涉及通信双方,也就是用接收方的公钥和共享的密钥再对整个消息和签名加密,则可以获得保密性,但弱点是这个方法的有效性依赖于发送方私钥的案例性。 直接数字签字只有通信双方参与,并假定接收方知道发送方的公开钥。 基于仲裁的数字签名 仲裁数字签名是从发送方到接收方的每条已签名的消息都先发送给仲裁者,仲裁者对消息及其签名进行检查以验证消息源及其内容,然后给消息加上日期并发送给接收方,同时指明该消息已通过仲裁的检验。 仲裁数字签名可以用来解决直接数字签名中所遇到的问题。,33,数据加密技术原理,数字签名的作用,唯一地确定签名人的身份; 对签名后信件的内容 是否又发生变化进行验证; 发信人
15、无法对信件的内容进行抵赖。,当我们对签名人同公开密钥的对应关系产生疑问时,我们需要第三方颁证机构(CA: Certificate Authorities)的帮助。,34,认证能使别的成员(验证者)获得对声称者所声称的实体的信任。其认证方法可能是基于下列原因中的任何一种: 1)声称者证明他知道某事或某物,例如口令; 2)声称者证明他拥有某事或某物,例如物理密码或卡; 3)声称者展示某些必备的不变特性,例如指纹; 4)声称者在某一特定场所(也可能在某一特定时间)提供证据; 5)验证者认可某一已经通过认证的可信方。,35,消息认证 基于消息鉴别码(MAC)的认证 消息鉴别码又称消息认证码,是指消息被
16、一密钥控制的公开函数作用后产生的、用作认证符的、固定长度的数值,也称为密码校验和。 消息认证系统实现的功能: 1)接收方向发送方发来的消息未被篡改,这是因为攻击者不知道密钥,所以不能够在篡改消息后相应的篡改MAC,而如果仅篡改消息,则接收方计算的新MAC将与接收到的MAC不同。,36,2)接收方相信发送方不是冒充的,这是因为除接收双方外再无其他人知道密钥,因此其他人不可能对自己发送的消息计算出正确的MAC。 3)如果消息中有序列号,则由于发送方不能成功的篡改序列号,所以接收者相信所收消息的序列号。 在以下集中情况下,使用MAC更为方便: 1)同一消息以明文形式并附加MAC广播给很多接收者,只让一个接收者负责对消息进行认证,则代价小并且可靠。 2)在消息交换时,可以在接收到的众多消息中随机选取一部分进行验证。,37,3)用户得到计算机程序以明文形式存在,但在其后附加一个消息认证码,则既可以保证程序的完整性,又能节省计算机处理