知识点讲解
 
       Kerberos认证技术
知识路径: > 认证技术原理与应用 > 认证技术方法 > Kerberos认证技术 > 
被考次数:1次
被考频率: 低频率
总体答错率: 53%
知识难度系数:
考试要求: 熟悉     
相关知识点:11个
        Kerberos是一个网络认证协议,其目标是使用密钥加密为客户端/服务器应用程序提供强身份认证。其技术原理是利用对称密码技术,使用可信的第三方来为应用服务器提供认证服务,并在用户和服务器之间建立安全信道。
        Kerberos由美国麻省理工学院(MIT)研制实现,已经历了五个版本的发展。一个Kerberos系统涉及四个基本实体:
        (1)Kerberos客户机,用户用来访问服务器设备;
        (2)AS(Authentication Server,认证服务器),识别用户身份并提供TGS会话密钥;
        (3)TGS(Ticket Granting Server,票据发放服务器),为申请服务的用户授予票据(Ticket);
        (4)应用服务器(Application Server),为用户提供服务的设备或系统。
        其中,通常将AS和TGS统称为KDC(Key Distribution Center)。票据(Ticket)是用于安全的传递用户身份所需要的信息的集合,主要包括客户方Principal、目的服务方Principal、客户方IP地址、时间戳(分发该Ticket的时间)、Ticket的生存期、以及会话密钥等内容。Kerberos V5认证协议主要由六步构成,如下图所示。
        
        Kerberos工作流程示意图
        第一步,如下图所示,Kerberos客户向认证服务器AS申请票据TGT。
        
        Kerberos客户向AS申请票据TGT示意图
        第二步,如下图所示,当认证服务器AS收到Kerberos客户发来的消息后,AS在认证数据库检查确认Kerberos客户,产生一个会话密钥,同时使用Kerberos客户的秘密密钥对会话密钥加密,然后生成一个票据TGT,其中TGT由Kerberos客户的实体名、地址、时间戳、限制时间、会话密钥组成。AS生成TGT完毕后,把TGT发送给Kerberos客户。
        
        认证服务器AS响应Kerberos客户的TGT请求示意图
        第三步,如下图所示,Kerberos客户收到AS发来的TGT后,使用自己的秘密密钥解密得到会话密钥,然后利用解密的信息重新构造认证请求单,向TGS发送请求,申请访问应用服务器AP所需要的票据(Ticket)。
        
        Kerberos客户认证请求票据示意图
        第四步,如下图所示,TGS使用其秘密密钥对TGT进行解密,同时,使用TGT中的会话密钥对Kerberos客户的请求认证单信息进行解密,并将解密后的认证单信息与TGT中信息进行比较。然后,TGS生成新的会话密钥以供Kerberos客户和应用服务器使用,并利用各自的秘密密钥加密会话密钥。最后,生成一个票据,其由Kerberos客户的实体名、地址、时间戳、限制时间、会话密钥组成。TGS生成TGT完毕后,把TGT发送给Kerberos客户。
        
        票据服务器TGS响应Kerberos客户的请求示意图
        第五步,如下图所示,Kerberos客户收到TGS的响应后,获得与应用服务器共享的会话密钥。与此同时,Kerberos客户生成一个新的用于访问应用服务器的认证单,并用与应用服务器共享的会话密钥加密,然后与TGS发送来的票据一并传送到应用服务器。
        
        Kerberos客户请求访问应用服务器AP示意图
        Kerberos协议中要求用户经过AS和TGS两重认证的优点主要有两点。
        (1)可以显著减少用户密钥的密文的暴露次数,这样就可以减少攻击者对有关用户密钥的密文的积累。
        (2)Kerberos认证过程具有单点登录(Single Sign On,SSO)的优点,只要用户拿到了TGT并且该TGT没有过期,那么用户就可以使用该TGT通过TGS完成到任一服务器的认证过程而不必重新输入密码。
        但是,Kerberos也存在不足之处。Kerberos认证系统要求解决主机节点时间同步问题和抵御拒绝服务攻击。如果某台主机的时间被更改,那么这台主机就无法使用Kerberos认证协议了,如果服务器的时间发生了错误,那么整个Kerberos认证系统将会瘫痪。尽管Kerberos V5有不尽如人意的地方,但它仍然是一个比较好的安全认证协议。目前,Windows系统和Hadoop都支持Kerberos认证。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有