认证和访问控制-认证第三讲身份认证-PPT课件_第1页
认证和访问控制-认证第三讲身份认证-PPT课件_第2页
认证和访问控制-认证第三讲身份认证-PPT课件_第3页
认证和访问控制-认证第三讲身份认证-PPT课件_第4页
认证和访问控制-认证第三讲身份认证-PPT课件_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

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

文档简介

1、1第3讲 身份认证协议与机制华中科技大学计算机学院信息安全研究室21密码协议2身份认证协议3 基于非密码的认证4 基于密码算法的认证5 零知识证明协议第3讲 身份认证协议与机制31密码协议2身份认证协议3 基于非密码的认证4 基于密码算法的认证5 零知识证明协议第3讲 身份认证协议与机制41密码协议2身份认证协议3 基于非密码的认证4 基于密码算法的认证5 零知识证明协议第3讲 身份认证协议与机制52.1 身份认证概念2.2 身份认证的目标2.3 身份认证的分类2.4 身份认证的途径2 身份认证协议62.1安全的信息交换应满足的性质* 保密性( Confidentiality)* 完整性(In

2、tegrity)数据完整性,未被未授权篡改或者损坏 系统完整性,系统未被非授权操纵,按既定的功能运行*可用性(Availability)*鉴别性 (Authenticity) 实体身份的鉴别,适用于用户、进程、系统、信息等* 不可否认性(Non-repudiation) 防止源点或终点的抵赖72.1 身份认证概述 为了保护网络资源及落实安全政策。需要提供可追究责任的机制,这里涉及到三个概念:认证、授权及审计。用户对资源的访问过程 访问控制用户身份认证资源授权数据库审计数据库82.1身份认证概述(续)认证与以下环境有关:某一成员(声称者)提交一个主体的身份并声称他是那个主体,认证能使别的成员(验

3、证者)获得对声称者所声称的事实的信任。身份认证的作用对抗假冒攻击确保身份,明确责任 鉴别是最重要的安全服务之一。鉴别服务提供了关于某个实体身份的保证。(所有其它的安全服务都依赖于该服务)92.1 实体鉴别的例子* 263的邮件登录* sina的邮件登录* Client与Proxy-Server之间的鉴别* Telnet远程登录* POP3邮件登录* Ftp服务102.1 身份认证概述 对身份认证过程中攻击:数据流窃听(Sniffer):由于认证信息要通过网络传递,并且很多认证系统的口令是未经加密的明文,攻击者通过窃听网络数据,就很容易分辨出某种特定系统的认证数据,并提取出用户名和口令。拷贝/重

4、传:非法用户截获信息,然后再传送给接收者。修改或伪造:非法用户截获信息,替换或修改信息后再传送给接收者,或者非法用户冒充合法用户发送信息。 112.1 身份认证概念2.2 身份认证的目标2.3 身份认证的分类2.4 身份认证的途径2 身份认证协议122.2 实体鉴别的需求和目的某一成员(声称者)提交一个主体的身份并声称它是那个主体。* 实体鉴别目的:使别的成员(验证者)获得对声称者所声称的事实的信任。132.2实体鉴别的目的和过程* 实体鉴别(身份鉴别):某一实体确信与之打交道的实体正是所需要的实体。只是简单地鉴别实体本身的身份,不会和实体想要进行何种活动相联系。* 在实体鉴别中,身份由参与某

5、次通信连接或会话的远程参与者提交。这种服务在连接建立或在数据传送阶段的某些时刻提供,使用这种服务可以确信(仅仅在使用时间内): 一个实体此时没有试图冒充别的实体,或没有试图将先前的连接作非授权地重放。142.2实体鉴别与消息鉴别的差别* 实体鉴别一般都是实时的,消息鉴别一般不提供时间性。* 实体鉴别只证实实体的身份,消息鉴别除了消息的合法和完整外,还需要知道消息的含义。* 数字签名主要用于证实消息的真实来源。但在身份鉴别中消息的语义是基本固定的,一般不是“终生”的,签名是长期有效的。152.2实体鉴别实现安全目标的方式 作为访问控制服务的一种必要支持,访问控制服务的执行依赖于确知的身份(访问控

6、制服务直接对达到机密性、完整性、可用性及合法使用目标提供支持); 作为提供数据起源认证的一种可能方法(当它与数据完整性机制结合起来使用时); 作为对责任原则的一种直接支持,例如,在审计追踪过程中做记录时,提供与某一活动相联系的确知身份。162.1 身份认证概念2.2 身份认证的目标2.3 身份认证的分类2.4 身份认证的途径2 身份认证协议172.3实体鉴别分类-i* 实体鉴别可以分为本地和远程两类。* 本地多用户鉴别:实体在本地环境的初始化鉴别(就是说,作为实体个人,和设备物理接触,不和网络中的其他设备通信)。 需要用户进行明确的操作* 远程用户鉴别:连接远程设备、实体和环境的实体鉴别。 通

7、常将本地鉴别结果传送到远程。(1)安全(2)易用182.3实体鉴别分类-i i实体鉴别分类-ii 实体鉴别可以是单向的也可以是双向的。 单向鉴别是指通信双方中只有一方向另一方进行鉴别。双向鉴别是指通信双方相互进行鉴别。192.1 身份认证概念2.2 身份认证的目标2.3 身份认证的分类2.4 身份认证的途径2 身份认证协议202.4实体鉴别系统的组成* 一方是出示证件的人,称作示证者P(Prover),又称声称者(Claimant)。* 另一方为验证者V(Verifier),检验声称者提出的证件的正确性和合法性,决定是否满足要求。* 第三方是可信赖者TP (Trusted third part

8、y) ,参与调解纠纷。* 第四方是攻击者,可以窃听或伪装声称者骗取验证者的信任。212.4实体鉴别系统的鉴别模型222.4对身份鉴别系统的要求(1)验证者正确识别合法申请者的概率极大化。(2)不具有可传递性(Transferability)(3)攻击者伪装成申请者欺骗验证者成功的概率要小到可以忽略的程度(4)计算有效性(5)通信有效性(6)秘密参数能安全存储(7)交互识别(8)第三方的实时参与(9)第三方的可信赖性(10)可证明的安全性232.4实现身份鉴别的途径* 三种途径之一或他们的组合(1)所知(Knowledge):密码、口令(2)所有(Possesses):身份证、护照、信用卡、钥匙

9、(3)个人特征:指纹、笔迹、声纹、手型、血型、视网膜、虹膜、DNA以及个人动作方面的一些特征设计依据:安全水平、系统通过率、用户可接受性、成本等241 密码协议2 身份认证协议3 基于非密码的认证4 基于密钥的认证5 零知识证明协议第3讲 身份认证协议与机制253.1 基于口令的机制3.2 一次性口令3.3 询问-应答机制3.4 基于地址的认证3.5 基于个人特征的认证机制3.6 个人鉴别令牌3 非密码的身份认证机制263.1.1 常见口令机制3.1.2 基于口令机制的攻击3.1.3 口令机制的改进方案3.1 基于口令的认证机制273.1.1 常见口令机制口令或通行字机制是最广泛研究和使用的身

10、份鉴别法。通常为长度为58的字符串。选择原则:易记、难猜、抗分析能力强。口令系统有许多脆弱点: 外部泄露 口令猜测 线路窃听 危及验证者 重放283.1.1对付外部泄露的措施教育、培训;严格组织管理办法和执行手续;口令定期改变;每个口令只与一个人有关;输入的口令不再现在终端上;使用易记的口令,不要写在纸上。293.1.1对付口令猜测的措施教育、培训;严格限制非法登录的次数;口令验证中插入实时延迟;限制最小长度,至少68字节以上防止用户特征相关口令,口令定期改变;及时更改预设口令;使用机器产生的口令。303.1.1对付线路窃听的措施使用保护口令机制:如单向函数。 q fididq比较是或不是p

11、id声称者验证者消息31服务端的口令安全问题固定口令1)存储的口令文件以明文形式将用户口令存储在系统口令文件中口令文件需读保护和写保护2)“加密的”口令文件存储口令的单向函数值口令文件需写保护IDA,PWAB检查口令和身份窃听?存储安全?323.1.2 主要缺陷及对策攻击者很容易构造一张q与p对应的表,表中的p尽最大可能包含所期望的值。随机串(Salt)是使这种攻击变得困难的一种办法。在口令后使用随机数。只能保护在多台计算机上使用相同口令或在同一计算机上使用同一口令的不同用户。 防止口令文件中出现相同口令 无须用户额外记住两个字符,就能增加口令长度 阻止了用硬件实现DES33服务端的口令安全问

12、题服务器端的字典攻击:在这种攻击中,Eve只对找到口令有兴趣,并不关心用户的ID。例如,如果口令是六位数, Eve可以创建一个六位数(000000999999)的列表,然后对每一个数使用散列函数,结果就是一个一百万个散列的列表。她就可以得到口令档案并搜索条目中的第二列,找出一个与之相匹配的。这可以被编程并且在Eve的个人计算机上脱机运行。找到匹配以后,伊夫就可以再上线,用口令来访问系统。 343.1.3 UNIX系统中的口令存储(1)Unix系统使用一个单向函数crypt()来加密用户的口令。Crypt()是基于DES的加密算法,它将用户输入的口令作为密钥,加密一个64bit的0/1串,加密的

13、结果又使用用户的口令再次加密;重复该过程,一共进行25次。最后的输出为一个13byte的字符串,存放在/etc/passwd的PASSWORD域。单向函数crypt()从数学原理上保证了从加密的密文得到加密前的明文是不可能的或是非常困难的。当用户登录时,系统并不是去解密已加密的口令,而是将输入的口令明文字符串传给加密函数,将加密函数的输出与/etc/passwd文件中该用户条目的PASSWORD域进行比较,若匹配成功,则允许用户登录系统。35UNIX系统中的口令存储(2)UNIX系统使用crypt()保证系统密码的完整性。 这一函数完成被称作单向加密的功能,它可以加密一些明码,但不能够将密码转

14、换为原来的明码。363.1.3 添加一个新用户37服务端的口令安全问题:unix的crypt()加密过程口令加盐(Salting Passwords)第一环节:口令字段字符串的生成:s = Agen(Dsalt, Dpw) 给口令Dpw撒盐:Dpw = Asalt (Dsalt,Dpw); 用撒盐结果做密钥:K = Dpw; 用一个64位的全0位串构造一个数据块Dp; 设循环次数:i = 0; 对数据块加密:Dc = Acrypt(K, Dp); Dp = Dc,i = i + 1; 如果i 25,则回到第步; 把数据块变换成字符串:s = Atrans(Dc); 返回s。38服务端的口令安全

15、问题:unix的crypt()加密过程第二环节:口令字段信息维护: 接收用户提供的口令Dpw; 生成一个盐值:Dsalt = Arandom( ); 生成口令信息:s = Agen(Dsalt, Dpw); 把口令信息s和Dsalt存入数据库的口令字段中。393.1.3 验证用户40服务端的口令安全问题:unix的crypt()验证过程第三环节:身份认证过程: 接收用户提供的帐户名Dname和口令Dpw; 在帐户信息数据库中检查Dname的合法性,如果合法,则找出其对应的s和Dsalt; 生成临时口令信息:sr = Agen(Dsalt, Dpw); 如果sr与s相等,则认证成功,否则,认证失

16、败。41服务端的口令安全问题:改进分析盐处理使字典攻击更为困难。如果原口令是六位数,盐是四位数,那么散列处理的结果就超过十位数。这就意味着伊夫现在要制作一个有10,000,000个条目的列表,并为每一个条目创建一个散列。这个散列列表也有10,000,000个条目,比较这些条目要花费很长时间。如果盐是一个很长的随机数字,盐处理是非常有效的。UNIX操作系统运用的就是这种方法的变种。42对付窃听的改进方案 q id qid比较f是或不是声称者验证者pid消息salt43基本的对付危及验证者的措施使用单向函数 pididq比较是或不是声称者验证者pid消息fq salt44对付窃听及危及验证者的措施

17、 声称者fqidgidr比较是或不是pidr验证者消息saltsalt45对付重放攻击的措施抵抗对通信线路的主动攻击重放攻击。 r idtgfidqg比较是或不是p声称者验证者消息q idtsalt463.1 基于口令的机制3.2 一次性口令3.3 询问-应答机制3.4 基于地址的认证3.5 基于个人特征的认证机制3.6 个人鉴别令牌3 非密码的身份认证机制473.2 一次性口令机制一次性口令机制确保在每次认证中所使用的口令不同,以对付重放攻击。确定口令的方法: (1)两端共同使用一个随机序列生成器,在该序列生成器的初态保持同步; (2)使用时戳,两端维持同步的时钟。48一次口令一次口令的共享

18、列表用户和系统都同意一个口令列表。一次使用一个。如果用户不按次序使用口令,系统就要执行一个长的搜索才能找到匹配。这个方案就使窃听和口令的重复使用毫无用处了。存储保护不善,会导致所有口令泄露。顺序更新一次口令初始口令P1,这个口令仅在第一次访问时有效。访问的过程中,用户用P1作为密钥对这个口令加密产生新口令P2,作为第二次访问口令。Pi用来创建Pi+1。如果Eve能够猜测出第一个口令(P1),她就可以找出所有这一系列的口令。493.2 SKEY验证程序Alice输入随机数R,计算机计算x1=f(R)、x2=f(x1)、xn+1=f(xn)。Alice保管x1 ,x2 ,x3 ,。,xn这些数的列

19、表,计算机在登录数据库中Alice的名字后面存储xn+1的值。当Alice第一次登录时,输入名字和xn,计算机计算f(xn),并把它和xn+1比较,如果匹配,就证明Alice身份是真的。然后,计算机用xn代替xn+1。Alice将从自己的列表中取消xn。Alice每次登录时,都输入她的列表中未取消的最后的数xI,计算机计算f(xI),并和存储在它的数据库中的xI+1比较。当Alice用完了列表上面的数后,需要重新初始化。 503.2 双因素动态口令卡* 基于密钥/时间双因素的身份鉴别机制;* 用户登录口令随时间变化,口令一次性使用,无法预测,可以有效抵御密码窃取和重放攻击行为* RSA等多家安

20、全公司513.2 双因素动态口令卡相关产品* 美国RSA SecurID 公司推出的RSA SecurID系统是当前世界领的双因素身份鉴别系统。形成了硬件令牌、虚拟令牌(软件令牌)、与智能卡相结合的令牌等系列产品。鉴别服务器可运行于Windows/95/98/2000、Windows/NT、UNIX等环境。* 美国另一家公司Axend(现被Symantec公司兼并)是较早推出双因素身份认证系统的公司。Axend的产品不仅可运行于Windows/95/98/2000、Windows/NT、UNIX等环境,还能运行于Netwarex系统,适应我国证券行业的需要。* 我国一些信息技术公司也相继推出了

21、动态口令认证系统。如网泰金安信息技术公司、北京亿青创新信息技术有限公司等。523.2 双因素动态口令卡例子533.2 双因素动态口令卡原理分析543.2 安全性分析(1)没有器件而知道口令p,不能导致一个简单的攻击;(2)拥有器件而不知道口令p,不能导致一个简单的攻击;(3)除非攻击者也能进行时间同步,否则重放不是一个简单的攻击;(4)知道q(例如通过浏览验证者系统文件)而不知道设备安全值dsv,不能导致一个简单的攻击。553.3询问应答机制 询问应答原理可以扩张基于口令的方案,能大大地提高抵抗重放攻击的能力,但通常通信代价很高。* 前面所示的对付重放攻击的机制存在两个重要的问题。一个是为了两

22、端都知道nrv值需要维持同步。另一个是验证者要知道nrv值是否被重复使用过是比较困难的。* 询问应答方法克服了这些问题。563.3询问应答机制573.4 基于地址的机制基于地址的机制假定声称者的可鉴别性是以呼叫的源地址为基础的。在大多数的数据网络中,呼叫地址的辨别都是可行的。在不能可靠地辨别地址时,可以用一个呼叫回应设备来获得呼叫的源地址。 一个验证者对每一个主体都保持一份合法呼叫地址的文件。 这种机制最大的困难是在一个临时的环境里维持一个连续的主机和网络地址的联系。地址的转换频繁、呼叫转发或重定向引起了一些主要问题。 基于地址的机制自身不能被作为鉴别机制,但可作为其它机制的有用补充。583.

23、5 基于个人特征的机制生物特征识别技术主要有: 1)指纹识别; 2)声音识别; 3)手迹识别; 4)视网膜扫描; 5)手形。这些技术的使用对网络安全协议不会有重要的影响。593.6 个人鉴别令牌物理特性用于支持认证“某人拥有某东西” ,但通常要与一个口令或PIN结合使用。这种器件应具有存储功能,通常有键盘、显示器等界面部件,更复杂的能支持一次性口令,甚至可嵌入处理器和自己的网络通信设备(如智能卡)。这种器件通常还利用其它密码鉴别方法。601 身份认证概述2 身份认证协议与结构3 基于非密码的认证4 基于密码算法的认证5 零知识证明协议第3讲 身份认证协议与机制614 基于密码算法的 强鉴别协议

24、* 强鉴别(strong authentication):通过密码学的询问-应答(challenge-response)协议实现的身份鉴别,询问-应答协议的思想是一个实体向另一个实体证明他知道有关的秘密知识,但不向验证者提供秘密本身。这通过对一个时变的询问提供应答来实现,应答通常依赖于实体的秘密和询问。询问通常是一个实体选择的一个数(随机和秘密地)。624 基于密码算法的 强鉴别协议631 身份认证概述2 身份认证协议与结构3 基于非密码的认证4 基于密码算法的认证5 零知识证明协议第3讲 身份认证协议与机制645 零知识证明协议* 下面是一个故事:* Alice: “我知道联邦储备系统计算的

25、口令”* Bob: “不,你不知道”* Alice:我知道* Bob:你不知道* Alice:我确实知道* Bob:请你的证实这一点* Alice:好吧,我告诉你。(她悄悄说出了口令)* Bob:太有趣了!现在我也知道了。我要告诉华盛顿邮报* Alice:啊呀!655 零知识证明协议* P为示证者(Prover),V为验证者,P试图向V证明自己知道某信息。 P告诉V这一信息使得V相信,这样V也知道了这一信息,这是基于知识的证明; 通过某种有效的数学方法,使得V相信P掌握这一信息,却不泄漏任何有用的信息,这种方法称为零知识证明问题。* 最小泄漏证明(Minimum Disclosure Proo

26、f)* 零知识证明(Zero Knowledge Proof)665 零知识证明协议* P几乎不可能欺骗V:如果P知道证明,他可以使V以极大的概率相信他知道证明;如果P不知道证明,则他使得V相信他知道证明的概率几乎为零。* V几乎不可能知道证明的知识,特别是他不可能向别人重复证明过程。* V无法从P那里得到任何有关证明的知识。(零知识证明满足全部三个条件)675 零知识证明协议(1)V站在A点;(2)P进入山洞,走到C点或D点;(3)当P消失后,V进入到B点;(4)V指定P从左边或右边出来;(5)P按照要求出洞(如果需要通过门,则使用咒语)(6)P和V重复步骤(1)至(5)n次。68挑战-应答

27、身份鉴别协议若P不知咒语,则在 B 点,只有50 %的机会猜中 V的要求,协议执行 n 次,则只有 2-n 的机会完全猜中,若 n=16,则若每次均通过 Bob 的检验,V受骗机会仅为1/65536。如果V用摄像机记录下他所看到的一切,他把录像给Carol看,Carol会相信这是真的吗?Carol是不会相信这是真的。这说明了两件事情:其一,V不可能使第三方相信这个证明;其二,它证明了这个协议是零知识的。V在不知道咒语的情况下,显然不能从录像中获悉任何信息。69挑战-应答身份鉴别协议零知识(Zero-knowledge)(ZK)证明:是一种交互式证明系统声称者(证明者)和验证者交换多个信息,这些

28、信息的生成依赖于保密的随机数证明者P(Prover):知道某一秘密s,使V相信自己掌握这一秘密;验证者V(Verifier):验证P掌握秘密s每轮V向P发出一询问,P向V作应答(需要有s的知识才能正确应答)。V检查P是否每一轮都能正确应答。70挑战-应答身份鉴别协议交互证明与数学证明的区别数学证明:证明者可自己独立完成证明(绝对)交互证明:由P产生证明(响应),V验证证明(响应)的有效性(概率上)来实现,双方之间要有通信交互系统应满足完备性:如果P知道某一秘密,V将接收P的证明正确性:如果P能以一定的概率使V相信P的证明,则P知道相应的秘密(冒充者伪造成功的概率可忽略不计)71挑战-应答身份鉴

29、别协议Needham-Schroeder协议:是基于对称密钥加密的挑战-响应计算模n平方根的困难性Fiat-Shamir身份识别协议Fiege-Fiat-Shamir身份识别协议离散对数的困难性:Schnorr协议72挑战-应答身份鉴别协议参数的选择:可信中心T选择两个素数p和q(保密,最好用完丢弃),计算类似RSA的模数m=pq、并公开m。证明者选择与m互素的私钥s(1sm),计算v=s2 mod m证明者在可信中心T中注册公钥v2 Fiat-Shamir身份识别协议73挑战-应答身份鉴别协议协议执行:迭代t轮(连续地、独立地)(1) Alice 取随机数 r(m),计算x= r2 mod

30、m,并发送给Bob;(2) Bob将一随机比特e=0或1作为挑战发给 Alice;(3) Alice计算响应值y并发给Bob若e=0,则Alice 将y=r送给Bob;若e=1,则Alice将y=rs mod m送给Bob;(4) 若y=0,则Bob拒绝证明;反之,验证y2xve mod m?若e=0,则Bob 证实y2 =x mod m若e=1,则 Bob 证实 y2 =xv mod m 若t轮都成功,则Bob就接收Alice的身份Fiat-Shamir身份识别协议74挑战-应答身份鉴别协议完备性如果Alice和Bob遵守协议,且Alice知道s,则响应值 y2=(rse)2 mod m x

31、ve mod m,Bob接收Alice的证明,所以协议是完备的。正确性Alice不知道s,他也可取r,送y2 =r2 mod m给Bob;Bob送e 给Alice;Alice将r作为响应值;当b=0时则Alice可通过检验使得Bob受骗,当b=1时,则Bob可发现Alice不知s。Bob受骗概率为1/2,但连续t轮受骗的概率将仅为2-tBob无法知道Alice的秘密(s),因为s没有被传送过,且Bob只能随机选取一个比特位作为挑战。75挑战-应答身份鉴别协议参数的选择:可信中心T选择两个素数p和q(保密,最好用完丢弃),计算类似RSA的模数n=pq、并公开n。证明者选择k个与n互素的随机整数作为私钥s1, s2, ,sk(1sin)证明者选择k个随机比特b1, b2, ,

温馨提示

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

评论

0/150

提交评论