2014-03-26 30 views
0

我用wikipedia article其它来源中理解这个协议的工作,有两个问题:两个问题上李约瑟,施罗德(Kerberos的)对称的协议

1)爱丽丝让她初步查询到服务器后,她作为响应的一部分收到:

(新会话密钥+ Alice's ID) - 用Bob的安全密钥加密。

由于这个特定协议中的安全密钥是对称的,爱丽丝知道这个“数据包”的全部内容,她现在不能去找出鲍勃的安全密钥吗?

2)维基文章解释本协议的致命弱点是重放攻击“如果一个攻击者使用一个较旧的,受损价值”为会话密钥,他们可以重新包装为:

(中会话密钥+ Alice's ID) - 用Bob的安全密钥加密

并使用它与Bob发起会话。

也许我只是错过了一些东西,但仅仅因为攻击者拥有会话密钥并不意味着他们有Bob的安全密钥。他们如何生成上述数据包?

+0

此问题似乎是无关紧要的,因为它应在security.stackexchange.com或crypto.stackexchange.com上询问。 – jww

回答

0

攻击者(M)不需要使用K_B重新打包任何东西,它只记录从A到B的所有先前通信。稍后,它将{K_AB,A} K_B重新发送给B.没有现成B不知道该会话密钥不新鲜。它开始与A的新会话。由于A不期望从B发出任何分组,所以在此会话中来自B的所有分组都被丢弃。但是M一直回复B,认为A正在回复。

请注意,此会话中的其余通信不需要K_B,而只需要K_AB。新的随机数B用K_AB加密(M已经知道并且可以用来解密新的随机数)。 M可以解密从A到B的旧信息,更新随机数值(根据此会话的新随机数)并使用K_AB重新包装。这样M可以使B重做它在之前的会话中所做的动作顺序。

这有什么用?比如说,B是银行,A在前一个会话中使用B发送了10美元到M的数据。M可以稍后重复以前的通信以重复从A到M的转移。