《身份认证讲义》PPT课件.ppt

上传人:小飞机 文档编号:5609713 上传时间:2023-08-01 格式:PPT 页数:47 大小:308.99KB
返回 下载 相关 举报
《身份认证讲义》PPT课件.ppt_第1页
第1页 / 共47页
《身份认证讲义》PPT课件.ppt_第2页
第2页 / 共47页
《身份认证讲义》PPT课件.ppt_第3页
第3页 / 共47页
《身份认证讲义》PPT课件.ppt_第4页
第4页 / 共47页
《身份认证讲义》PPT课件.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《《身份认证讲义》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《身份认证讲义》PPT课件.ppt(47页珍藏版)》请在三一办公上搜索。

1、认证的实际应用,中山大学信息科学与技术学院王常吉 副教授2006年11月,|10/5/2022,2,目录,身份认证技术概述基于口令的身份认证简单的口令认证一次性口令认证(OTP)Kerberos身份认证协议基于X.509的身份认证,|10/5/2022,3,身份认证简介,身份认证是网络安全中最前沿的一道防线,是最基本的安全服务,其他的安全服务都要依赖于它。一旦身份认证系统被攻破,那么系统的所有安全措施将形同虚设。身份认证指的是对实体身份的证实,用以识别合法或者非法的实体,阻止非法实体假冒合法实体窃取或者访问网络资源,|10/5/2022,4,身份认证与消息认证的差别,身份认证一般要求实时性,消

2、息认证通常不提供实时性;身份认证只证实实体的身份,消息认证除了要证实报文的合法性和完整性外,还需要知道消息的含义。,|10/5/2022,5,身份认证简介,身份认证通常是通过某种复杂的身份认证协议来实现,身份认证协议是一种特殊的通信协议,它定义参与认证服务的所有通信方在身份认证过程中需要交换的所有消息的格式、消息的次序以及消息的语义等。通常采用密码学技术来实现认证信息的存储与传输的安全典型的身份认证协议涉及示证者(Prover)验证者(Verifier)攻击者(Attacker)在某些情况下,还涉及可信赖的第三方TTP,|10/5/2022,6,身份认证简介,身份认证模型A user can

3、identify himself towards a system by proving knowledge of authentication credentials,|10/5/2022,7,身份认证简介,典型的身份认证机密(authentication credentials)实体所知道的或掌握的知识(something you know,知识证明),如口令实体所持有的物件(something you have,持有证明),如令牌,智能卡实体的生物特征(something you are,属性证明),如指纹、视网膜、DNA双因素或多因素认证,|10/5/2022,8,身份认证简介,身份认

4、证协议的要求验证者正确识别合法的示证者的概率极大攻击者欺骗示证者(验证者)骗取信任的成功率极小计算有效性,为实现身份认证所需计算量尽可能小通信有效性,为实现身份认证所需通信次数和交互的数据量尽可能小秘密参数能安全地存储双向认证,通信双方能互相认证对方的身份通信双方(多方)发生争执时,可由TTP解决争执可证明安全性,|10/5/2022,9,身份认证简介,事实上,每一个身份认证协议都具有自己的应用范围,并非每个身份认证协议都必须满足以上要求。在不同的应用环境,有不同的安全风险,我们可针对具体环境设计不同特征的认证协议,以较小的代价将安全风险的某一方面降低到可接受的范围,|10/5/2022,10

5、,身份认证简介,在网络环境下,由于认证信息需通过在网上传输,攻击者可能对身份认证系统发起以下的攻击窃听(Eavesdropping)猜测攻击(Guessing)中间人攻击(Man-in-the-Middle)重放攻击(Replay)攻击认证服务器(Compromised server)密码分析攻击(Cryptanalysis)社交工程(Social engineering),|10/5/2022,11,身份认证简介,随着信息安全技术的不断发展,身份认证技术也经历了从简单到复杂的发展过程。单机环境下的身份认证网络环境下的身份认证静态口令的身份认证动态(一次性)口令的身份认证只有通信双方参与的身份

6、认证引入可信第三方的身份认证基于对称密码体制的身份认证(Kerberos)基于公钥密码体制(PKI)的身份认证单纯的身份认证身份认证和密钥建立(Key establishment)的结合 P1363工作组于2000年开始制定IEEE P1363.2标准,即基于口令的公钥密码技术,重点讨论Password-authenticated Key Agreement Protocol,|10/5/2022,12,基于口令的身份认证,最简单的身份认证方式是采用用户名/静态口令方式,它是最基本也是最经济实用的认证方式目前各类计算资源主要靠静态口令的方式来保护,客户方直接把口令以明文的形式传给服务器,服务器

7、直接保存用户的口令或者保存口令的哈希值以进行验证,例如大多数Unix系统和FTP,Telnet等协议采用在服务器上保存口令的哈希值 为解决静态口令的诸多问题,安全专家提出了一次性口令(One Time Password)技术。基本思想是在网上传送的口令只使用一次。一次性口令系统主要是为抵制重放攻击而设计的。,|10/5/2022,13,基于口令的身份认证,自从L.Lamport于1981年最早提出利用哈希函数设计OTP以来,各种OTP协议纷纷被提出,如CHAP,EAP等目前OTP的实现机制主要有 挑战/应答(Challenge/Response):用户要求登录时,系统产生一个随机数(挑战)发送

8、给用户,用户将该随机数和口令按约定的算法做运算,结果作为应答发给服务器,服务器运用约定的算法对口令和随机数做运算以验证用户身份。由于服务器发出的每次挑战不同,因此用户给出的应答也不同,从而避免了重放攻击,也避免了口令的明文传输,但此机制仍然存在口令猜测攻击,且对于用户来说,操作繁复,容易造成输入错误,|10/5/2022,14,基于口令的身份认证,Challenge and Response Handshake ProtocolClient和Server共享一个密钥K,Client,MAC=H(R,K),MAC=H(R,K),比较MAC和MAC,Server,|10/5/2022,15,基于口

9、令的身份认证,口令序列(S/Key):是挑战/应答机制的改进。在S/Key中,口令为一个单向的前后相关的序列,系统只需记录第N个口令。用户用第N-1个口令登录时,系统用单向算法算出第N个口令与自己保存的第N个口令匹配,以判断用户的合法性。由于N是有限的,用户登录N次后必须重新初始化口令序列,且存在口令猜测攻击,内部人员攻击和小数攻击等时间同步(Time Synchronization):以用户登录时间而不是以服务器的挑战作为随机因素,同步是指用户密码卡和认证服务器所产生的口令在时间上必须同步。RSA信息安全公司最先成功地研制出基于时间同步的动态口令认证系统RSA SecureID,也由此获得了

10、时间同步口令认证的专利。,|10/5/2022,16,基于口令的身份认证,S/Key,Token,Server,challenge,OTP,Pass phrase+challenge,OTP,OTP,f(f(f(f(x),|10/5/2022,17,基于口令的身份认证,口令管理 口令属于“something you know”这种方式,容易被窃取口令的错误使用:选择一些很容易猜到的口令;把口令告诉别人;把口令写在一个贴条上并把它贴在键盘旁边。口令管理的作用:生成了合适的口令口令更新口令保密,|10/5/2022,18,基于口令的身份认证,口令的要求:包含一定的字符数;和ID无关;包含特殊的字符

11、和大小写;不容易被猜测到;跟踪用户所产生的所有口令,确保这些口令不相同;定期更改其口令;使用字典式攻击的工具找出比较脆弱的口令,许多安全工具都具有这种双重身份:网络管理员使用的工具:口令检验器攻击者破获口令使用的工具:口令破译器,|10/5/2022,19,基于口令的身份认证,口令产生器 不是让用户自己选择口令,口令产生器用于产生随机的和可拼写口令 口令的时效 强迫用户经过一段时间后就更改口令系统还记录至少5到10个口令,使用户不能使用刚刚使用的口令限制登录次数 免受字典式攻击或穷举法攻击,|10/5/2022,20,Kerberos身份认证协议,Needham和Schroeder最先提出在身

12、份认证协议中引入可信任的第三方,Kerberos基于N-S认证协议,Alice,Bob,Trent(KDC),1,2,3,4,5,A T:A|B|NAT A:NA|B|K|K|AKB,TKA,TA B:K|AKB,TB A:NBKA B:NB-1K,|10/5/2022,21,Kerberos身份认证协议,Kerberos是80年代中期,麻省理工学院为Athena 项目开发的一个认证服务系统Kerberos是希腊神话故事中一种三个头的狗,还有一个蛇形尾巴,是地狱之门的守卫Kerberos系统的目标是把认证(Authentication)、记帐(Accounting)、审计(Audit)的功能扩

13、展到网络环境版本前三个版本仅用于内部第四版得到了广泛的应用第五版于1989年开始设计RFC 1510(1993年),|10/5/2022,22,Kerberos身份认证协议,MIT提供了完整的Kerberos实现http:/源码开放目前的最新版本为1.4.1(2005年4月22)支持各种平台(Windows/Macintosh)同时提供了各种工具(k系列),|10/5/2022,23,Kerberos要解决的问题,在一个开放的分布式网络环境中,用户通过工作站访问服务器上提供的服务。服务器应能够限制非授权用户的访问并能够鉴别对服务的请求。工作站无法可信地向网络服务证实用户的身份,即工作站存在三种

14、威胁。一个工作站上一个用户可能冒充另一个用户操作;一个用户可能改变一个工作站的网络地址,从而冒充另一台工作站工作;一个用户可能窃听他人的信息交换,并用回放攻击获得对一个服务器的访问权或中断服务器的运行。,|10/5/2022,24,Kerberos要解决的问题,所有上述问题可以归结为一个非授权用户能够获得其无权访问的服务或数据。不是为每一个服务器构造一个身份鉴别协议,Kerberos提供一个中心鉴别服务器,提供用户到服务器和服务器到用户的鉴别服务。,|10/5/2022,25,Kerberos系统应满足的要求,安全:网络窃听者不能获得必要信息以假冒其它用户;Kerberos应足够强壮以至于潜在

15、的敌人无法找到它的弱点连接。可靠:Kerberos应高度可靠,并且应借助于一 个分布式服务器体系结构,使得一个系统能够备份另一个系统。透明:理想情况下,用户除了要求输入口令以外应感觉不到认证的发生。可伸缩:系统应能够支持大数量的客户和服务器。,|10/5/2022,26,一个简单的认证对话,1)C AS:IDc|Pc|IDv2)ASC:Ticket3)C V:IDc|TicketTicket=EKv(IDc|ADc|IDv),AS,V,C,(1),(2),(3),C=ClientAS=Authentication ServerV=ServerIDc=identifier of User on

16、C IDv=identifier of VPc=password of user on CADc=network address of CKv=secret key shared bye AS and V|=concatention,问题一:明文传输口令问题二:每次访问都要 输入口令,|10/5/2022,27,一个更加安全的认证对话,C AS:IDC|IDtgsASC:EKcTicket tgsC TGS:IDC|IDv|TickettgsTGS C:TicketvC V:IDc|TicketvTickettgs=EKtgs IDC|ADC|IDtgs|TS1|Lifetime1Ticket

17、 v=EKv IDC|ADC|IDV|TS2|Lifetime2口令没有在网络上传输Tickettgs 可重用,用一个Tickettgs 可以请求多个服务,AS,V,C,(1),(2),(3),TGS,(4),(5),|10/5/2022,28,一个更加安全的认证对话,问题一:票据许可票据tickettgs的生存期如果太大,则容易造成重放攻击如果太短,则用户总是要输入口令问题二:如何向用户认证服务器解决方法增加一个会话密钥(Session Key),|10/5/2022,29,Kerberos基本概念,Principal(安全个体)被鉴别的个体,有一个名字(name)和口令(password)

18、KDC(Key distribution center)是一个网络服务,提供ticket和临时的会话密钥Ticket一个记录,客户可以用它来向服务器证明自己的身份,其中包括客户的标识、会话密钥、时间戳,以及其他一些信息。Ticket中的大多数信息都被加密,密钥为服务器的密钥Authenticator一个记录,其中包含一些最近产生的信息,产生这些信息需要用到客户和服务器之间共享的会话密钥,|10/5/2022,30,Kerberos基本概念,Authentication Server(AS)mutual authentication with client at login based on l

19、ong-term key,gives client ticket granting ticket and short-term key.AS provides an authentication serviceTicket Granting Server(TGS)mutual authentication with client based on short-term key and ticket granting ticket.TGS then issues tickets giving clients access to further servers.TGS provides an ac

20、cess control service.,|10/5/2022,31,Kerberos工作原理,Instead of client sending password to application server:Request Ticket from authentication serverTicket and encrypted request sent to application serverHow to request tickets without repeatedly sending credentials?Ticket granting ticket(TGT),|10/5/20

21、22,32,Kerberos工作原理,|10/5/2022,33,Kerberos V4,AS,TGS,请求tickettgs,Tickettgs+会话密钥,请求ticketv,Ticketv+会话密钥,请求服务,提供服务器认证符,(1),(2),(3),(4),(5),(6),|10/5/2022,34,Kerberos V4的报文交换,AS交换,获得Tickettgs用户登录工作站,请求主机服务 C AS:IDc|IDtgs|TS1AS在数据库中验证用户的访问权限,生成Tickettgs 和会话密钥,用由用户口令导出的密钥加密 AS C:EKcKc,tgs|IDtgs|TS2|Lifeti

22、me2|Tickettgs其中 Tickettgs=EKtgs Kc,tgs|IDc|ADc|IDtgs|TS2|Lifetime2,|10/5/2022,35,Kerberos V4的报文交换,TGS服务交换,获得服务票据Ticketv工作站提示用户输入口令来对收到的报文进行解密,然后将Tickettgs 以及包含用户名称、网络地址和事件的认证符发给TGS C TGS:IDV|Tickettgs|AuthenticatorcTGS对票据和认证符进行解密,验证请求,然后生成服务许可票据Ticket v TGS C:EKc,tgsKc,v|IDV|TS4|Ticketv 其中Tickettgs=

23、EKtgsKc,tgs|IDC|ADC|IDtgs|TS2|Lifetime2Ticketv=EK v Kc,v|IDC|ADC|IDv|TS4|Lifetime4Authenticatorc=EKc,tgsIDc|ADc|TS3,|10/5/2022,36,Kerberos V4的报文交换,客户户/服务器认证交换:获得服务工作站将票据和认证符发给服务器 C V:Ticketv|Authenticatorc服务器验证票据Ticketv和认证符中的匹配,然后许可访问服务。如果需要双向认证,服务器返回一个认证符 V C:EKc,v TS5+1其中Ticketv=EK v Kc,v|IDc|ADc|

24、IDv|TS4|Lifetime4Authenticatorc=EKc,vIDc|ADc|TS5,|10/5/2022,37,Kerberos V5,改进version 4 的环境缺陷加密系统依赖性:DES Internet协议依赖性:IP 消息字节次序Ticket的时效性Authentication forwardingInter-realm authentication弥补了Kerberos V4的不足取消了双重加密CBC-DES替换非标准的PCBC加密模式每次会话更新一次会话密钥增强了抵抗口令攻击的能力,|10/5/2022,38,Kerberos缺陷,对时钟同步的要求较高猜测口令攻击基

25、于对称密钥的设计,不适合于大规模的应用环境,|10/5/2022,39,基于X.509公钥证书的认证,基于哈希函数和对称密码技术的身份认证系统最大的缺陷是不能提供信息的不可否认性,公钥密码技术的出现为身份认证协议带来了强有力的方法和手段。目前以X.509公钥证书(Public Key Certificate)为基础的PKI体制正逐渐取代对称密钥认证而成为网络身份认证和授权体系的主流 在X.509认证体系中,一个可信任的第三方(Certificate Authority)为实体颁发的PKC,PKC是经由CA采用公钥密码技术将用户的公钥和身份信息捆绑后进行数字签名的一种权威的电子文档,用于证明实体

26、的身份和公钥的合法性。通信双方通过获取对方的公钥证书,使用CA的公钥检验PKC的正确性,从而获知PKC中的公钥对应到一个特定的实体对象,然后就可以运用挑战/应答机制,判断对方是否持有PKC中公钥对应的私钥,从而完成实体身份认证,最典型的实例就是SSL(Secure Socket Layer)协议,|10/5/2022,40,基于X.509公钥证书的认证,X.509 认证框架X.509证书基于公钥证书的认证过程不同管理域的问题,|10/5/2022,41,X.509认证框架,Certificate Authority签发证书Registry Authority 验证用户信息的真实性Directo

27、ry 用户信息、证书数据库没有保密性要求证书获取从目录服务中得到在通信过程中交换,Directory,CA,RA,用户,用户,注册,签发证书、证书回收列表,申请,签发,查询,身份认证,|10/5/2022,42,基于X.509公钥证书的认证,X509 证书的层次管理结构,Root-CA,CA,CA,CA,CA,CA,教育部,中山大学,XX系,.,|10/5/2022,43,X.509证书与CRL,Issuer unique name,Subject Name,extensions,version,Serial number,Issuer name,subject unique name,签名算

28、法标识,有效期,主体公钥信息,签名,version,Issuer name,签名算法标识,回收证书,签名,签名,回收证书,|10/5/2022,44,认证过程,单向认证(One-Way Authentication)tA:时间戳 rA:Nonce,用于监测报文重发SgnData:待发送的数据 E KUbKab:用B的公钥加密的会话密钥,A,B,A tA,rA,B,SgnData,EKUbKab,|10/5/2022,45,认证过程,双向认证(Two-Way Authentication)tA:时间戳 rA:Nonce,用于监测报文重发SgnData:待发送的数据 E KUbKab:用B的公钥加密的会话密钥,A,B,1.A tA,rA,B,SgnData,EKUbKab,2.B tB,rB,A,rA,SgnData,EKUbKba,|10/5/2022,46,认证过程,三向认证(Three-Way Authentication)tA:时间戳 rA:Nonce,用于监测报文重发SgnData:待发送的数据 E KUbKab:用B的公钥加密的会话密钥,A,B,1.A tA,rA,B,SgnData,EKUbKab,2.B tB,rB,A,rA,SgnData,EKUbKba,3.A rB,|10/5/2022,47,The end.Thanks,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号