2.Kerberos基本认证过程
Kerberos基本认证过程可以分为三个阶段,分别由三组消息来完成。在介绍协议之前, 首先给出相关符号定义:
C( Client):客户端; S( Server):服务器;
Kx:X与KDC的共享密钥; Kx.。:X和Y的会话密钥;
Tx,v:X使用Y时的凭据; Ax:X的认证标记;
N: -次性随机数;
t:时间标记或序列号。
第一阶段:获得票据许可票据
本阶段,用户登录客户端请求服务,认证服务器( AS)在数据库中验证用户的访问权限,生成票据许可票据和会话密钥,过程如下图所示。
首先,用户从客户端向AS发送包含有用户名、服务器名和一个随机数N的消息KRB—AS—REQ。
C->AS:C,TGS,N
AS验证C的身份和访问权限后,随机生成一个加密密钥K。,.。。作为下一阶段客户方与TGS通信时使用的会话密钥,生成一个包含客户方、会话密钥以及开始和失效时间等信息的TGT,用TGS的密钥K。进行加密。AS将会话密钥K..,igs和N用客户端的密钥K。,加密,并与TGT 一起构成消息KRB AS—REP,发送给客户端。客户端通过用户口令变换出Kci,获得会话密钥K。.。。,根据N验证该消息是新鲜的,从而确信TGT是AS最新生成的。
AS一>C:(Kn.g,N}K.,,{T。;静)K.舻第二阶段:获得服务许可票据