【问题标题】:Kerberos Timestamp EvaluationKerberos 时间戳评估
【发布时间】:2013-09-05 08:31:09
【问题描述】:

当用户登录到加入域的计算机时,或者当客户端向同一域中的服务发送请求时,在这两种情况下,Kerberos 文档都说:

KDC 解密预认证数据并评估内部时间戳。如果时间戳通过测试,KDC 可以确信预认证数据是用用户密钥加密的,从而验证用户是真实的。

服务使用会话密钥来解密用户的身份验证器,然后评估内部的时间戳。如果验证器通过了测试,服务会在客户端的请求中查找相互验证标志。

有人可以向我解释一下 KDC 和服务如何“评估”时间戳吗?以及评估时间戳与验证用户身份有何关系?

P.S:我引用How the Kerberos Version 5 Authentication Protocol Works

【问题讨论】:

    标签: security kerberos


    【解决方案1】:

    在预认证消息中,服务器接收到使用当前会话密钥(或从用户密码派生的密钥)加密的当前时间戳。

    因此服务器尝试使用会话密钥解密此消息,如果结果是给定时间窗口内的时间戳,则服务器可以确定加密已经由知道正确密钥的人完成:当使用错误的密钥完成加密时,解密的时间戳通常会与当前时间相差甚远。

    【讨论】:

    • 对不起;这是错误的。这个解释说,KDC 通过时间戳看起来是否正确(即表示最近的时间)来判断时间戳是否使用正确的密钥(从用户的密码派生)加密。也就是说,它表示无论使用什么密钥加密消息,它都会成功解密到某个时间戳,但如果密钥错误,时间戳通常会严重关闭。这根本不是发生的事情。所有 Kerberos 加密消息都内置了完整性检查;如果密钥错误,解密失败,句号。时间戳有不同的用途。
    【解决方案2】:

    数据必须在给定的时间范围内到达,否则将被丢弃。寻找“时钟偏差太大”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多