认证协议
卢先领
******@
江南大学通信与控制工程学院
1
精选课件
认证
Alice必须向Bob证明自己的身份,
Alice 和 Bob可以是人或计算机
Alice也需要Bob证明他是Bob (用的密码算法。我们所讨论的攻击都是与算法无关的。这里我们假设所使用的密码算法满足我们的安全要求,攻击者不能够仅仅从密文根据算法本身的弱点进行攻击。
15
精选课件
认证性
上图中的方案依然存在问题。这里必须考虑攻击者不仅仅能够窃听,并且能够获取并更改消息。
安全假设2:攻击者能够使用任何可用的信息对密码协议中传输的消息进行修改。并可以任意的更改消息传递路径及消息的接收者。这包括攻击者有能力产生并插入任意的新的信息。
16
精选课件
在实际通信当中,随时可能有未知身份的参与者介入,因此在设计协议的过程中考虑认证性成为必然。下图是对于上面方案的一种攻击
C
B
1. A, B
2. {KAB}KAS, {KAB}KBS
3. {KAB}KBS, A 3’. {KAB}KBS, D
S
A
17
精选课件
S
1’. A, C
2{KAC}KAS,{KAC}KCS
1. A, B
2’. {KAC}KAS,{KAC}KCS
3. {KAC}KCS, A
这里C 成功的冒充了B,与前一个攻击相比这里要求C必须是一个对于服务器S来说的一个合法用户
C
A
C
18
精选课件
安全假设3:攻击者可能是内部攻击者(合法用户)也可能是外部攻击者,也可能是既有内部攻击者也有外部攻击者。
为避免以上这种安全问题,必须将分享会话密钥KAB的用户的名字和会话密钥进行绑定。
1. A, B
2. {KAB, B}KAS, {KAB, A}KBS
3. {KAB,A}KBS,
S
A
B
19
精选课件
重放
目前的方案可以抵抗前面提到的问题。但是还有新的不足。使用过的会话密钥可能在一定时期后通过密码分析破解或者在过期后丢弃的时候处理不当。这都使得重放攻击成为可能。
安全假设4:攻击者在一定时间以后有能力得到以前运行的协议当中的会话密钥。
20
精选课件
攻击者C冒充服务器S通过重放旧的消息完成了这次协议,使得A和B使用了旧的会话密钥,而这个旧的会话密钥可能是已经被破译了的。
S
B
A
1. A, B
2. {K’AB, B}KAS, {K’AB, A}KBS
3. {K’AB,A}KBS,
21
精选课件
目前有许多方法可以抵抗重放攻击。这里我们使用挑战-响应方法。A使用一个随机值NA(nonce)
1. A, B,NA
2. {KAB, B, NA,{KAB, A}KBS } KAS
3. {KAB,A}KBS,
4. {NB}KAB
5. {NB-1}KAB
S
A
B
22
精选课件
通过NA的引入,A可以确定由S发送的消息的新鲜性。为了让B同样可以确定消息的新鲜性,在上图中添加了两步AB之间的一个握手协议使得B可以验证消息的新鲜性。但是这种改进并没有达到预想的效果。
3. {K’AB, A}KBS
4. {NB}K’AB
5. {NB-1}K’AB
A
C
B
23
精选课件
为了避免上述的弱点,进一步改进协议的传输方式如下:
B
A
S
2. A, B, NA, NB
3. {KAB, B, NA } KAS{KAB, A, NB}KBS
1. B, NB
4. {KAB, A, NB}KAB
24
精选课件
相比之下,同样可以使得A,B都能验证消息的新鲜性,但是传输的消息更少。但是这里
《认证协议》 来自淘豆网m.daumloan.com转载请标明出处.