1、1使用共享密钥密码的使用共享密钥密码的认证与密钥建立协议认证与密钥建立协议2使用对称密码的认证Alice,KABBob,KAB“Im Alice”E(R,KAB)q 对Bob来说,这是验证Alice的一种安全方法q Alice不能验证Bobq 我们能否实现相互认证?R3相互认证?AliceBob“Im Alice”,RE(R,KAB)E(R,KAB)n有什么问题?n“Alice”可以是 Trudy(或其他任何人)!4相互认证n既然我们有一个安全的单向认证协议 n最明显的事情是使用两次协议 n一次用于 Bob 认证 Alicen一次用于 Alice认证 Bob5相互认证AliceBob“Im A
2、lice”,RARB,E(RA,KAB)E(RB,KAB)n提供了相互认证n还是没有呢?6对相互认证的攻击Bob1.“Im Alice”,RA2.RB,E(RA,KAB)TrudyBob3.“Im Alice”,RB4.RC,E(RB,KAB)Trudy5.E(RB,KAB)7相互认证n我们的单向认证协议是不安全的n协议是微妙的 n在“显而易见”的事情可能是不安全的 n另外,如果假设或环境的变化,协议可能无法工作 n这是一个常见的安全故障n例如,互联网协议 8使用对称密码的认证AliceBob“Im Alice”,RARB,E(“Bob”,RA,KAB)E(“Alice”,RB,KAB)n做这
3、些“微不足道”的变化会有帮助吗?n是的!9引言n讨论基于对称密码的双方密钥建立与认证协议n分类准则n预先有密钥可用:参与者之间共享,参与者与服务器共享(在线),离线服务器-证书(公钥)n会话密钥生成的方法:密钥传输,协商,混合n记号nA,B:期望共享会话密钥的两个用户nS:可信服务器nMK:使用密钥K加密信息M,提供机密性与完整性n M K:使用密钥K加密信息M,提供机密性nMK:使用密钥K对信息M单向变换,提供完整性10实体认证协议1.AB:NA2.B A:NB,u(KAB,NA,)3.AB:NA,u(KAB,NB,)Bird等人的协议1.IAB:NI2.B IA:NB,u(KAB,NI,)
4、1.IBA:NB(I为了回答B,开始一个新会话,询问A)2.A IB:NA,u(KAB,NB,)3.IA B:u(KAB,NB,)(I假冒A与B建立会话)u,v 相同时,存在Oracle攻击111.AB:NA2.B A:NB,B,A,NA,NBKAB3.AB:A,NBKABBellare-Rogaway MAP1协议1.A IB:NA(I假冒B,开始一个MAP1会话)1.IBA:NA(I为了回答A,开始一个EVE1会话,询问A)2.A IB:NA,B,A,NA,NAKAB2.IBA:NA,B,A,NA,NAKAB(I假冒B完成MAP1会话)3.A IB:A,NAKAB选择协议攻击,A被I用作O
5、racle攻击AAlves-Foss设计的EVE1协议1.AB:NA2.B A:NB,A,B,NA,NBKAB3.AB:A,NBKAB12AB:TA,BKABISO/IEC9798-2协议1次传输单向认证(时间戳)2次传输单向认证(一次性随机数)1.B A:NB2.AB:NB,BKAB3次传输双向认证(一次性随机数)2次传输双向认证(时间戳)AB:TA,BKABBA:TB,AKAB1.B A:NB2.AB:NA,NB,BKAB3.BA:NB,NAKAB131.AB:A2.BA:NB3.AB:NBKAS4.BS:A,NBKASKBS5.SB:NBKBSWoo-Lam认证协议BAS1.A2.NB3
6、.NBKAS4.A,NBKASKBS5.NBKBS单向认证A141.IAB:A1.IB:I2.BIA:NB2.BI:NB3.IAB:R3.IB:NBKIS 4.BS:A,RKBS4.BS:I,NBKIS KBS5.SB:NBKBSAbadi的攻击BI(IA)S1.12.23.34.45.NBKBS I开启2个会话,其中一个假冒A,最后IA-B会话成功,I-B会话失败15无服务器的密钥建立额外的记号额外的记号KAB:A与B初始时共享的长期密钥,反复使用KAB:利用长期密钥建立的新的会话密钥,当前会话中使用161.AB:A,NA2.B A:AUTH,MASKKAB3.AB:NA,KAB,AKABJ
7、anson-Tsudik 2PKDP协议2.B生成新会话密钥KAB,然后计算:AUTH=NA,KAB,BKAB(单向函数)MASK=AUTHKAB(加密)3.A利用AUTH计算 KAB,再利用KAB验证AUTH的正确性171.AB:NA2.B A:NBKAB=f(NA,NB,KAB)Boyd两次传输协议18AB:TA,BKABKAB=f(KAB,TA)ISO/IEC11770-2无服务器的密钥建立协议机制2AB:KAB KAB机制3AB:TA,B,KAB KAB1.B A:NB2.AB:NB,B,KAB KAB机制41.AB:TA,B,FAB KAB2.B A:TB,A,FBA KABKAB=
8、f(FAB,FBA)密钥材料F机制51.B A:NB2.AB:NA,NB,B,FAB KAB2.B A:NB,NA,FBA KABKAB=f(FAB,FBA)机制6 KAB提供机密性与完整性机制119基于服务器的密钥建立额外的记号额外的记号A,B:期望建立会话密钥的两个用户S:可信服务器KAS,KBS:A与S,B与S初始时共享的长期密钥KAB:会话密钥201.A S:A,B,NA2.S A:NA,B,KAB,KAB,AKBSKAS3.A B:KAB,AKBS4.B A:NBKAB5.A B:NB-1 KABNeedham-Schroeder 协议ABS12345211.A S:A,B2.S A
9、:B,KAB,TS,A,KAB,TSKBSKAS3.A B:A,KAB,TSKBSDenning-Sacco协议Denning-Sacco攻击:在Needham-Schroeder 协议消息3中使用破解的会话密钥,假冒A.ABS123保证会话密钥的新鲜性,会话密钥与时间戳绑定221.A B:A,NA2.B S:A,NA,B,NB3.S B:KAB,A,NBKBS,KAB,B,NAKAS4.B A:KAB,B,NAKASBauer-Berson-Feiertag协议Bauer攻击:在Needham-Schroeder 协议中,如果A与S使用长期密钥泄漏了,即使再更换,也可假冒A(同Denning
10、-Sacco攻击).ABS保证会话密钥的新鲜性,会话密钥与nonce绑定23使用多服务器的密钥建立好处好处n 当一个或多个服务器不可用时,用户仍可以建立会话密钥n 当一个或多个服务器不可信时,用户仍可以建立好的会话密钥24KA,i,KB,i:A,B与服务器Si共享的长期密钥秘密共享:A持有x,x可以从x1,x2,xn中的t个恢复;B持有y,y可以从y1,y2,yn中的t个恢复ABSi12345会话密钥为KAB=h(x,y)cc(x)=(h(x1),h(x2),h(xn)Gong的多服务器协议:服务器至少t个可信,A与B选择密钥材料1.A B:A,B,NA,A,B,xi,cc(x)KA,i2.B Si:A,B,NA,NB,A,B,xi,cc(x)KA,i,B,A,yi,cc(y)KB,i3.SiB:B,NA,yi,cci(y)KA,i,A,NB,xi,cci(x)KB,i4.B A:B,NA,y1,cc1(y)KA,1,B,NA,yn,ccn(y)KA,n,NAKAB,NB5.A B:NBKAB
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。