当用户登录到加入域的计算机,或者客户端向同一域内的服务发送请求时,在这两种情况下,Kerberos文档都说:
KDC解密预认证数据并评估内部的时间戳。如果时间戳通过测试,则可以确保KDC使用用户密钥加密预认证数据,从而验证用户是否是真实的。
该服务使用会话密钥解密用户的身份验证器,然后评估其中的时间戳。如果验证者通过测试,则服务在客户端的请求中查找相互验证标志。
有人可以向我解释KDC和服务如何“评估”时间戳?评估时间戳与验证用户身份有何关系?
P.S:我引用How the Kerberos Version 5 Authentication Protocol Works
答案 0 :(得分:1)
在预身份验证消息中,服务器接收使用当前会话密钥(或从用户密码派生的密钥)加密的当前时间戳。
因此服务器尝试使用会话密钥解密此消息,如果结果是在给定时间窗口内的时间戳,则服务器可以确定加密是由知道正确密钥的人完成的:当使用错误的密钥完成加密时,解密的时间戳通常会偏离当前时间。
答案 1 :(得分:0)
数据必须在给定的时间范围内到达,否则它将被丢弃。寻找“时钟偏差太大”。