Kerberos协议认证原理/过程(详细易理解)
创作时间:
作者:
@小白创作中心
Kerberos协议认证原理/过程(详细易理解)
引用
CSDN
1.
https://blog.csdn.net/m0_62832001/article/details/143863132
前言
为了方便理解,我们先了解一些名词,然后附上一张图片方便理解过程(最后有超精简版流程,适合详细过程记不住的小伙伴)
名词:
- Client:访问服务的客户端
- Server:提供服务的服务器
- KDC (Key Distribution Center):密钥分发中心
- AS (Authentication Service):认证服务器
- TGS (Ticket Granting Service):票据授予服务
- DC (Domain Controller):域控制器
- AD (Account Database):用户数据库
- TGT (Ticket Granting Ticket):票据授予票证
- ST (Server Ticket):服务票据
流程图:
认证过程
第一阶段:客户端与认证服务器(AS)交互
- 客户端发起请求:客户端将自己的用户名、IP地址和时间戳发送到AS,标识身份并防止重放攻击。
- AS检查用户是否存在:AS在AD中查找用户是否存在于域中(例如白名单)。如果用户存在,AS认为用户有效,继续下一步;否则,认证失败。
- AS向客户端返回两部分内容:
- (1)TGT(票据授予票据):包含客户端信息、IP地址和时间戳等,经过TGS的密钥加密,只有TGS能解密和读取其中的内容。
- (2)会话密钥(CT_SK)及其他信息:包括CT_SK(client+TGS session key)、TGS信息、TGT有效时间和时间戳。此部分使用客户端密钥加密,客户端用自己的密钥解密以提取CT_SK和时间戳。
第一阶段结果:客户端成功获取了TGT和用于与TGS通信的会话密钥CT_SK。
第二阶段:客户端与票据授予服务(TGS)交互
- 客户端验证AS响应的时间戳:客户端检查时间戳是否超过5分钟,避免伪造认证。验证通过后,客户端继续与TGS通信。
- 客户端向TGS发起请求:请求内容分为三部分:
- (1)使用CT_SK加密的客户端信息、IP地址和时间戳,用于TGS识别客户端身份。
- (2)客户端希望访问的服务(明文)。
- (3)TGT,由AS生成并加密(这个密钥只有KDC中的TGS服务知道,只有TGS能解密并读取TGT中的内容)
- TGS验证请求并生成服务票据(ST):
- TGS解密TGT:获取到用户信息和CT_SK,并通过时间戳确认请求是否有效。
- 对比信息:TGS使用CT_SK解密客户端发送的第一部分,并验证用户信息一致性,确保客户端身份真实。
- 生成响应:
- (1)使用服务端密钥加密的服务票据ST,包含客户端信息、目标服务信息、ST有效期、时间戳和会话密钥CS_SK(client-server session key)(用于客户端和服务端通信)。
- (2)使用CT_SK加密的内容,包含CS_SK、时间戳和ST有效期,客户端用CT_SK解密获取这些内容。
第二阶段结果:客户端成功获得服务票据(ST)和客户端-服务端会话密钥CS_SK。
第三阶段:客户端与目标服务交互
- 客户端向服务端发起请求:请求内容包括两部分:
- (1)使用CS_SK加密的客户端信息和时间戳。
- (2)使用目标服务的密钥加密的ST(TGS返回的ST,ST中包含CS_SK),客户端无法解密。
- 服务端验证客户端身份:
- 解密ST:服务端使用自己的密钥解密ST,获得客户端信息和会话密钥CS_SK。
- 验证信息一致性:使用CS_SK解密客户端发送的第一部分内容,核对解密后的客户端信息是否与ST中一致,以确认客户端身份真实性。
- 双向认证确认:服务端向客户端发送确认消息,使用CS_SK加密。客户端解密后确认服务端的真实性,从而完成认证。
第三阶段结果:客户端与服务端成功完成双向认证,基于CS_SK的安全通信通道建立。至此,第三阶段通信完成,到这里整个Kerberos认证也就完成了,接下来客户端与服务端就能放心的进行通信了。
超精简版本
第一阶段:客户端与认证服务器(AS)交互
结果:客户端成功获取了TGT和用于与TGS通信的会话密钥CT_SK
第二阶段:客户端与票据授予服务(TGS)交互
结果:客户端成功获得服务票据(ST)和客户端-服务端会话密钥CS_SK
第三阶段:客户端与目标服务交互
结果:客户端与服务端成功完成双向认证,基于CS_SK的安全通信通道建立。至此,第三阶段通信完成,到这里整个Kerberos认证也就完成了,接下来客户端与服务端就能放心的进行通信了
热门推荐
芦荟的功效与作用,你了解吗?
如何购买让人安心的保险?这类保险的特点是什么?
甄嬛、如懿、魏璎珞三者关系,历史原型及她们在其他剧集中的形象
解读万有引力的由来,从牛顿到爱因斯坦一步步接近引力的本质!
揭秘历史:袁天罡的真实能力与传奇
提升论文可读性:六大段落结构优化技巧
榴莲是寒性还是热性的
《经理人参阅:情商与社交》:一本值得一读的情商提升指南
仅用哑铃,也能锻造出好看胸肌!
河北秦皇岛十大名吃探秘
十大含硒高的食物,建议需要的人快快收藏
美国圣马特奥:加州第三大城市的历史、文化与美食
全球城市人才黏性指数报告2024:科技创新驱动人才集聚
企二代最需要的教育是什么?
注意!炒菜时开窗反而更伤肺
如何评估企业的国际竞争力?这种评估对企业发展有何影响?
中山大学全国排名和最强专业解析
韩信的传奇一生与后世记载
矩阵乘法为什么是这样定义的?
城乡居民保险知识普及
生成式人工智能(AI)和大型语言模型(LLM)对用户体验(UX)设计的影响
歼-20年产量破百!空军人手不够了,飞歼-7的直接拉去开五代机
揭秘速效救心丸:为何它在急救药物中可以“拔得头筹”?
共赏李白《静夜思》中的月光与乡愁:心灵的时空之旅
中医是怎么认识冠心病的?在治疗上有什么优势和特色吗?
中年女性50岁后远离伴侣:多重因素影响下的心理变化
探索交互式地图
【AI绘画教程】九周精通AI绘画,MJ基础至SD模型训练全方位教学
生产方式选好了吗?自然产&剖腹产必知的10个Q&A
一个耙耙柑的热量是多少 耙耙柑减肥能吃吗