1、 一、选择题一、选择题(单项,多项单项,多项) 10道道 二、填空题二、填空题 10空空 三、简答题三、简答题 5道道 三、计算题(密码学)三、计算题(密码学)2道道 四、问答及分析题四、问答及分析题 2道道 五、设计题五、设计题 1道道 课堂课堂ppt,所有的课后习题都要复习,所有的课后习题都要复习 第一章第一章 概论概论 1 信息安全的概念信息安全的概念 2 信息安全的目标信息安全的目标 3 信息安全的主要内容信息安全的主要内容 4 访问控制访问控制 静态定义静态定义采用国际标准化组采用国际标准化组织织ISO对对“计算机计算机安全安全”的定义:的定义:“为数据为数据处理系统建立和采用处理系
2、统建立和采用的技术上和管理上的安全保护,保护计算机硬的技术上和管理上的安全保护,保护计算机硬件、软件数据不因偶然和恶意的原因而遭到破件、软件数据不因偶然和恶意的原因而遭到破坏、更改和泄露坏、更改和泄露”。这个定义没有考虑网络的。这个定义没有考虑网络的因素,偏重于静态信息保护。因素,偏重于静态信息保护。 动态定义动态定义则增加了对信息系统能连续正常工作则增加了对信息系统能连续正常工作的要求。的要求。 本课程所述的信息系统是指计算机网络信息系本课程所述的信息系统是指计算机网络信息系统,在不会发生歧义时,常将计算机网络信息统,在不会发生歧义时,常将计算机网络信息系统安全简称为信息安全系统安全简称为信
3、息安全。 保密性保密性(Confidentiality) 完整性完整性(Integrity) 可用性可用性(Availability) 抗否认性(抗否认性(Non-repudiation) 可控性(可控性(Controllability) 保密性保密性(Confidentiality)信息不泄露给非授权用户,不被非法利用,即使非授权用户信息不泄露给非授权用户,不被非法利用,即使非授权用户得到信息也无法知晓信息的内容。得到信息也无法知晓信息的内容。阻止非授权用户获得机密信息阻止非授权用户获得机密信息访问控制访问控制非授权用户获知信息内容非授权用户获知信息内容加密技术阻止加密技术阻止 完整性完整性
4、(Integrity)一方面是指信息在生成、传输、存储和使用过程中不被篡改、一方面是指信息在生成、传输、存储和使用过程中不被篡改、丢失、缺损等丢失、缺损等另一方面是指信息处理的方法的正确性。另一方面是指信息处理的方法的正确性。 阻止篡改行为阻止篡改行为一般通过访问控制一般通过访问控制检验信息是否被篡改检验信息是否被篡改通过消息摘要算法来。通过消息摘要算法来。 可用性可用性(Availability)指信息及相关的信息资源在授权人需要的时候,指信息及相关的信息资源在授权人需要的时候,可以随时获得。可以随时获得。对可用性的攻击对可用性的攻击拒绝服务攻击(拒绝服务攻击(DoS)、)、分布式拒绝服(分
5、布式拒绝服(DDoS)目前要保证系统和网络中能提供正常的服务,除目前要保证系统和网络中能提供正常的服务,除了备份和冗余配置外,没有特别有效的方法了备份和冗余配置外,没有特别有效的方法。 抗否认性(抗否认性(Non-repudiation)指能保障用户无法在事后否认曾对信息进行的生指能保障用户无法在事后否认曾对信息进行的生成、签发、接收等行为,是针对通信各方信息真实成、签发、接收等行为,是针对通信各方信息真实同一性的安全要求。同一性的安全要求。一般将使用数字签名和公证机制来保证不可否认一般将使用数字签名和公证机制来保证不可否认性性。 可控性(可控性(Controllability)指可以控制授权
6、范围内的信息流向及行为方式,指可以控制授权范围内的信息流向及行为方式,对信息的传播及内容具有开展能力。对信息的传播及内容具有开展能力。为保证可控性,通常通过握手协议和认证对用户为保证可控性,通常通过握手协议和认证对用户进行身份鉴别,通过访问控制列表等方法来控制用进行身份鉴别,通过访问控制列表等方法来控制用户的访问方式,通过日志记录用户的所有活动以便户的访问方式,通过日志记录用户的所有活动以便于查询和审计。于查询和审计。 网络信息系统安全包括三个主要的领域网络信息系统安全包括三个主要的领域 物理安全物理安全 包括环境安全、设备安全和媒体安全包括环境安全、设备安全和媒体安全运行安全运行安全 提供一
7、套安全措施来保护信息处理过程的安全,其目的提供一套安全措施来保护信息处理过程的安全,其目的是保障系统功能的安全实现。是保障系统功能的安全实现。 访问控制、加密、鉴别、病毒防护、操作系统安全、数访问控制、加密、鉴别、病毒防护、操作系统安全、数据库安全、网络安全、备份与恢复、应急、风险分析、据库安全、网络安全、备份与恢复、应急、风险分析、审计跟踪等。审计跟踪等。管理和策略管理和策略 访问控制机制决定用户及代表一定用户利益的访问控制机制决定用户及代表一定用户利益的程序能做什么,及做到什么程度。程序能做什么,及做到什么程度。 访问控制中的三个元素访问控制中的三个元素访问的发起者称为主体,通常是进程,程
8、序访问的发起者称为主体,通常是进程,程序或用户或用户包括各种资源称为客体如文件,设备,信号包括各种资源称为客体如文件,设备,信号量,内存,用户量,内存,用户保护规则,定义了主体与客体的可能的相互保护规则,定义了主体与客体的可能的相互作用途径。(安全模型)作用途径。(安全模型) 强制访问控制强制访问控制(mandatory access control)用户与资源都有一个用户与资源都有一个固定的安全属性固定的安全属性。系统用该。系统用该安全属性来决定一个用户是否可以访问某个文件。安全属性来决定一个用户是否可以访问某个文件。安全属性是强制性的规定,由安全管理员,或是操安全属性是强制性的规定,由安全
9、管理员,或是操作系统根据限定的规则确定的,用户或用户的程序作系统根据限定的规则确定的,用户或用户的程序不能加以修改不能加以修改 自主访问控制(自主访问控制(discretionary access control)用户可以按自己的意愿对系统的参数作适当的修用户可以按自己的意愿对系统的参数作适当的修改以决定哪些用户可以访问他们的资源,亦即一个改以决定哪些用户可以访问他们的资源,亦即一个用户可以有选择的与其他用户共享他的资源。用户用户可以有选择的与其他用户共享他的资源。用户有自主的决定权。有自主的决定权。 1. BLP 保密性模型保密性模型 规则规则1 (不不)上读上读:主体不可读安全级别高于它的
10、数据主体不可读安全级别高于它的数据; 规则规则2 (不不)下写下写:主体不可写安全级别低于它的数据主体不可写安全级别低于它的数据。 五个安全等级:五个安全等级: (1)公开()公开(Unclassified);); (2)受限(受限(Restricted);); (3)秘密(秘密(Confidential);); 课后习题课后习题 (4)机密(机密(Secret);); (5)高密(高密(Top Secret)。)。 2. BIBA 完整性模型完整性模型 规则规则1 (不不)下读:主体不能读取安全级别低于它的数据;下读:主体不能读取安全级别低于它的数据; 规则规则2 (不不)上写:主体不能写入
11、安全级别高于它的数据。上写:主体不能写入安全级别高于它的数据。 1 加密解密基本过程加密解密基本过程 2 古典密码体制古典密码体制 3 对称密码体制对称密码体制 4 公钥密码体制公钥密码体制 5 混合加密混合加密 包括密码编码学和密码分析学两部分包括密码编码学和密码分析学两部分 密码体制的安全性依赖于什么?密码体制的安全性依赖于什么?发送者发送者明文明文(M/P)加密加密密文密文(C)接受者接受者解密解密原始原始明文明文 古典密码是基于字符替换的密码古典密码是基于字符替换的密码 CaesarCaesar(恺撒)密码恺撒)密码 PlayfairPlayfair密码密码 HillHill密码密码
12、CaesarCaesar(恺撒)密码恺撒)密码 明文的发送方和接收方事先协商好一个密钥。明文的发送方和接收方事先协商好一个密钥。 用用k(1k(1k25)k25)表示密钥,则通用的恺撒加密表示密钥,则通用的恺撒加密算法表示为:算法表示为: C=E(p)=(p+k) mod 26C=E(p)=(p+k) mod 26 相应的,解密算法可表示为:相应的,解密算法可表示为: p=D(C)=(C-k) mod 26p=D(C)=(C-k) mod 26 PlayfairPlayfair密码密码 多字母加密密码:将明文中的多字母加密密码:将明文中的双字母双字母组合作为组合作为一个加密单元对待,并将这些单
13、元转换为密文一个加密单元对待,并将这些单元转换为密文双字母组合。双字母组合。 Playfair算法基于一个算法基于一个55的字母矩阵,该矩的字母矩阵,该矩阵使用阵使用一个关键词一个关键词构造,方法是按构造,方法是按从左到右、从左到右、从上到下顺序,填入关键词的字母(去除重复从上到下顺序,填入关键词的字母(去除重复字母)后,将字母表其余字母填入。字母)后,将字母表其余字母填入。 例如关键词取为例如关键词取为monarchy时,字母矩阵为时,字母矩阵为ZXWVUTSQPLKI/JGFEDBYHCRANOM加密方法是先将明文按加密方法是先将明文按两个字母两个字母一组进行一组进行分组,然后在矩阵中找对
14、应的密文,取密分组,然后在矩阵中找对应的密文,取密文的规则如下:文的规则如下:( (1 1)若明文分组出现相同字母在一组,则)若明文分组出现相同字母在一组,则在重复的明文字母中插入一个填充字母在重复的明文字母中插入一个填充字母(譬如(譬如k k)进行分隔后重新分组)进行分隔后重新分组(如(如balloonballoon被重新分组为被重新分组为ba lk lo onba lk lo on););(2)若分组到最后一组时只有一个字母,则补充字母)若分组到最后一组时只有一个字母,则补充字母k;(3 3)若明文字母在矩阵中同行,则循环取其右边字母为密文)若明文字母在矩阵中同行,则循环取其右边字母为密文
15、(如(如arar被加密为被加密为RMRM););( (4 4)若明文字母在矩阵中同列,则循环取其下边字母为密文)若明文字母在矩阵中同列,则循环取其下边字母为密文(如(如umum被加密为被加密为MCMC););( (5 5)若明文字母在矩阵中不同行不同列,则取其同行且与下一字母)若明文字母在矩阵中不同行不同列,则取其同行且与下一字母同列的字母为密文(如同列的字母为密文(如hshs被加密为被加密为BPBP,eaea被加密为被加密为IMIM或或JMJM)。)。明文明文we are discovered save yourself分组成为:分组成为:we ar ed is co ve re ds av
16、 ey ou rs el fk用上述矩阵加密后的密文为:用上述矩阵加密后的密文为:UG RM KC SX HM UF KM TB XO GC VM TA LU GE。ZXWVUTSQPLKI/JGFEDBYHCRANOM Hill密码也是一种密码也是一种多字母替代多字母替代密码密码 该密码算法取该密码算法取m个连续的明文字母,并用个连续的明文字母,并用m个个密文字母代替密文字母代替, ,用向量或矩阵表示为:用向量或矩阵表示为:321CCC333231232221131211kkkkkkkkk321PPP加密操作要执行模加密操作要执行模2626运算。运算。 例,加密密钥例,加密密钥 明文:明文:
17、pay more moneypay more money 先按三个字母一组分组(不足三个时补字母先按三个字母一组分组(不足三个时补字母x x) 然后对每组字母求密文然后对每组字母求密文 该明文的前三个字母表示为该明文的前三个字母表示为pay= pay= = (375 819 486) = (375 819 486) T T mod 26 = (11 mod 26 = (11 13 18)13 18) T T = LNS = LNS 如此类推,可得密文为:如此类推,可得密文为:LNS HDL EWM TRWLNS HDL EWM TRW。 1 502 4192221182151717k17 17
18、521 18 2122 191 502 4解密时使用逆矩阵,解密时使用逆矩阵,对密文对密文 (11 13 18)(11 13 18) T T,做运算,做运算K K -1 -1 (11 13 18) (11 13 18) T T mod 26 = (431 494 570 ) mod 26 = (431 494 570 ) T T = (15 0 = (15 0 24)24) T T = pay = payHillHill密码的强度在于完全隐藏了单字母的频率。密码的强度在于完全隐藏了单字母的频率。17024617151594K1- 加密密钥能够从解密密钥中推算出来,反过来也成立。加密密钥能够从解
19、密密钥中推算出来,反过来也成立。在大多数对称算法中,加解密密钥是相同的。在大多数对称算法中,加解密密钥是相同的。 这些算法也叫秘密密钥算法或单密钥算法,它要求发这些算法也叫秘密密钥算法或单密钥算法,它要求发送者和接收者在安全通信之前,商定一个密钥。送者和接收者在安全通信之前,商定一个密钥。明文明文加密加密密文密文解密解密明文明文密钥密钥密钥密钥 数据加密标准(数据加密标准(Data Encryption Standard,DES) 分组加密算法,分组加密算法,它以它以64位位为分组对数据进行加密为分组对数据进行加密 DES是一个对称算法:加密和解密用的是同一算法是一个对称算法:加密和解密用的是
20、同一算法 密钥的密钥的长度为长度为56位。位。所有的保密性依赖于密钥。所有的保密性依赖于密钥。 算法是混乱和扩散的组合。算法是混乱和扩散的组合。 DES算法原理算法原理 用作加密的密钥不同于用作解密的密钥,而且解密密用作加密的密钥不同于用作解密的密钥,而且解密密钥不能根据加密密钥计算出来钥不能根据加密密钥计算出来( (至少在合理假定的长至少在合理假定的长时间内时间内) )。 加密密钥加密密钥K1K1与相应的解密密钥与相应的解密密钥K2K2不同,函数表示为不同,函数表示为 E EK1K1(M M)=C D=C DK2K2(C C)=M=M明文明文加密加密密文密文解密解密明文明文公钥公钥私钥私钥
21、第一个完善的公开密钥算法第一个完善的公开密钥算法RSA 求一对大素数的乘积很容易但是要做因式分解求一对大素数的乘积很容易但是要做因式分解就难。因此可以把一对大素数的乘积公开作为就难。因此可以把一对大素数的乘积公开作为公钥,而素数作为私钥。公钥,而素数作为私钥。公开密钥公开密钥n:两素数两素数p和和q的乘积的乘积(p,q必须保密必须保密) e:与与(p-1)(q-1)互素互素私钥私钥d:ed mod (p-1)(q-1)=1(辗转相除法辗转相除法) 等价表示为等价表示为d=e-1 mod (p-1)(q-1)加密:加密:c=me mod n解密:解密:m=cd mod n 例例1:p=47 q=
22、71 则则n=pq=3337 (p-1)(q-1)=3220 随机选取随机选取e=79 则则79d mod 3220=1 d=1019 算法公开算法公开e和和n,保密保密d,丢弃丢弃p和和q 这样对于待加密的消息这样对于待加密的消息m=688 c=me mod n= 68879 mod 3337=1570 解密:解密: m=cd mod n=15701019 mod 3337=688 79d mod 3220=1 d=1019 辗转相除法辗转相除法 余数余数 d 商商 3220 0 y 79 1 406011933613060=3220-79*40D1=0-1*40=-40D1 =-4019=
23、79-60*1D2=1-(-40*1)=41D2=413=60-19*3D3=-40-(41*3)=-163D3=-1631=19-3*6D4=41-(-163*6)=1019D4=1019322079406079601196019331936131306032207940197960 136019311936319601193 619(60193)61960618 1919 1960619(7960 1)6061979196066019792560197925(32207940)197925 322025407910197925 3220 例例2 若用户得公钥为若用户得公钥为e5,n35,求
24、私钥求私钥 猜测猜测p5和和q7(只能猜测)(只能猜测) 5d mod 241公开密钥公开密钥n:两素数两素数p和和q的乘积的乘积(p,q必须保密必须保密) e:与与(p-1)(q-1)互素互素私钥私钥d:ed mod (p-1)(q-1)=1(辗转相除法辗转相除法) 等价表示为等价表示为d=e-1 mod (p-1)(q-1)加密:加密:c=me mod n解密:解密:m=cd mod n 5d mod 241 d=5余数余数 d 商商24 0 y5 1 44 4 1 4=24-5*4 d1=0-1*4=-4 1 5 4 1=5-4*1 d2=1-(-4*1)=50 11d mod 17=1
25、 余数余数 d 商商 17 0 y 11 1 1 6 -1 1 5 2 1 1 -3 5 0 d-31714 ELGamal体制的安全性基于有限域上求解离散体制的安全性基于有限域上求解离散对数的困难性。对数的困难性。 椭圆曲线上离散对数椭圆曲线上离散对数明文对称密码算法对称密码算法密文非对称密码算法非对称密码算法加密后加密后的密钥的密钥密钥密钥接受者的公钥接受者的公钥接受者接受者采用对称密钥对消息进行加密,采用对称密钥对消息进行加密,而用公钥对密钥本身进行加密而用公钥对密钥本身进行加密课后习题课后习题 1 报文鉴别报文鉴别 2 散列函数散列函数 3 数字签名数字签名 4 身份认证身份认证 主动
26、攻击和被动攻击主动攻击和被动攻击 报文源鉴别报文源鉴别 报文宿鉴别报文宿鉴别 时间性鉴别时间性鉴别 报文内容鉴别:报文鉴别码、报文加密、报文报文内容鉴别:报文鉴别码、报文加密、报文摘要摘要把任意长度的报文(消息)把任意长度的报文(消息)M,通过函数通过函数H,将其变换将其变换为一个固定长度的散列码为一个固定长度的散列码h,散列函数表示为散列函数表示为 h=H(M),它生成报文所独有的它生成报文所独有的“指纹指纹”。惟一地对应原始报文。惟一地对应原始报文 。特点(性质):特点(性质):广泛适用性广泛适用性码长固定性码长固定性易计算性易计算性 单向不可逆性单向不可逆性 弱单向性弱单向性 对于任意给
27、定的数据对于任意给定的数据X X,要计算出另一要计算出另一个数据个数据Y Y,使使H H(X X)=H=H(Y Y),),这在计算上是不可行这在计算上是不可行的的强单向性强单向性 要寻找任何一对数据(要寻找任何一对数据(X X,Y Y),),使得使得H H(X X)=H=H(Y Y),),这在计算上是不可行的。这在计算上是不可行的。 用途用途 验证完整性验证完整性 口令认证口令认证一般的攻击是碰撞攻击:一般的攻击是碰撞攻击:寻找两个输入得到相寻找两个输入得到相同的输出值同的输出值(注意计算上的可行注意计算上的可行)摘要算法的用途决定了,它只要能找到碰撞就摘要算法的用途决定了,它只要能找到碰撞就
28、足以让它失效,并不需要找到原文:就意味着足以让它失效,并不需要找到原文:就意味着两个不同的文件可以产生相同的两个不同的文件可以产生相同的“指纹指纹”,这,这样就可以伪造签名。样就可以伪造签名。抵制碰撞攻击的原因:抵制碰撞攻击的原因:摘要算法的用途决定摘要算法的用途决定它只要能找到碰撞就足以让它失效,并不需要找到它只要能找到碰撞就足以让它失效,并不需要找到原文。原文。口令口令pwd=123456消息摘要算法消息摘要算法H口令口令摘要摘要h=abcpwd=%*#¥!¥!和存储和存储口令文口令文件比较件比较相同就相同就进入系统进入系统 数字签名实质就是把一个特定的数据与某个人数字签名实质就是把一个特
29、定的数据与某个人相关联,该数据代表这个人。相关联,该数据代表这个人。 包括两个部分签名和验证。包括两个部分签名和验证。消息消息(发送给接受者发送给接受者)摘要算法摘要算法消息摘要消息摘要签名算法签名算法数字签名数字签名(发送给接受者发送给接受者)发送者的私钥发送者的私钥消息和数字签名是一起发给接受者。接受者通消息和数字签名是一起发给接受者。接受者通过签名来确定发送者的身份以及数据的完整性。过签名来确定发送者的身份以及数据的完整性。消息消息(发送给接受者发送给接受者)数字签名数字签名(发送给接受者发送给接受者)签名算法签名算法发送者的公钥发送者的公钥消息摘要消息摘要摘要算法摘要算法消息摘要消息摘
30、要是否相同是否相同 协议协议 Kerberos基于私钥加密算法的,需要可信任的第三方作为基于私钥加密算法的,需要可信任的第三方作为认证服务器的网络认证系统。认证服务器的网络认证系统。 X.509:公开密钥密码:公开密钥密码 CA KerberosKerberos的认证方案的认证方案以第四版说明处理过程以第四版说明处理过程服务器服务器ASTGSKerberos KDC客户机客户机124365数据数据共享共享Kerberos协议运作步骤协议运作步骤认证服务器(认证服务器(ASAS),),用于在登陆用于在登陆时验证用户的身份;与每个用户时验证用户的身份;与每个用户共享一个秘密口令。共享一个秘密口令。
31、 授予许可证服务器授予许可证服务器(TGSTGS),),发放发放“身份证明许可证身份证明许可证”;与;与ASAS共享一个秘密口令共享一个秘密口令K Ktgstgs 服务器服务器(ServerServer),),客户请客户请求工作的实际执行者。求工作的实际执行者。Kerberos有一个所有客户和自己安全通信所需的秘密密钥数据有一个所有客户和自己安全通信所需的秘密密钥数据库库(KDC).Kerberos知道每个人的秘密密钥知道每个人的秘密密钥,所以能产生消息向每个实体,所以能产生消息向每个实体证实另一个实体的身份。证实另一个实体的身份。同时还能同时还能产生会话密钥产生会话密钥,只供一个客户机和一个
32、服务器使用,只供一个客户机和一个服务器使用,会话密钥用来加密双方的通信消息,通信完毕,即被销毁。会话密钥用来加密双方的通信消息,通信完毕,即被销毁。服务器服务器sASTGSKerberos KDC客户机客户机c124365数据数据共享共享Kerberos协议运作步骤协议运作步骤相关符号相关符号c c:用户用户C C身份码身份码s s:应用服务器应用服务器S S身份码身份码ADxADx:x x的网络地址的网络地址tgstgs:TGSTGS身份码身份码KxKx:x x的密钥的密钥Kx,yKx,y:x x与与y y的会话密钥的会话密钥 KxKx:以以KxKx加密扩号中的加密扩号中的信息信息life:
33、生存周期生存周期 TS:时间戳时间戳Ac:Ac:身份验证器身份验证器( (自己生成自己生成) )T Tx,yx,y:x:x与与y y间的凭据间的凭据服务器服务器sASTGSKerberos KDC客户机客户机c124365数据数据共享共享Kerberos协议运作步骤协议运作步骤客户客户C C从从ASAS处申请处申请( (步骤步骤1 1) )及取得初始凭据及取得初始凭据( (步骤步骤2 2) );认证业务交换过程认证业务交换过程:完成客户向:完成客户向KDCKDC请求与请求与TGSTGS通通信时使用的信时使用的凭据凭据以及以及会话密钥会话密钥的过程。的过程。( (步骤步骤1 1):):C-AS:
34、c,TS1C-AS:c,TS1( (步骤步骤2 2):):AS-C:AS-C:K c,tgs, tgs, TS2,TS2,life1, Tc,tgsKKc c初始凭据初始凭据Tc,tgsK c,tgs, c, ADc, tgs, TS2,TS2,life1Ktgs “凭据凭据”类似常规密钥分配协议中的类似常规密钥分配协议中的EKB(A, R1)阶段阶段1 1服务器服务器sASTGSKerberos KDC客户机客户机c124365数据数据共享共享Kerberos协议运作步骤协议运作步骤客户客户C C从从TGSTGS处申请处申请( (步骤步骤3)3)及取得应用服务器及取得应用服务器S S的的票票
35、( (步骤步骤4 4) );授权凭据业务交换过程授权凭据业务交换过程( (步骤步骤3)3)C-TGS:s,C-TGS:s,Tc,tgs, ,AcAc Ac Acc,ADc,ADc c,TS3,TS3 K Kc,tgsc,tgs初始票初始票Tc,tgsK c,tgs, c, ADc, tgs, TS2,TS2,life1KtgsTGSTGS可以检查身份验证器可以检查身份验证器Ac来证明客户的名称和地来证明客户的名称和地址是否与凭据中的名称和接受消息的地址一致。址是否与凭据中的名称和接受消息的地址一致。阶段阶段2 2:服务器服务器ASTGSKerberos KDC客户机客户机124365数据数据共
36、享共享Kerberos协议运作步骤协议运作步骤客户客户C C从从TGSTGS处申请处申请( (步骤步骤3)3)及取得应用服务器及取得应用服务器S S的的票票( (步骤步骤4 4) );( (步骤步骤4)4)TGS-C:s,TGS-C:s,Kc,s,TS4,TS4,T Tc,sc,s K Kc,tgsc,tgs T Tc,sc,sKKc,sc,s,c,AD,c,ADc c,s,s,TS4,TS4,life2Klife2Ks s授权凭据业务交换过程授权凭据业务交换过程,是客户方,是客户方C C向向TGSTGS请求与请求与最终的最终的应用服务器应用服务器进行通信所需要的进行通信所需要的凭据凭据和和会
37、话会话密钥密钥的过程。的过程。阶段阶段2 2:服务器服务器ASTGSKerberos KDC客户机客户机124365数据数据共享共享Kerberos协议运作步骤协议运作步骤客户客户C C向应用服务器向应用服务器S S请求服务请求服务( (步骤步骤5,6)5,6)。 用户用户/ /服务器双向认证交换过程,服务器双向认证交换过程,客户方通过递交服务器客户方通过递交服务器凭据证明自己的身份的同时,通过一个典型的挑战凭据证明自己的身份的同时,通过一个典型的挑战/ /响应响应消息交换服务器向客户证明自己的身份。消息交换服务器向客户证明自己的身份。 ( (步骤步骤5)5)C-S:Ac,C-S:Ac,T T
38、c,sc,s T Tc,sc,sKKc,sc,s,c,AD,c,ADc c,s,s,TS4,TS4,life2Klife2Ks sAcAcc,ADc,ADc c,TS5,TS5 K Kc,sc,s 阶段阶段3 3:服务器服务器ASTGSKerberos KDC客户机客户机124365数据数据共享共享Kerberos协议运作步骤协议运作步骤客户客户C C向应用服务器向应用服务器S S请求服务请求服务( (步骤步骤5,6)5,6)。若要互相验证身份,服务器可执行若要互相验证身份,服务器可执行6 6 ( (步骤步骤6)6)S-C:TS5+1S-C:TS5+1K Kc,sc,s服务器返回身份验证码中的
39、时间戳加服务器返回身份验证码中的时间戳加1 1,再用会话,再用会话密钥加密,密钥加密,C C可以解密,说明可以解密,说明C C可以保证只有可以保证只有s s才能才能创建它。消息的内容向创建它。消息的内容向C C保证它不是以前的应答。保证它不是以前的应答。 阶段阶段3 3: KerberosKerberos的认证方案的认证方案 1和和2在用户首次登录系统时使用在用户首次登录系统时使用 3和和4在用户每次申请某个特定的应用服务器的服务使用在用户每次申请某个特定的应用服务器的服务使用 5用于特定的服务器中每一个服务的认证用于特定的服务器中每一个服务的认证 6可选,只用于相互认证可选,只用于相互认证服
40、务器服务器ASTGSKerberos KDC客户机客户机124365数据数据共享共享Kerberos协议运作步骤协议运作步骤 X.509 密钥及证书管理密钥及证书管理 X.509认证协议认证协议密钥及证书管理密钥及证书管理 公钥系统中的问题网络上公钥的确认公钥系统中的问题网络上公钥的确认 防止上述攻击的机制是大家信任的防止上述攻击的机制是大家信任的认证中心认证中心(CA)以数字签名技术,将每个用户的公钥与个以数字签名技术,将每个用户的公钥与个人的身份数据签成人的身份数据签成数字证书数字证书。Alice的公钥BobAliceCherryAlice的公钥 X.509认证协议认证协议密钥及证书管理密
41、钥及证书管理 用户收到证书后通过验证程序,确信证书无误,用户收到证书后通过验证程序,确信证书无误,所含公钥、身份数据及其他内容确是证书上声所含公钥、身份数据及其他内容确是证书上声称的主体的。称的主体的。Alice的公钥BobAliceCherry X.509认证协议认证协议密钥及证书管理密钥及证书管理认证中心以自己的私钥为用户签发证书,用户可以使认证中心以自己的私钥为用户签发证书,用户可以使用用认证中心的公钥认证中心的公钥验证所获证书的正确性。验证所获证书的正确性。Alice的身份信息的身份信息Alice的公钥的公钥CA1私钥签发私钥签发CA1的身份信息的身份信息CA1的公钥的公钥CA2私钥签
42、发私钥签发CA2的身份信息的身份信息CA2的公钥的公钥Root CA私钥签发私钥签发 认证机构认证机构(CA)是核心,信任的发源地是核心,信任的发源地 CA系统结构系统结构 证书链构造证书链构造 CA的层次结构可被映射为证书链的层次结构可被映射为证书链Root CAAsia CAEu CACN CAsales CAmarketing CAengineering CA验证证书程序验证证书程序自己签发自己签发Root签发签发CN签发签发Engineering CA签发签发信任授权信任授权信任授权信任授权不信任授权不信任授权图中最下面的待验证书通过两级图中最下面的待验证书通过两级子子CA到达根到达根
43、CA。一条证书链为一条证书链为一条始于层次分支,终止于层次一条始于层次分支,终止于层次顶部的路径。顶部的路径。课后习题课后习题 1 位置位置 2采用公开密钥体制和采用公开密钥体制和x.509x.509数字证书技术。数字证书技术。 3 3提供服务器认证、消息完整性、通信数据加密和可提供服务器认证、消息完整性、通信数据加密和可选的客户端认证服务。选的客户端认证服务。 4 4提供一个安全的提供一个安全的“握手握手”来初始化一个来初始化一个TCPTCPIPIP连接,连接,完成客户端和服务器之间关于安全等级、密码算完成客户端和服务器之间关于安全等级、密码算法通信密钥的协商,以及执行对连接端身份的认证法通
44、信密钥的协商,以及执行对连接端身份的认证工作。工作。SMTPIPSSLTCPHTTPFTP 5 协议栈协议栈SSL握手协议握手协议SSL记录协议记录协议SSL告警协议告警协议SSL修改密文协修改密文协议议 1 基本情况:开放的加密和安全标准、保护在线基本情况:开放的加密和安全标准、保护在线信用卡交易信用卡交易 2 基于基于X.509v3 数字签名数字签名 3 了解基于了解基于SET构造的电子商务系统和交互过程构造的电子商务系统和交互过程 4 双向签名双向签名消费者想要将订购信息消费者想要将订购信息( (OI)OI)发送给商家,将支付信发送给商家,将支付信息息( (PI)PI)发送给银行。发送给
45、银行。 商家不必知道消费者的信用卡号码商家不必知道消费者的信用卡号码 银行也不必知道消费者订单的细节银行也不必知道消费者订单的细节 消费者可以证明这个支付是用于这次订购而不是用于其他消费者可以证明这个支付是用于这次订购而不是用于其他某种货物或服务。某种货物或服务。SET消息消息PI双向签名双向签名OIMDDES加密加密RSA加密加密KsKUb请求报文请求报文数字信封数字信封SET密文密文PIMDOI持卡人证书持卡人证书双向签名双向签名PIPI支付信息支付信息OIOI订购信息订购信息PIMDPIMDPIPI报文摘要报文摘要OIMDOIMDOIOI报文摘要报文摘要KsKs临时的对称密钥临时的对称密
46、钥KUbKUb银行的公开密钥交换的密钥银行的公开密钥交换的密钥与购买相关的信息。这个信息将被商家转发给支付网关与购买相关的信息。这个信息将被商家转发给支付网关 与订购有关的信息。商家需要这个信息与订购有关的信息。商家需要这个信息 持卡人的证书。持卡人的证书。 为为IPIP及上层协议提供安全保障。及上层协议提供安全保障。 IPSecIPSec提供认证、数据完整性验证、保密提供认证、数据完整性验证、保密 IPSec由三个基本要素来提供以上三种保护形式由三个基本要素来提供以上三种保护形式验证头验证头(AH)封装安全载荷封装安全载荷(ESP)互联网密钥管理协议互联网密钥管理协议(IKMP)。 AH和和
47、ESP两种工作模式:传输模式、隧道模式两种工作模式:传输模式、隧道模式 SA 课后习题课后习题 安全和可信的内部网络与一个被认为是不那么安全和安全和可信的内部网络与一个被认为是不那么安全和可信的外部网络可信的外部网络(通常是通常是Internet)之间的一个封锁工具,之间的一个封锁工具,阻断来自外部通过网络对本网络的威胁和入侵,提供阻断来自外部通过网络对本网络的威胁和入侵,提供扼守本网络的安全和审计的唯一关卡。扼守本网络的安全和审计的唯一关卡。 1 包过滤器根据每个包头部内的信息来决定是包过滤器根据每个包头部内的信息来决定是否要将包继续传输,从而增强安全性否要将包继续传输,从而增强安全性 2
48、根据各类包的特性学会写包过滤规则,注意根据各类包的特性学会写包过滤规则,注意对对ACK的理解的理解 ACKACK为为1 1表示确认号合法,为表示确认号合法,为0 0表示数据段表示数据段不包含确认信息。不包含确认信息。 TCPTCP的启动连接请求包中的启动连接请求包中的的ACKACK位为位为0 0,而其他的数据包,而其他的数据包ACKACK位为位为1 1所有的所有的TCP/IPTCP/IP客户程序都使用大于客户程序都使用大于10231023的随机分配端口号。的随机分配端口号。10241024以下的端以下的端口保留为服务器上的服务所用。口保留为服务器上的服务所用。不允许反向建立连接不允许反向建立连
49、接 例:第一,例:第一,TelnetTelnet服务服务假设一个网络假设一个网络1161161111114 40 0,认为站点,认为站点202.208.5.6202.208.5.6上有黄上有黄色的色的BBSBBS,所以希望阻止网络中的用户访问该站的所以希望阻止网络中的用户访问该站的BBSBBS;再假再假设这个站点的设这个站点的BBSBBS服务是通过服务是通过TelnetTelnet方式提供的,那么需要阻方式提供的,那么需要阻止到那个站点的出站止到那个站点的出站TelnetTelnet服务,服务,对于对于InternetInternet的其他站点,允许内部网用户通过的其他站点,允许内部网用户通过
50、TelnetTelnet方式方式访问,访问,但不允许其他站点以但不允许其他站点以TelnetTelnet方式访问内部网络。方式访问内部网络。 第二,邮件服务第二,邮件服务允许允许SMTPSMTP出站入站服务,邮件服务器是出站入站服务,邮件服务器是IPIP地址为地址为116.111.4.1116.111.4.1 第三,对于第三,对于WWWWWW服务服务允许内部网用户访问允许内部网用户访问InternetInternet上任何网络和站点上任何网络和站点但只允许一个公司的网络但只允许一个公司的网络98.120.7.098.120.7.0访问内部访问内部WWWWWW服务器,内服务器,内部部WWWWWW