Written on 2009年1月9日 @ 09:44 | by spirit | Tags: 网络  安全   | 浏览:

    Kerberos是Windows的主要认证机制。Kerberos协议主要用于计算机网络的身份鉴别(Authentication), 其特点是用户只需输入一次身份验证信息就可以凭借此验证获得的票据(ticket-granting ticket)访问多个服务,即SSO(Single Sign On)。由于在每个Client和Service之间建立了共享密钥,使得该协议具有相当的安全性。

  1. 认证服务器根据用户名找到用户密码
  2. 生成一个票据授权票和与客户共享的密码A
  3. 使用用户的密码将 数据A= [票据授权票+一个共享密码(密码A)] 加密用户获得数据A,输入自己的密码,使用输入的密码来解开数据A,如果密码正确,获得票据授权票和共享密码A.
  4. 用户使用共享密码A将[用户名+用户IP地址]加密生成一个验证器A.
  5. 用户需要使用服务器A的服务A,向认证服务器提出索票请求。向认证服务器发送数据B=[验证器+票据授权票+服务A名+用户+用户地址.]
  6. 认证服务器收到数据,解开票据授权票获得共享密码A,使用密码A解开验证器,认证是否是真实用户。成功以后,认证服务器生成一个服务A的票,并且生成一个与服务A共享的密码B.最后向客户发送数据C=[密码B+服务A的票]
  7. 用户获得数据B后,使用密码B生成验证器B
  8. 用户向服务器A发送数据D=[验证器B+服务A的票]
  9. 服务器A接受数据D,获得服务A的票,并且获得共享密码B,使用密码B解开验证器B
  10. 使用验证器的用户名和地址核对是否是授权用户,如果是提供服务A

kerberos原理
kerberos协议

P.S:由于验证器是不能从用的,所以在短时间内会失效,但是对于票来说是有自己的有效期的,所以用户在获得其他服务的票或者继续使用服务A的时候,都无需再次的输入口令,再次的获得票,可直接使用。由于验证器是会过期的,所以如果有人拷贝数据的话,数据会在短时间内失效,起到安全的作用。

P.S:票是用服务的密码加密的用户输入用户名,把用户名传送给认证服务器。另外,有人以对话故事的形式描述了kerberos,有兴趣可以看看


若转载请注明出处: Spirit's Home
本文地址: http://www.7788sky.cn/post/kerberos_kerberos.html

相关文章:

教育网DNS服务器地址列表  (2008-12-23 23:15:23)

推荐一个来自日本的浏览器  (2008-12-19 22:1:8)

简单NET命令检测电脑网络安全  (2008-11-15 22:18:0)

VMWare的三种网络连接模式(bridged、NAT、host-only)  (2008-11-11 23:26:24)

  1. 0 Response to “kerberos协议原理”

Post a Comment

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。