文档章节

Kerberos 协议简介

散关清渭
 散关清渭
发布于 2014/11/20 00:20
字数 696
阅读 106
收藏 2
点赞 0
评论 0

Kerberos协议主要用于计算机网络身份鉴别, 用户只需输入一次身份验证信息就可凭借此验证获得票据访问多个服务。

由于在每个Client和Service之间建立了共享密钥,使得该协议具有相当的安全性。




Kerberos协议分为两个部分:

1 . Client向KDC发送自己的身份信息,KDC从Ticket Granting Service得到TGT(ticket-granting ticket), 并用协议开始前Client与KDC之间的密钥将TGT加密回复给Client。只有真正的Client才能利用它与KDC之间的密钥将加密后的TGT解密,从而获得TGT。


2. Client利用之前获得的TGT向KDC请求其他Service的Ticket,从而通过其他Service的身份鉴别。




  1. Client将之前获得TGT和要请求的服务信息发送给KDC,KDC中的Ticket Granting Service将为Client和Service之间生成一个Session Key用于Service对Client的身份鉴别。KDC将这个Session Key和用户名,用户地址,服务名,有效期, 时间戳一起包装成一个Ticket发送给Service, 不过Kerberos协议并没有直接将Ticket发送给Service,而是通过Client转发给Service.

  2.  此时KDC将刚才的Ticket转发给Client。由于这个Ticket是要给Service的,不能让Client看到,所以KDC用协议开始前KDC与Service之间的密钥将Ticket加密后再发送给Client。同时为了让Client和Service之间共享那个秘密, KDC用Client与它之间的密钥将Session Key加密随加密的Ticket一起返回给Client。

  3.  为了完成Ticket的传递,Client将刚才收到的Ticket转发到Service. 由于Client不知道KDC与Service之间的密钥,所以它无法算改Ticket中的信息。同时Client将收到的Session Key解密出来,然后将自己的用户名,用户地址打包成Authenticator用Session Key加密也发送给Service。

  4.  Service 收到Ticket后利用它与KDC之间的密钥将Ticket中的信息解密出来,从而获得Session Key和用户名,用户地址,服务名,有效期。然后再用Session Key将Authenticator解密从而获得用户名,用户地址将其与之前Ticket中解密出来的用户名,用户地址做比较从而验证Client的身份。

  5.  如果Service有返回结果,将其返回给Client。


参考文献:

http://idior.cnblogs.com/archive/2006/03/20/354027.html

© 著作权归作者所有

共有 人打赏支持
散关清渭
粉丝 24
博文 159
码字总数 166498
作品 0
东城
程序员
端口号简介

今天,同学问了比较多的端口号的问题,这篇文章是转载的,我稍微的整理了一下,如果侵犯了您的权益,请联系我。 常用的协议端口号: 18 msp 消息发送协议 22 ssh 安全 Shell(SSH)服务 25 s...

opFreedom ⋅ 2015/08/07 ⋅ 0

Hadoop安全管理(1)

Hadoop安全问题: 1:非法的slave节点添加 2:非法的客户端添加 3:非法的应用添加 4:用法身份造假 5:Web界面随意访问 究其原因还是安全的问题 默认支持的安全协议 1:simple,简单,适合单...

lixiyuan ⋅ 2015/08/10 ⋅ 1

Windows安全认证是如何进行的?[Kerberos篇]

最近一段时间都在折腾安全(Security)方面的东西,比如Windows认证、非对称加密、数字证书、数字签名、TLS/SSL、WS-Security等。如果时间允许,我很乐意写一系列的文章与广大网友分享、交流...

长平狐 ⋅ 2012/09/04 ⋅ 0

LogonTracer:用于可视化分析Windows安全事件日志寻找恶意登录的工具

   简介   LogonTracer是一款用于可视化分析Windows安全事件日志寻找恶意登录的工具。它会将登录相关事件中找到的主机名(或IP地址)和帐户名称关联起来,并将其以图形化的方式展现出来。...

FreeBuf ⋅ 05/30 ⋅ 0

Kerberos是什么?

Kerberos is a network authentication protocol. It is designed to provide strong authentication for client/server applications by using secret-key cryptography. A free implementa......

hengbao5 ⋅ 03/12 ⋅ 0

第二本新书目录(暂定)

企业互联网根基之IDC的选择 1.1 寻找IDC数据中心 1.1.1 调研IDC准备 1.1.2 IDC线路测试 1.1.3 IDC运营商选择标准 1.2 机房介绍 1.2.1 XX机房 1.3 小结 企业互联网根基之服务器初始化 2.1 服务...

单身贵族liu ⋅ 2013/06/06 ⋅ 0

在 WebSphere Application Server Community Edition 中

IBM WebSphere Application Server Community Edition V2.1.1.2 (以下简称为 Community Edition)是一个基于 Apache Geronimo 2.1.4 的免费 Java Platform, Enterprise Edition 5.0 (Java ......

小编辑 ⋅ 2010/01/29 ⋅ 0

计算机网络授权协议--Kerberos

Kerberos协议是一种计算机网络授权协议,用来在非安全网路中,对个人通信以安全的手段进行身份认证。这个词又指麻省理工学院为这个协议开发的一套计算机软件。软件设计上采用客户端/服务器结...

匿名 ⋅ 2009/01/17 ⋅ 0

SSH客户端PuTTY 0.61发布

SSH Client PuTTY 0.61 Released SSH客户端PuTTY 0.61发布 posted by HAL2001 on Wed 13th Jul 2011 22:37 UTC 发表于:2011年7月14日 北京时间06:37 "After four long years, here comes a ......

xyxzfj ⋅ 2011/07/14 ⋅ 0

利用 Kerberos 5 支持来配置 OpenAFS

因为 Kerberos 4 协议中发现了一些漏洞,所以建议全球用户迁移到 Kerberos 5 来进行身份验证。Kaserver 是 Andrew File System 用来处理身份验证请求的一个组件,它是一个基于 Kerberos 4 的...

IBMdW ⋅ 2011/09/03 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Thrift RPC实战(二) Thrift 网络服务模型

TServer类层次体系 TSimpleServer/TThreadPoolServer是阻塞服务模型 TNonblockingServer/THsHaServer/TThreadedSelectotServer是非阻塞服务模型(NIO) 1 TServer抽象类的定义 内部静态类Args的...

lemonLove ⋅ 9分钟前 ⋅ 0

vim命令用法

第五章 vim命令 vim和vi几乎是一样的,唯一的区别就是当编辑一个文本时,使用vi不会显示颜色,而使用vim会显示颜色。 vim有三个模式:一般模式,编辑模式,命令模式。 系统最小化安装时没有安...

弓正 ⋅ 11分钟前 ⋅ 0

MyBatis源码解读之配置

1. 目的 本文主要介绍MyBatis配置文件解析,通过源码解读mybatis-config.xml(官方默认命名)、Mapper.xml 与Java对象的映射。 2. MyBatis结构 查看大图 MyBatis结构图,原图实在太模糊了,所以...

无忌 ⋅ 14分钟前 ⋅ 0

Ignite的jdbc与网格的连接方式的查询性能对比

环境: 数据量100万 Ignite2.5 Windows10 8g jdbc方式连接 import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; i......

仔仔1993 ⋅ 29分钟前 ⋅ 0

收集自网络的wordpress 分页导航的代码教程(全网最全版)

wordpress 分页导航是用来切换文章的一个功能,添加了 wordpress 分页导航后,用户即可自由到达指定的页面数浏览分类文章,而这样的一个很简单功能却有很多朋友在用插件:WP-PageNavi,插件的...

Rhymo-Wu ⋅ 45分钟前 ⋅ 0

微服务 WildFly Swarm 入门

Hello World 就像前面章节中的其他框架一样,我们希望添加一些基本的 Hello-world 功能,然后在其上逐步添加更多的功能。让我们从在我们的项目中创建一个 HolaResources 开始。您可以使用您的...

woshixin ⋅ 52分钟前 ⋅ 0

Maven的安装和Eclipse的配置

1. 下载Maven 下载地址 2. 解压压缩包,放到自己习惯的硬盘中 此处我将其放到了 D:\Tools 目录下。 3. 配置环境变量 右键此电脑 -> 属性 -> 高级系统设置 -> 环境变量。 在系统变量中新建,变...

影狼 ⋅ 59分钟前 ⋅ 0

python pip使用国内镜像的方法

国内源 清华:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 华中理工大学:http://......

良言 ⋅ 今天 ⋅ 0

对于url变化的spa应该如何使用微信jssdk

使用vue单页面碰上微信jssdk config验证失败的坑。第一次成功 之后切换页面全部失败,找到了解决方法,第一次验证成功后保存验证信息 切换页面时验证信息直接拿来用,加一个wx.error() 失败时...

孙冠峰 ⋅ 今天 ⋅ 0

Spring Cloud Gateway 一般集成

SCF发布,带来很多新东西,不过少了点教程,打开方式又和以前的不一样,比如这个SCG,压根就没有入门指导,所以这里写一个,以备后用。 一、集成 pom.xml <dependency> <groupI...

kut ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部