版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三部分网络安全应用-身份认证
8.1身份验证的概念:身份识别(Identification)是指用户向系统出示自己的身份证明过程。身份认证(Authentication)是系统查核用户的身份证明的过程,实质上是查明用户是否具有他所请求资源的存储和使用权的过程。第八章身份认证通常把这两项工作(Identificationand&Authentication)统称为身份认证(或称身份鉴别,或称身份验证),它是判明和确认通信双方真实身份的两个重要环节。身份认证必须做到准确无二义地将对方辨认出来,同时还应该提供双向的认证,即相互证明自己的身份。第八章身份认证8.2网络环境下的身份认证
网络环境下的身份认证过程需要基于密码学的复杂协议。以如下模型来讨论鉴别协议:一个用户A想要和另外一个用户B建立一个通信,A和B之间需要鉴别,即需要确认对方的身份,不会被一个入侵者H假冒。基于共享秘密密钥的认证。假定A和B之间已经共享了一个秘密密钥KAB。这个密钥事先可以通过电话、直接见面等方式而确定。第八章身份认证一种可行的协议是查询—应答(Challenge-Response)协议;一方发送一个随机数给另一方作为查询,后者将它用秘密密钥加密后作为应答,通过检查应答来确定对方是否拥有该秘密密钥。这种一方提问另一方回答的技术在其他协议中也经常使用。第八章身份认证第八章身份认证图8-1使用查询—应答协议的相互鉴别查询—应答协议的信息序列及相互鉴别过程:在第一条信息中,A以B能够理解的方式发送自己的标识A给B。B为验证这条信息是来自于A而不是入侵者H,他选择了一个随机数RB作为一个查询,以明文的形式传送给A。A使用KAB将RB加密后得到KAB(RB),作为第三条信息传送给B。B收到这条信息后,用KAB解密,得到RB,因此,他知道对方是A,而不是H。因为H不知道密钥KAB,所以无法产生信息KAB(RB),只有A才能产生这条信息。第八章身份认证
现在,B知道是A在和他通话,但A还未确认对方是B。因此,他再发送第四条信息,选择了一个随机数RA作为一个查询,以明文的形式传送给B。B使用KAB将RA加密后得到KAB(RA),将之发送给A。A收到这条信息后,确认对方是B。第八章身份认证8.3第三方认证是在相互不认识的实体之间提供安全通信,它是基于密钥分发中心的认证。Kerberos认证系统X.509数字证书第八章身份认证8.3基于密钥分发中心的认证在所有的通信实体之间预先分配一个密钥是不现实的,也就是说,在通信开始之前,A和B之间可能没有共同的密钥。密钥分发中心(KeyDistributionCenter—KDC)可以在通信主体之间充当一个中间人的角色。每一通信主体与KDC共享一个密钥,因而在每一台主体和KDC之间是相互信任的。A和KDC通信时,会提供他的密钥,所以KDC知道对方是A。同样,只有KDC才能够读懂A用他自己的密钥加密的信息,所以A知道对方是KDC。B和KDC之间的关系也是这样的。第八章身份认证基于密钥分发中心的认证认证协议是A、B和KDC三个主体之间相互通信,达到使A和B之间互相确认对方身份的目的。在协议执行的过程中,除了使A和B之间相互信任外,通常还要为A和B建立一个秘密会话密钥(SessionKey),在随后的通信中使用。在协议的执行中,H可能会拦截、修改或重发信息来破坏协议。第八章身份认证第八章身份认证图8-2使用KDC的一个鉴别协议使用KDC鉴别协议的过程:A首先选择一个会话密钥KS,传送“A,KA(B,KS)”给KDC。KDC收到这个信息后,知道是A传送过来的,就用KA将KA(B,Ks)解密,得到B,KS。现在KDC知道A想和B通信,就用KB把A,KS加密后发送给B。B用KB解密后,知道是A的连接请求,并且得到了密钥KS。之后,A和B就可以利用密钥KS来进行会话了这里的鉴别包括KDC对A的鉴别,B对KDC的鉴别。KDC知道第一条信息来自A,因为只有A和KDC知道密钥KA。同样,B知道第二条信息来自KDC,因为只有B和KDC知道密钥KB。第八章身份认证使用KDC鉴别协议的过程:
但这个协议也存在缺陷。假设H帮A完成了某项工作,A要通过B付一笔钱给H,A要使用上面的鉴别协议,随后使用KS来向B发送支付报文。攻击方截获上面的第二条信息和随后的支付报文,并将它重发给B。在B看来,未发现异常,于是又从A的账户支付一笔钱给H。这种类型的攻击叫做重发攻击。解决的办法是在每一条信息上加上时间戳,如果发现信息中包含的时间戳是重复的,则将它丢弃。因此,当攻击方重发这些信息时,B查看信息中的时间戳就可以知道这些信息是过时的,而不是有效的信息。这种方法的难度在于在网络系统中使所有的主机的时间保持一致。在时间误差内,重发的信息不会被识别。第八章身份认证.8.3.1Kerberos鉴别:
带Kerberos鉴别是一个在很多系统中实现并被使用的鉴别协议。在Kerberos协议中,A和B相当于客户工作站和服务器,A向B请求执行一项功能,他们需要相互鉴别。在网络系统中设置一个鉴别服务器AS,每个用户在客户工作站上登录时验证用户身份,其作用相当于KDC,AS和每个用户以及服务器共享一个秘密密钥。AS有一张存放用户和服务器的名字及其私有密钥的数据库列表。Kerberos假设它的所有用户(客户及服务器)都很安全地保存着它们的口令。第八章身份认证.8.3.1Kerberos鉴别:
Kerberos鉴别还设置一个授予许可证服务器(Ticket-GrantingService),它向客户(A)发放服务凭证,A向服务器B出示服务凭证以证明其身份,因此B能够确认是A发出的请求。使用应用服务器B的私有密钥加密服务凭证,这使得只有B才能解读这一服务凭证,其他服务器不能冒充B。第八章身份认证图8-3Kerberos协议第八章身份认证A客户AASKA(KS
,KTGS(A,KS))KTGS(A,KS)
,B,KS(t1))TGSKS(B,KAB)
,KB(A,KAB)KB(A,KAB)
,KAB服务器KAB(t2+1)B(t2)Kerberos协议的工作过程:(P154)Kerberos协议的工作过程:(P154)(1)A首先要登录到系统中,输入他的口令。工作站将他的名字(标识)A以明文的形式传送给AS。(2)AS生成一个会话密钥KS,并将A的标识A和KS用TGS的密钥加密后作为A向TGS出示的许可证KTGS(A,KS)。整条信息用KA加密,除了A,其他用户不能解读这条信息。第八章身份认证(3)A要访问服务器B时,工作站向TGS发送第三条信息。其中包含AS在第二条信息中返回的许可证KTGS(A,KS),要访问的服务器标识B和时间戳KS(t1)。时间戳KS(t1)的作用是避免H重发这条信息给TGS来冒充A(因为H重发这条信息时,TGS发现这个时间戳中包含的时间已经过时,而H也无法生成一个新的时间戳)。(4)TGS验证A发送来的KTGS(A,KS),使用他自己的密钥KTGS解密后,得到(A,KS),因此TGS知道发送者的标识A。TGS为A和B的通话产生一个会话密钥KAB,发送信息KS(B,KAB),KB(A,KAB)给A。A可用KS解读第一部分,B可用KB解读第二部分。第八章身份认证
(5)A将KB(A,KAB)发送给B,同时这条信息也打上了时间戳
KAB(t2),以避免H重发此信息给B。
(6)B解密KB(A,KAB),得到发送者的标识A以及会话密钥KAB。只有TGS才能生成KB(A,KAB),因此可以推断出A是从TGS那里得到的,而TGS已经鉴别过A了,故B可以相信信息的发送者就是A。
第八章身份认证
B解密第五条信息的时间戳后,再向A回答信息KAB(t2+1),以向A证明自己的身份。因为H无法获得会话密钥KAB,所以A收到信息后就可以证实B的身份了。第八章身份认证第八章身份认证在A和B之间经过Kerberos协议相互鉴别后,B再检查A的要求是否被允许执行,即B有他自己的授权,根据授权来决定是否执行A的请求。因此,从B的角度看,鉴别是确定身份的过程,即需要证明是A而不是H向自己发送了请求,而授权是确定用户在服务器中的权限的过程,即需要检查A是否有权限在B服务器上执行他所希望的操作。实现和配置Kerberos需要额外的工作,但是得到的好处是A可以访问网络上的所有服务器,而不需要将他的口令存放在每一台服务器上8.3.2KerberosV4认证:(P155)
CAS:IDc||IDtgs||TS1ASC:EKc[
Kc,tgs||IDtgs
||TS2||Lifetime2||Tickettgs]Tickettgs=EKtgs
[Kc,tgs||IDv||ADc||IDtgs||TS2||Lifetime2]
CTGS:IDv||Tickettgs||AuthenticatorcAuthenticatorc=EKc,tgs[IDc||ADc||TS3]Tickettgs=EKtgs[Kc,tgs||IDv||ADc||IDtgs||TS2||Lifetime2]8.3.2KerberosV4认证:(P155)
TGSC:EKc,tgs[Kc,v||IDv||TS4||Ticketv]Ticketv=EKv[Kc,v||IDc||ADc||IDv||TS4||Lifetime4]
CV:Ticketv||AuthenticatorcTicketv=EKv[Kc,v||IDc||ADc||IDv||TS4||Lifetime4]Authenticatorc=EKc,v[IDc||ADc||TS5]
VC:EKc,v[TS5+1]8.3.2KerberosV4认证:(P155)AuthenticationService(AS)TicketGrantingService(TGS)
(KDC)UsernamePasswordLongTermSymmetricKey(LTSK)Cache\\AppServClientLogonAS_REQAS_REPEKDC(TGT),EU(SK)TGS_REPEAppSrv(Ticket),ESK(C-K)(SKC-A)AP_REQEAppSrv(Ticket),ESKC(Authenticator)AP_REPESKC-A(timestamp+1)LegendLTSK:LongTermSymmetricKeySK:SessionKeyE:EncryptedC:ClientK:KDCA:AppSrvEU(LTSK)(Authenticator),UsernameTGS_REQEKDC(TGT),ESK(Authenticator),AppSrv8.3.3Kerberos交叉认证(P155)8.3.4KerberosV4缺陷及V5改进第八章身份认证8.4X.509(P159)
为了在开放的网络上实现远程的网络用户的身份认证,ITU于1988年制定了认证体系标准:“开放性系统互连——目录服务:认证体系X.509”
第八章身份认证X.509主要内容
简单认证强认证密钥及证书管理证书扩充及证书吊销列表扩充认证协议——简单认证过程在此部分,X.509建议了安全度较低的身份认证程序,此部分所定义的验证程序使用最常见的口令(Password)认证的技术来识别通信双方。只要用户可以提供出正确的口令,就认为他/她是正确的合法的用户。该认证体系仅能提供较简单、有限的保护,来防止未授权的存取访问。认证协议——简单认证过程在X.509中提供的简单认证的运行方式有下列三种方式用户将其口令及用户代号,未做任何加密保护,直接以明文方式传送至接收端。用户将其个人之口令、用户代号、一随机数和/或时间戳,在经过一单向函数保护后,传送至接收瑞。用户用上面第2种方式所述的方法,先经一次单向函数保护所有数据,然后再连同另一组随机数和/或时间戳,再经过第二次的单向函数保护后,传送至接收端。认证协议——简单认证过程(1)由用户A将其用户代号及口令送至接收端B。接收端B将A送来的口令及用户代号送至目录朋务器,目录服务器比对先前A储存在此的口令。目录服务器响应B是否接受A为合法的用户。B回复A是否为合法的用户。AB目录简单认证过程(2,3)受保护数据1=f1(t1A,q1A,A,A的口令)发送方A所送出的数据=(t1A,q1A,A,受保护数据1)f1f2AA的口令t1Aq1At2Aq2A受保护数据1受保护数据2A:用户代号tA:时间戳qA:随机数强认证程序
“简单认证”,若是使用封闭的系统,极容易实现,成本较低,但是使用在因特网上,则“简单认证”安全性就不足以保障认证的安全性了。在X.509中以公开密钥密码的技术能够让通信双方容易共享密钥的特点,并利用公钥密码系统中数字签名的功能,强化网络上远程认证的能力,定义出强认证程序,以达到所谓“强认证”的目的公钥证书Alice的公钥BobAliceCherry认证中心(CA):将每位网络用户的公钥与个人的身份数据签署成电子证书证书特点在X.509中提到证书必须符合有下列两点特性:所有可取得认证中心公钥的用户,可以找到任何已经经过该认证中心认证的公钥。除了认证中心本身以外,其它任何人修改证书的动作都会被察觉、检测出来。8.5数字证书格式数字证书包含用户身份信息、用户公钥、证书发证机构对该证书的数字签名信息。证书的一般格式:(P164)证书的表示法:
CA<<A>>=CA{V,SN,AI,CA,TA,A,AP}证书链
8.5.1证书的获取证书链(P165)
8.5.2证书的吊销证书吊销列表(p164)证书链8.6验证证书
8.6.1单向认证(P167)
8.6.2双向认证
8.6.3三向认证证书链
8.7CA
系统结构8.7.1CA服务器CA是整个认证机构的核心,它保存了根CA的私钥,对其安全等级要求最高。CA服务器具有产生证书,实现密钥备份等功能。尽量做到独立实施。CA服务器通过安全连接同LDAP服务器实现安全通信。CA的功能主要有:CA初始化和CA管理生成新的CA密钥对新的证书申请进行CA签名输出CA证书申请生成自签名CA证书输出CA证书处理证书申请输入来自RA的签名请求中断申请挂起申请删除申请证书管理输出CRLLDAP,数据库更新及管理交叉认证产生证书链或者利用固定证书链实现交叉认证用户身份认证8.7.3RA服务器(RegistrationAuthorityServer)申请输出申请给CA挂起申请删除已经输出的申请对申请进行验证CRL输入CRL输出证书撤销申请证书管理输入CA证书输入新证书输出证书到LDAP,数据库其他通过E-mail通知用户证书已经发布删除临时文件RA操作员的功能主要有:获取根CA证书证书撤销列表验证证书申请用户身份证书申请及列表获得已申请的证书发布有效证书列表证书撤销请求CADirectoryServiceServer认证中心所签发的所有证书都存放在目录服务器上,当终端用户需要确认证书信息时,通过LDAP协议下载证书或者吊销证书列表,或者通过OCSP(在线证书状态协议)协议,向目录服务器查询证书的当前状况。LDAP代表轻量级目录访问协议(Lightweight
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度汽车4S店专属租赁合同:带客户数据与信息共享条款2篇
- 2024年度货物买卖合同标的和支付方式2篇
- 快印店合同范本
- 2024年度广告投放合同投放效果评估准则
- 2024年度空间技术与卫星应用合同
- 手机号码转让合同
- 2024年度版权购买合同标的图书、音乐、影视等作品描述及购买价格
- 二零二四年度城市绿化景观设计施工合同
- 质保金补充协议合同范本
- 延吉加盟合同范本
- 等数据的计算
- 一、圆锥曲线的光学性质及其应用
- 一医疗设备购置申请表
- 不稳定性心绞痛和非ST段抬高型心肌梗死
- hs编码对照表.xls
- 例谈小升初考场作文的扣题
- 精品资料(2021-2022年收藏的)烟草术语第2部分烟草制品与烟草加工中国烟草标准化
- 百年一人的双均线系统
- 中国华电集团公司KKS电厂标识系统编码
- 厦门市市容环境卫生规范化作业管理标准
- 九年级家长会PPT课件
评论
0/150
提交评论