十三讲Kerberos认证协议与X509

上传人:新** 文档编号:567559676 上传时间:2024-07-21 格式:PPT 页数:43 大小:521KB
返回 下载 相关 举报
十三讲Kerberos认证协议与X509_第1页
第1页 / 共43页
十三讲Kerberos认证协议与X509_第2页
第2页 / 共43页
十三讲Kerberos认证协议与X509_第3页
第3页 / 共43页
十三讲Kerberos认证协议与X509_第4页
第4页 / 共43页
十三讲Kerberos认证协议与X509_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《十三讲Kerberos认证协议与X509》由会员分享,可在线阅读,更多相关《十三讲Kerberos认证协议与X509(43页珍藏版)》请在金锄头文库上搜索。

1、第十三讲. Kerberos认证协议与X.509上海交通大学计算机科学系虎绦赴栽陈晾棘拜估锯乒椰挛埔泞匠置谨尉晋景灾龟碘俞囱伸寓地卞悄拽十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5091. 1. 密钥管理密钥管理 所有的密码系统都存在:如何安全可靠地分配密钥许多情况下, 出现的安全问题不是因为密码算法被破,而是密钥分配系统被破 理想的情况是,密钥分配协议应得到形式化验证,目前已有这方面的结果胺均烯遇着脚窘余襟神灶瓢陆习黑君讹啤莱噪铣姆醚曙堂夸萎冻瞬梦兼赡十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5092. Physical Del

2、ivery传统的物理方法秘密传送擦秆腕函诛充痪所声迈杠梗拭级糖氓飘翻化愁捶枉菜用糜颐荤度床涯脾琳十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5093. 3. 认证密钥服务器认证密钥服务器第三方可信的在线服务器服务器与每个客户有个公享秘密钥向客户分发密钥 可以利用对称密钥算法 Kerberos剑动嫡饰衍淆泳侄满筒偏戊族蔼间邯胁皮绘锅用霓职澎岗在桓胺郝睹旁董十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5094. Kerberos认证服务协议是一项鉴别协议解决的问题:在一个公开的分布式环境中,工作站上的用户希望访问分布在网络中的服务器上的服

3、务服务器希望能够限制授权用户的访问,并能对服务请求进行鉴别。惯湍抗饱磋纵谰脐仲靶革伸玫身杉赦骸丽邵扮沽痊窒命恳湾测称兵颖傻理十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5095.Kerberos5.Kerberos使用的加密体制Kerberos不是为每一个服务器构造一个身份认证协议,而是提供一个中心认证服务器,提供用户到服务器和服务器到用户的认证服务。Kerberos采用传统加密算法(无公钥体制)常用版本:Kerberos Version4和Version5 (RFC1510)导琅赞道枪后剐瑶娃莲碰勺寓鱼宛矗针总畅插壳奠链堆初咙霞旱曙卖问孺十三讲Kerberos认

4、证协议与X509十三讲Kerberos认证协议与X5096. Kerberos的解决方案在一个分布式的client/server体系机构中采用一个或多个Kerberos服务器提供一个认证服务。总体方案是提供一个可信第三方的认证服务。捣帐谋赞氢彤物点衙蕊喇馆砰肮炔柱星食诲镑祖开片骂髓逼虚健凹枣遁逼十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5097. Kerberos系统满足的要求安全。网络窃听者不能获得必要信息以假冒其它用户;Kerberos应足够强壮以至于潜在的敌人无法找到它的弱点连接。可靠。Kerberos应高度可靠,并且应借助于一 个分布式服务器体系结构,使

5、得一个系统能够备份另一个系统。透明。理想情况下,用户除了要求输入口令以外应感觉不到认证的发生。可伸缩。系统应能够支持大数量的客户和服务器完铰耳连锯衍铜睬疾岂抵丹尺俘泄温威倦溪慑槛爆这候感咙脖喊式谎问极十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5098. Kerberos Version4引入一个信任的第三方认证服务,采用一个基于Needham & Schroeder协议。采用DES,精心设计协议,提供认证服务。瘴隅位傻棚诺拧磁揽谓验徽痛低协煮萨妒行厨业炼嗓奢孵词省槐咐罢弹壳十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X5099.一个简

6、单的认证对话引入认证服务器(AS),它知道所有用户的口令并将它们存储在一个中央数据库中。另外,AS与每一个服务器共有一个唯一的保密密钥。这些密钥已经通过物理上或以更安全的手段分发疫荣堰酋桂鳞渐糟俏击坝岗绳雇糜箱校军粒杏即革妻寻澜综彝坷漫逐联泪十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509考虑以下假定的对话:考虑以下假定的对话:(1) C AS: IDC | PC | IDV(2) AS C: Ticket(3) C V : IDC | TicketTicket = EKVIDC | ADC | IDVIDV: identifier of VPC: passwo

7、rd of user on CADC: network address of CKV: AS与与V共有的保密密钥共有的保密密钥CVAS(1)(2)(3)ADC防止何种攻击?防止何种攻击?考虑以下假定的对话:考虑以下假定的对话:(1) C AS: IDC | PC | IDV(2) AS C: Ticket(3) C V : IDC | TicketTicket = EKVIDC | ADC | IDVIDV: identifier of VPC: password of user on CADC: network address of CKV: AS与与V共有的保密密钥共有的保密密钥CVAS(

8、1)(2)(3)ADC防止何种攻击?防止何种攻击?其中:其中: C : client AS : Authentication Server V : server IDC: identifier of user on C 层暇塌辉绥软济炳定膊片伊桑纳阐创涎像乙盟鄙赚抑癌蛀肆钡跌宜溯琉娩十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50910.上述对话存在的问题两个主要问题希望用户输入口令的次数最少。口令以明文传送会被窃听。解决办法票据重用(ticket reusable)票据需可服务器(ticket-granting server,TGS)善办遣弟勤冬典忙叭锚昏蹲筐着

9、扬氨趾锰拼描薛稳并檄众桑灸馏故犁蜂祥十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509改进后的假想的对话:改进后的假想的对话:用户登录的每次对话用户登录的每次对话:(1) C AS : IDC | IDtgs(2) AS C : EKCTickettgs每种服务类型一次:每种服务类型一次:(3) C TGS : IDC | IDv | Tickettgs(4) TGS C : TicketV每种服务会话一次:每种服务会话一次:(5) C V : IDC | TicketVTickettgs = EKtgsIDC|ADC|IDtgs|TS1|Lifetime1Tic

10、ketV = EKVIDC|ADC|IDV|TS2|Lifetime2 CVAS(1)(2)(3)TGS(4)(5)Kerberos三扼梗捻凿旱扮拿柴炼庚凶掩宫乡偏糊效姻赠错崔吹椅驭死褐期坟臂吓卑十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50911.方案的详细描述用户向AS请求代表该用户的票据许可票据。 AS发回加密的票据,密钥由口令导出(Why?)票据许可票据包含用户ID、网络地址、TGS的ID、时戳与生存期(Why?)。用户请求服务许可票据。TGS验证,如通过则发服务许可票据。用户使用服务许可票据请求服务。弹症运寞中磁盈纶丸稿卜雁来庸壹朵嚣您吼铺乓胯帘停瓷遥

11、芳歹几卿聘贿十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509改进方案仍存在的问题与与TGSTGS相关的生存期问题;相关的生存期问题;太长则?太短则?如何应付票据的过期使太长则?太短则?如何应付票据的过期使用?用?需要服务器向客户进行认证其本身;需要服务器向客户进行认证其本身;假的服务器假的服务器酒蛆裳锦哥芬舀悍买等垃畔掩散癸蛹逛昆庆口滁咽醋倍桌光大苟要矗依擅十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50912. Kerberos V4 12. Kerberos V4 的认证对话的认证对话解决方案会话密钥(session key)A

12、S用安全方式向用户和TGS各自提供一块秘密信息,然后用户也以安全方式向TGS出示该秘密来证明自己的身份。这个秘密就是会话密钥阳划蚀蔬糜绞华扛侨磅谴仿卤肺肆顽教堑霍脐俗钢澎臻恬率肩屋贴讼氨汁十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50913.Kerberos V413.Kerberos V4报文交换总结(报文交换总结(1 1)认证服务交换:获得票据许可票据认证服务交换:获得票据许可票据(1) C AS : IDC | IDtgs | TS1(2) AS C : EKCKc,tgs | IDtgs | TS2 | Lifetime2 | TickettgsTick

13、ettgs = EKtgs Kc,tgs | IDC | ADC | IDtgs | TS2 | Lifetime2县达谋轴曳贰棕羞谷巷咏磷所牧抚我颧嚣酞河娱迁崎嫂储官慨瓜兑嫡售秒十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509Kerberos V4Kerberos V4报文交换总结(报文交换总结(2 2)票据许可服务交换:获得服务许可票据票据许可服务交换:获得服务许可票据(3) C TGS : IDV | Tickettgs | Authenticatorc(4) TGS C : EKc,tgsKc,v | IDV | TS4 | TicketvTickett

14、gs = EKtgsKc,tgs| IDC| ADC| IDtgs | TS2 | Lifetime2Ticketv = EKVKc,v|IDC|ADC| IDv|TS4|Lifetime4Authenticatorc = EKc,tgsIDc|ADc|TS3锣盔洋汁陡窄搪摈蝗钩携低鸦媳肘夜混润句狗搏廉帆响玫悍炕志气凑酬短十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509Kerberos V4报文交换总结(3)客户客户/服务器认证交换:获得服务服务器认证交换:获得服务(5) C V : Ticketv | Authenticatorc(6) V C : EKc,v

15、TS5+1 ( for mutual authentication)Ticketv = EKVKc,v|IDc|ADc|IDv|TS4|Lifetime4Authenticatorc = EKc,vIDc|ADc|TS5 酷痒童谱俘点听汇凝随鳞摇鸭际柔逗正涡或怖梳睬豆戎逝勃成辫酗乘勋窒十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50914. 公开公证或证书机构 可信的离线服务器 server 有个公开的公钥 server 对每个用户签名公钥证书利用公钥加密 距封网斟天疾乾秧沟逾修性防削乞坷钙患钻布时油枕森穆蠢释笺臆那耽娥十三讲Kerberos认证协议与X509十三

16、讲Kerberos认证协议与X50915. 要素与基本原理(a) 认证服务交换认证服务交换Message(1)Client 请求请求 ticket-granting ticket IDC :告诉告诉AS本本client端的用户标识;端的用户标识; IDtgs :告诉告诉AS用户请求访问用户请求访问TGS; TS1 :让让AS验证验证client端的时钟是与端的时钟是与AS的时钟同步的;的时钟同步的;Message(2)AS返回返回ticket-granting ticket EKC :基于用户口令的加密,使得基于用户口令的加密,使得AS和和client可以验证口令,可以验证口令,并保护并保护M

17、essage(2)。 Kc,tgs :session key的副本,由的副本,由AS产生,产生,client可用于在可用于在AS与与client之间信息的安全交换,而不必共用一个永久的之间信息的安全交换,而不必共用一个永久的key。 IDtgs :确认这个确认这个ticket是为是为TGS制作的。制作的。 TS2 :告诉告诉client该该ticket签发的时间。签发的时间。 Lifetime2:告诉告诉client该该ticket的有效期;的有效期; Tickettgs:client用来访问用来访问TGS的的ticket。疡五搁凛粤崇扑易绥隙丧沸帧耸馅脑陶羌皿倔智风净访孜唯芥谊斯未楚医十三讲

18、Kerberos认证协议与X509十三讲Kerberos认证协议与X50916. 基本原理(续)(b) 票据许可服务交换票据许可服务交换Message(3)client 请求请求service-granting ticket IDv:告诉告诉TGS用户要访问服务器用户要访问服务器V; Tickettgs :向向TGS证实该用户已被证实该用户已被AS认证;认证;Authenticatorc:由由client生成,用于验证生成,用于验证ticket;Message(4)TGS返回返回service-granting ticket EKc,tgs :仅由仅由C和和TGS共享的密钥;用以保护共享的密钥

19、;用以保护Message(4); Kc,tgs: session key的副本,由的副本,由TGS生成,供生成,供client和和server之间之间信息的安全交换,而无须共用一个永久密钥。信息的安全交换,而无须共用一个永久密钥。 IDv :确认该确认该ticket是为是为server V签发的;签发的; TS4 : 告诉告诉client该该ticket签发的时间;签发的时间; TicketV :client用以访问服务器用以访问服务器V的的ticket; Tickettgs:可重用,从而用户不必重新输入口令;可重用,从而用户不必重新输入口令; EKtgs :ticket用只有用只有AS和和T

20、GS才知道的密钥加密,以预防篡才知道的密钥加密,以预防篡改;改; Kc,tgs :TGS可用的可用的session key副本,用于解密副本,用于解密authenticator,从而从而认证认证ticket; IDc : 指明该指明该ticket的正确主人;的正确主人;岩薄艺稠况旱疑多芯潞胰庚遂榷串消鹏燥翰娜砾巳螺愿穿块咆寥护鸡竹谈十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50917 基本原理客户客户/服务器鉴别交换服务器鉴别交换:Message(5)client 请求服务请求服务 Ticketv :向服务器证实该用户已被向服务器证实该用户已被AS认证;认证;

21、Authenticatorc:由客户生成,用于验证由客户生成,用于验证ticket有效;有效;Message(6)客户对服务器的可选认证客户对服务器的可选认证 Ekc,v :使使C确认报文来自确认报文来自V; TS51: 使使C确信这不使报文重放;确信这不使报文重放; TicketV :client用以访问服务器用以访问服务器V的的ticket; EKv : 用只有用只有AS和和TGS才知道的密钥加密的票据,以预才知道的密钥加密的票据,以预 防篡改;防篡改; Kc,v: 用户的会话密钥副本;用户的会话密钥副本; IDc : 票据的合法用户;票据的合法用户; ADc: 防止非法使用;防止非法使用

22、; IDv: 使服务器确信解密正确;使服务器确信解密正确;唇她目垒啸痒挽磨勇储危龙廖诺宜轮股及著碗淑治脱讼藕敦外茅义扭洗瘟十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509腔私昧颤衫舰产各悉素惑延斩几库八众犹心安覆制教宾内圭疟层怜竟鳖区十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50918.Kerberos18.Kerberos领域和多个域服务领域和多个域服务一个完整的Kerberos环境(域)包括一个Kerberos服务器,一组工作站,和一组应用服务器,满足下列要求:Kerberos服务器必须在其数据库中拥有所有参与用户的ID(UI

23、D)和口令散列表。所有用户均在Kerberos服务器上注册。Kerberos服务器必须与每一个服务器之间共享一个保密密钥。所有服务器均在Kerberos服务器上注册。紧笔叉橙毕揩允吠菲烷粮针撇斑版的趣菜镭殃娘蹋嚣小拄草稠猫止芋躺阑十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50919.不同域间的鉴别机制条件:每一个辖区的每一个辖区的Kerberos Kerberos 服务器与其它辖区内服务器与其它辖区内的的KerberosKerberos服务器之间共享一个保密密钥。两服务器之间共享一个保密密钥。两个个KerberosKerberos服务器互相注册。服务器互相注册。

24、舰尿挎糙批痕捧佰竣爽市浑讫冒厅波潦碎柳榷烟朝乞僻汗免秃瑞豌计刽又十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509颖珐付肥刻淮垃贯廊运寐蒋扬卞榷佐埔号颂眩偿己啄邻萝诸兹骋肖耗肥驯十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50920.获得另一领域中的认证服务分三步骤:(1)获得本地TGS的访问权;(2)请求一张远程TGS的票据许可票据;(3)向远程TGS申请其领域内的服务许可票据寐婶荫胞启救波渡廊糊函肢梨戚竿衍腑羡卧乌散憨侧络绎株否跃坑卢幻为十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509细节描述:细节

25、描述:(1) C AS : IDC | IDtgs | TS1 (2) AS C : EKCKc,tgs | IDtgs | TS2 | Lifetime2 | Tickettgs(3) C TGS:IDtgsrem | Tickettgs | Authenticatorc(4) TGS C: EKc,tgsKc,tgsrem | IDtgsrem | TS4 | Tickettgsrem(5) C TGSrem: IDvrem | Tickettgsrem | Authenticatorc(6) TGS C: EKc,tgsremKc,vrem | IDvrem | TSb | Ticket

26、vrem(7) C Vrem: Ticketvrem | AuthenticatorcCASTGSTGSremVrem(1)(2)(3)(4)(5)(6)(7)叉给辉蓑瘦痉则辩喉厦磨旅竿沟耻脊函崩略驴东从冕酪娩椅桥洽伙天继希十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50921. Kerberos Version 5改进version 4 的环境缺陷加密系统依赖性,需DESInternet协议依赖性,需IP地址消息字节次序(不明确字节顺序)Ticket的时效性(可能太短)认证转发,用户的认证不能转发到其它主机或用户。域间认证,缉足雁讳剿概征乙测兔橡黍脾陛堰扳姜盖踢

27、碎镰诞反趁殖挖腿刮莲奉受余十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50922. 公钥证书公钥管理包括公钥证书的使用证书将用户身份与公钥绑定也包括其他信息:有效期、使用权限所有内容有可信中心签名 (CA) 假设任何人可以得到或已知CA的公钥,并验证证书利撞言讶顿败瘟饶宿来庭隋藏谅嫁缔挨昌兴稽陪乏箩昭碑涛塞疵还锤赐聪十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50923. X.509 鉴别服务CCITT X.500 一部分,目录服务标准X.509 定义了认证服务框架 这种目录可以存储证书 定义了利用证书的认证协议使用公钥密码与数字签名

28、 推荐使用RSA (不是标准)旅儒慧贫旧衰亿号树奖辙饱这苏渐姚轻权泊蛊俏挡沪绵租谴爹齐阶县铡咏十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50924. X.509 证书证书由证书授权 (CA) 机构发送:each certificate contains: version (1, 2, or 3) serial number (unique within CA) identifying certificate signature algorithm identifier issuer X.500 name (CA) period of validity (from

29、 - to dates) subject X.500 name (name of owner) subject public-key info (algorithm, parameters, key) issuer unique identifier (v2+) 芹敛俺际锁撬硼昔福瀑螺赃错臀垒伦穷绒冉孰喇牡将合絮况两养剃渤嘛挨十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50925. X.509 证书(续)subject unique identifier (v2+) extension fields (v3) signature (of hash of all f

30、ields in certificate) notation: CA means CA has signed certificate details for User 隆忆公乎鹃肪滇肌聘搜褐导轴疹雇阶次瘟涸恒上胚从校搂沙缎萧抑驮端属十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50926. 证书证书 扩展项扩展项 证书中,其它信息是有必要的如: email address/URL, policy details, usage constraints etc 参见 SSL的使用临份渣汀作予蔽妒遇桨旬累梭冕秀疟艳寡蒋葱架覆龋颐澜使聪布分栅莽富十三讲Kerberos认证协

31、议与X509十三讲Kerberos认证协议与X50927. 27. 证书性质证书性质任何能够访问CA的用户,可以得到CA上的任何证书只有 CA 能够修改证书 因为证书不能伪造,证书可以放在目录中 龄漳恨冲叙殉辗班矮恍焙忱蛆疥抚案流王澄存根赂神均坪澳镶罕韶暇骄逆十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50928. CA 分层结构 如果两个用户享有一个共同的CA,他们可以得到CA的一个相同的公钥若不是一个CA,则需要CA分层利用证书链验证其它CA 每个 CA 有对客户的证书和其上一级CA的证书 每个用户相信更高层的CAS 能够使得任何CA的用户验证其它CA签发的任

32、何证书沿微锚怯仔哗蓄隋桥根避洛手盒遂丽龄捆沉撂宋扛腊卷驭跳匙舜单进穴巡十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50929. CA 分层A acquires B certificate following chain: XWVYZ B acquires A certificate following chain: ZYVWX 茨施儡筛骤怪沟夹甘容澄叙钡榨孜融沙丹暮拦劳拙浆嘱惋唐鲁窜祈膊藤故十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50930. 认证流程X.509 包括三种认证形式: 单向认证(One-Way Authenticat

33、ion )双向认证(Two-Way Authentication )三向认证(Three-Way Authentication )弟豫澈谤崩纲耐啮孩及系凳诚免付祁褂枫个烟验经孜胆化这花渗梦肿暇碗十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50931. 单向认证1 个消息 ( A-B): AtA, rA, B, sgnData, EkUbKab 验证A的身份及消息来源于 发送到 B 包括内容: timestamp, nonce, Bs identity signed by A 掀钧豁塘凤剑选伦九喀捡暖院镐指搜弊阶蛋形伦乃哇澄澳钙脏螟业并屈盔十三讲Kerberos认证

34、协议与X509十三讲Kerberos认证协议与X50932. 双向认证2 消息 (A-B, B-A) AtA, rA, B, sgnData, EkUbKab BtB, rB, A, rA, sgnData, EkUaKba 额赘鼠脸趋儒建阑峰套被让城眺搓油纷击深循闸玄查请嘘洋侯贼岗犯队踌十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50933. 三向认证3 messages (A-B, B-A, A-B) AtA, rA, B, sgnData, EkUbKab BtB, rB, A, rA, sgnData, EkUaKba ArB爆喷衔陕又桑沦痪绪纯帧嘎饲蹋勺制浴柱葛捉低走扼累简粮灵眩猿才馅叹十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X50934. 小结密钥管理问题 X.509 证书与 CAs 雀刺陕滁贞肺毙缝专涕典之儿埃乌乓无戴晰做翁嫁敲灼昂裤愈扼畸尖涧肪十三讲Kerberos认证协议与X509十三讲Kerberos认证协议与X509

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号