kerberos认证原理---讲的非常细致,易懂

合集下载

克斯利伯现象原理

克斯利伯现象原理

克斯利伯现象原理克斯利伯现象原理(Kerberos Principle)是一种常见的网络安全认证协议,用于建立安全的信任关系。

使用克斯利伯认证协议,用户可以使用单个账户和密码来访问多个不同的网络服务和资源,而无需重复输入用户名和密码。

在这篇文章中,我们将分步骤阐述克斯利伯现象原理的工作机制和应用场景。

1. 认证请求在克斯利伯协议中,认证请求由客户端发起。

当一个用户尝试访问受保护的资源时,客户端会向被访问的服务(即“服务提供者”)发送一个认证请求。

该请求包含了客户端的身份信息,包括用户名和密码。

2. 认证票据服务提供者将客户端的身份信息发送到认证服务器,以验证该用户是否合法。

如果认证服务器确认该用户的身份信息,则会生成一个称为“认证票据”的加密令牌,并将其返回给服务提供者。

该认证票据将作为客户端与服务提供者之间的身份验证凭据。

3. 认证票据传输服务提供者将认证票据发送回客户端。

客户端收到认证票据后,可以使用该票据作为身份验证凭据,访问服务提供者所提供的其他网络资源。

由于认证票据已加密,因此它可以安全地在网络中传输,而不会被未经授权的第三方窃取或访问。

4. 令牌更新认证票据通常具有时限,因此客户端需要定期更新令牌。

客户端可以使用之前获得的令牌来请求更新,而无需重新输入用户名和密码。

在克斯利伯协议中,令牌更新是在客户端和认证服务器之间进行的,而不会打扰服务提供者和其他网络资源。

克斯利伯现象原理的优点在于,它提高了用户体验和安全性。

用户只需在认证时输入用户名和密码,就可以访问多个网络资源和服务,从而提高了效率和便利性。

同时,认证票据的加密和传输保证了认证过程的安全和保密。

总之,克斯利伯现象原理是一种广泛使用的网络安全认证协议,可以为用户提供快捷、安全的身份验证服务。

通过认证服务器生成的认证票据,用户可以使用单个账户和密码访问多个不同的网络资源,而无需重复输入身份验证信息。

这是一种可以提高安全性和效率的优秀网络协议,值得广泛推广和应用。

kerberos原理

kerberos原理

kerberos原理Kerberos原理Kerberos是一种网络认证协议,用于在计算机网络上验证用户和服务的身份。

它是一种安全的身份验证系统,可以防止未经授权的访问。

1. Kerberos基本概念Kerberos是一个古希腊神话中的三头犬,它被用作这个协议的名称。

Kerberos认证协议由麻省理工学院发明,旨在提供网络安全性和保护用户免受恶意攻击。

2. Kerberos三个组件Kerberos包括三个主要组件:客户端、认证服务器(AS)和票据授予服务器(TGS)。

这些组件共同工作以实现安全身份验证。

2.1 客户端客户端是指需要访问网络资源的用户或服务。

客户端需要进行身份验证才能获得访问权限。

2.2 认证服务器(AS)认证服务器是一个中心化的身份验证服务器,用于验证客户端的身份。

当客户端尝试访问网络资源时,它会向AS发送请求以获取票据授予票据(TGT)。

2.3 票据授予服务器(TGS)票据授予服务器是一个中心化的服务器,用于颁发票据。

当AS成功验证了客户端的身份后,它会向客户端发送TGT。

客户端使用TGT向TGS请求访问票据(服务票据),以获取对特定网络资源的访问权限。

3. Kerberos认证过程Kerberos认证过程包括以下步骤:3.1 认证请求客户端向AS发送身份验证请求,包括用户名和密码。

这个请求是加密的,以防止未经授权的访问。

3.2 TGT颁发AS接收到请求后,会检查用户名和密码是否正确。

如果正确,它会为客户端颁发TGT,并将其加密并返回给客户端。

3.3 获取服务票据客户端使用TGT向TGS发送请求以获取服务票据。

这个请求也是加密的,并且包括需要访问的网络资源的名称。

3.4 服务票据颁发TGS接收到请求后,会检查客户端的身份并确定其是否有权访问所需的网络资源。

如果是,则它会颁发一个服务票据,并将其加密并返回给客户端。

3.5 访问网络资源客户端使用服务票据向目标服务器发送请求以访问所需的网络资源。

kafka kerberos认证原理

kafka kerberos认证原理

kafka kerberos认证原理Kafka Kerberos认证原理Kafka是一个高性能分布式流处理平台,为了保证数据的安全性,Kafka提供了多种认证机制。

其中,Kerberos认证是一种常用的方式。

本文将分为以下几个部分,逐步深入解释Kafka Kerberos认证的原理。

什么是Kerberos认证Kerberos认证是一种网络身份验证协议,可提供机密性和数据完整性。

在Kerberos认证过程中,有三个主要参与者: - 客户端:希望访问服务的用户或进程。

- Kerberos认证服务器(KDC):负责颁发票据(ticket)的服务器。

- 服务:需要被访问的目标服务。

1. Kerberos认证的四个阶段Kerberos认证过程分为以下四个阶段:用户认证(Authentication)1.客户端使用自己的用户名和密码向KDC验证身份。

2.KDC验证用户信息,若通过则生成一个用于TGS请求的票据(Ticket Granting Ticket,TGT)。

3.TGT是被加密的,只能由KDC和目标服务解密。

获得服务票据(Ticket Granting Service,TGS)1.客户端使用TGT向KDC请求TGS票据,用于后续的服务访问。

2.KDC验证TGT,并生成一个由目标服务的服务器密码加密的TGS票据。

服务访问请求(Service Request)1.客户端向目标服务发送TGS票据和一个服务请求。

2.目标服务使用自己的密码解密TGS票据,并验证客户端是否有访问权限。

3.若验证通过,目标服务生成一个用于该服务的票据,称为服务票据(Service Ticket)。

服务访问(Service Access)1.客户端向目标服务发送服务票据。

2.目标服务解密服务票据,确认其有效性,最终允许或拒绝客户端的访问请求。

2. Kafka Kerberos认证流程服务端配置1.启用Kerberos认证机制,并配置Kafka的jaas文件。

简述kerberos身份认证的原理 -回复

简述kerberos身份认证的原理 -回复

简述kerberos身份认证的原理-回复Kerberos是一种网络身份验证协议,用于在计算机网络环境中实现安全的身份认证。

它的设计目标是为各种网络服务提供一个集中的、单点登录的认证机制,以及维护用户会话的安全性。

Kerberos的核心原理是基于对称密钥密码学和票据交换机制。

它使用第三方认证的方式来解决客户端和服务端之间的信任问题,同时通过使用票据来代替明文密码的方式进行认证,从而提供更高的安全级别。

下面,将详细介绍Kerberos身份认证的原理。

第一步:认证服务器的建立和配置在Kerberos环境中,有一个特殊的认证服务器,称为Key Distribution Center(KDC),它负责管理认证和密钥分发。

KDC由两部分组成:认证服务器(AS)和票据授予服务器(TGS)。

AS负责用户认证,而TGS负责颁发服务票据。

首先,管理员在网络中配置并启动KDC。

KDC在启动过程中需要生成一对加密用密钥,并将其中一个密钥作为其自身的密钥。

第二步:用户认证请求当用户在客户端上登录时,需要进行身份认证以获取访问网络资源的权限。

用户首先向AS发送一个认证请求,包括用户名(通常是用户的登录名)和其口令。

第三步:AS的认证和票据颁发AS收到客户端的认证请求后,首先验证用户提交的信息,然后生成一个Ticket-Granting Ticket(TGT)。

TGT是由用户的网络身份码(即用户的登录名)和一个时间戳组成的、加密的票据。

然后,AS将TGT用KDC的密钥加密,并将其发送给客户端。

同时,AS 还将生成一个用于与TGS通信的会话密钥,并用用户的口令加密这个会话密钥,作为一个随机数Nonce返回给客户端。

第四步:票据交换客户端收到TGT之后,使用用户的口令解密其中的会话密钥。

然后,客户端将用户的身份和TGT发送给TGS,以请求访问某个特定服务。

TGS接收到请求后,首先验证用户的身份和TGT的有效性。

然后,TGS 生成一个授权票据,即Service Ticket(ST),并用该服务的口令加密ST。

kerberos原理

kerberos原理

kerberos原理Kerberos原理。

Kerberos是一种网络认证协议,用于在计算机网络上进行身份验证。

它通过使用密钥系统来验证用户和服务之间的身份,从而确保网络上的安全通信。

Kerberos 的原理是基于票据的身份验证,它使用加密技术来防止身份伪造和窃听攻击。

在Kerberos系统中,有三个主要的参与者,客户端、认证服务器(AS)和票据授予服务器(TGS)。

客户端是需要身份验证的用户,AS是负责验证用户身份的服务器,TGS则负责颁发票据以供用户访问特定服务。

Kerberos的工作流程如下:1. 客户端向AS发送身份验证请求,请求使用特定服务的票据。

2. AS验证客户端的身份,并生成一个加密的票据,该票据包含了客户端访问特定服务所需的密钥。

3. 客户端收到票据后,使用自己的密码对票据进行解密,并将解密后的票据发送给TGS。

4. TGS验证客户端的身份,并生成一个用于访问特定服务的票据,然后将该票据发送给客户端。

5. 客户端收到TGS颁发的票据后,就可以使用该票据来访问特定服务了。

Kerberos的安全性主要体现在以下几个方面:1. 密钥系统,Kerberos使用密钥系统来保护用户和服务的身份信息,所有的票据都是使用密钥加密的,只有拥有正确密钥的用户才能解密票据。

2. 时效性,Kerberos颁发的票据都有时效性,一旦过期就无法再使用,这样可以有效地防止重放攻击。

3. 单点登录,用户只需要在第一次访问服务时进行身份验证,之后就可以使用票据来访问其他服务,无需再次输入密码,这样可以减少密码泄露的风险。

总的来说,Kerberos是一种安全可靠的网络身份验证协议,它通过使用密钥系统和票据颁发机制来确保网络通信的安全性。

在实际应用中,Kerberos已经被广泛应用于企业内部网络和互联网上,为用户和服务提供了便利的身份验证方式。

同时,Kerberos也在不断地发展和完善中,以应对不断变化的网络安全挑战。

Kerberos认证原理

Kerberos认证原理

一、Kerberos认证原理图二、前提条件在协议工作前,kerberos KDC在自己数据库中已经存有各个Client和Service Server的基本信息(帐号、密码……)和自己(KDC)的密码,由于协议中的消息无法穿透防火墙,所以Kerberos协议往往用于一个组织的内部,使其应用场景不同于X.509 PKI。

二,认证的过程第一次调用一个服务器A的服务A时:1.用户向认证服务器AS(KDC中包涵AS)发送基本信息(帐号,不包含密码),注意一定不能在网络上以明文的方式传输密码。

2.认证服务器根据数据库找到用户的密码,随机生成一个与用户共享的密码A,再使自己(KDC)的密码将[共享密码A和一些基本信息]加密,生成票据授权票TGT,再使用用户的密码将[票据授权票TGT+一个共享密码(密码A)]加密,生成数据A(也就是加密的票据授权票TGT+一个共享密码A),认证服务器把数据A发给用户。

3.用户获得数据A,用自己的密码解开数据A,如果解密正确,用户认证就算成功,如果解密不成功,即说明用户不用认证服务器要授权的那个用户。

认证成功后获得票据授权票TGT和共享密码A,在这个Session的过程中,用户会保存这个票据授权票TGT.4.用户使用共享密码A将[用户名+用户IP地址] 加密生成一个验证器A。

用户需要使用服务器A的服务A,向认证服务器提出索票请求。

向认证服务器发送数据B=[验证器+票据授权票+服务A名+用户+用户地址.]5.认证服务器收到数据B,用自己的密码解开票据授权票获得共享密码A,使用共享密码A解开验证器A,认证是否是真实用户。

成功以后,认证服务器根据服务器A名在数据库中找到服务A的密码,随机生成一个与服务A共享的密码B,并且用服务A的密码加密[共享的密码B和一些基本信息]而生成一个服务A的票。

最后向客户发送数据C=用户密码A加密的[密码B+服务A的票] (服务A的票是用服务器密码来加密的)6.用户获得数据C后,使用自己的密码解密数据C,获得共享密码B+服务A的票,使用密码B将[用户名+用户IP地址] 加密生成一个验证器B,用户向服务器A发送数据D=[验证器B+服务A的票]7.服务器A接受数据D,获得服务A的票,用自己的密码解密服务A的票,获得共享密码B,使用共享密码B解开验证器B,如果能解密成功,就认为用户的认证成功(验证器解密后的用户名和地址和真正请求来源的用户名和地址相同),使用验证器的用户名和地址核对是否是授权用户,如果是提供服务A。

简述kerberos身份认证的原理

简述kerberos身份认证的原理

简述Kerberos身份认证的原理1.引言身份认证在计算机系统中起到至关重要的作用,是保障系统安全的基石。

Ke rb er os是一种常用的身份认证协议,它使用密钥加密和票据交换来验证用户身份。

本文将简要介绍Ke rb er o s身份认证的基本原理。

2. Ke rberos基本概念在深入了解K er be ro s身份认证的原理之前,我们先了解一些K e rb er os的基本概念:客户端-:需要进行身份认证的用户或者程序。

服务端-:提供具体服务的计算机或者服务程序。

认证服务器(A S)-:负责验证客户端身份并生成“票据授权票”(T GT)的服务器。

票据授权票(T G T)-:由A S生成的加密票据,验证客户端身份并颁发给客户端,供后续身份认证使用。

票据授权票授予票(T G T G T)-:用于向A S请求TG T的票据,由客户端首次进行身份认证时获取。

票据服务器(TG S)-:负责向客户端提供服务凭证(Se rv ic e Ti ck et)的服务器。

3. Ke rberos身份认证原理K e rb er os的身份认证过程包括以下几个步骤:步骤一:客户端身份认证请求1.客户端向A S发送身份认证请求,请求包括客户端名称和服务名称。

步骤二:A S验证客户端身份1.AS验证客户端身份的合法性,如果合法,则生成一个T GT,并使用客户端的密码对T GT进行加密。

2.AS将加密的TG T发送给客户端。

步骤三:客户端获取T G T1.客户端收到加密的T GT后,使用自己的密码解密TG T。

2.客户端保存解密后的TG T以备进一步使用。

步骤四:客户端获取服务凭证1.客户端向TG S发送服务凭证请求,该请求包括TG T和目标服务的名称。

2.TG S验证T GT的合法性,并使用目标服务的密钥对服务凭证进行加密。

3.TG S将加密的服务凭证发送给客户端。

步骤五:客户端访问目标服务1.客户端收到加密的服务凭证后,使用T GT中的密钥对服务凭证进行解密。

Kerberos协议原理及其应用

Kerberos协议原理及其应用

Kerberos协议原理及其应用1. 引言Kerberos协议是一种广泛应用于计算机网络中的身份验证协议。

它旨在确保网络中的实体可以证明自己的身份,并且能够安全地发送和接收机密信息。

本文将介绍Kerberos协议的基本原理,并讨论其在实际应用中的一些常见场景。

2. Kerberos协议原理Kerberos协议基于对称密钥加密技术,使用票证来实现网络实体的身份验证。

下面是Kerberos协议的基本原理:2.1 客户端身份验证在Kerberos协议中,客户端需要首先向Kerberos服务器进行身份验证。

客户端发送一个请求,请求包括其用户名和密码。

Kerberos服务器验证用户的身份,并生成一个加密票证,表示用户的身份和一些相关信息。

该票证将作为客户端后续请求的凭据。

2.2 服务端许可验证当客户端需要访问某个服务时,它将发送一个请求给服务端,并附上之前获得的加密票证。

服务端收到请求后,会去Kerberos服务器验证票证的有效性。

如果票证有效,则服务端将生成一个加密会话密钥,用于后续的加密通信。

2.3 安全通信一旦客户端和服务端都拥有了会话密钥,它们之间的通信将会使用这个密钥进行加密和解密。

这样可以确保通信内容的机密性和完整性。

3. Kerberos协议的应用Kerberos协议在许多实际的网络应用中得到了广泛应用。

下面是一些常见的应用场景:3.1 Web应用在Web应用中,Kerberos协议可用于用户访问控制和身份验证。

用户在登录Web应用时,将其凭据发送给Kerberos服务器进行身份验证。

一旦身份验证成功,用户就可以访问受保护的Web资源,并且可以使用Kerberos生成的会话密钥进行安全通信。

3.2 远程登录Kerberos协议可以用于远程登录,如Telnet或SSH等。

用户在远程登录时,需要进行身份验证。

Kerberos服务器将验证用户的身份,并生成一个会话密钥,用于安全加密用户的远程会话。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

kerberos认证原理---讲的非常细致,易懂 2015年01月05日09:35前几天在给人解释Windows是如何通过Kerberos进行Authentication的时候,讲了半天也别把那位老兄讲明白,还差点把自己给绕进去。

后来想想原因有以下两点:对于一个没有完全不了解Kerberos的人来说,Kerberos的整个Authentication过程确实不好理解——一会儿以这个Key进行加密、一会儿又要以另一个Key进行加密,确实很容易把人给弄晕;另一方面是我讲解方式有问题,一开始就从Kerberos的3个Sub-protocol全面讲述整个Authentication 过程,对于一个完全不了解Kerberos的人来说要求也忒高了点。

为此,我花了一些时间写了这篇文章,尽量以由浅入深、层层深入的方式讲述我所理解的基于Kerberos 的Windows Network Authentication,希望这篇文章能帮助那些对Kerberos不明就里的人带来一丝帮助。

对于一些不对的地方,欢迎大家批评指正。

一、基本原理Authentication解决的是“如何证明某个人确确实实就是他或她所声称的那个人”的问题。

对于如何进行Authentication,我们采用这样的方法:如果一个秘密(secret)仅仅存在于A和B,那么有个人对B声称自己就是A,B通过让A提供这个秘密来证明这个人就是他或她所声称的A。

这个过程实际上涉及到3个重要的关于Authentication的方面:Secret如何表示。

A如何向B提供Secret。

B如何识别Secret。

基于这3个方面,我们把Kerberos Authentication进行最大限度的简化:整个过程涉及到Client 和Server,他们之间的这个Secret我们用一个Key(KServer-Client)来表示。

Client为了让Server对自己进行有效的认证,向对方提供如下两组信息:代表Client自身Identity的信息,为了简便,它以明文的形式传递。

将Client的Identity使用KServer-Client作为Public Key、并采用对称加密算法进行加密。

由于KServer-Client仅仅被Client和Server知晓,所以被Client使用KServer-Client加密过的Client Identity只能被Client和Server解密。

同理,Server接收到Client传送的这两组信息,先通过KServer-Client对后者进行解密,随后将机密的数据同前者进行比较,如果完全一样,则可以证明Client能过提供正确的KServer-Client,而这个世界上,仅仅只有真正的Client和自己知道KServer-Client,所以可以对方就是他所声称的那个人。

Keberos大体上就是按照这样的一个原理来进行Authentication的。

但是Kerberos远比这个复杂,我将在后续的章节中不断地扩充这个过程,知道Kerberos真实的认证过程。

为了使读者更加容易理解后续的部分,在这里我们先给出两个重要的概念:Long-term Key/Master Key:在Security的领域中,有的Key可能长期内保持不变,比如你在密码,可能几年都不曾改变,这样的Key、以及由此派生的Key被称为Long-term Key。

对于Long-term Key的使用有这样的原则:被Long-term Key加密的数据不应该在网络上传输。

原因很简单,一旦这些被Long-term Key加密的数据包被恶意的网络监听者截获,在原则上,只要有充足的时间,他是可以通过计算获得你用于加密的Long-term Key的——任何加密算法都不可能做到绝对保密。

在一般情况下,对于一个Account来说,密码往往仅仅限于该Account的所有者知晓,甚至对于任何Domain的Administrator,密码仍然应该是保密的。

但是密码却又是证明身份的凭据,所以必须通过基于你密码的派生的信息来证明用户的真实身份,在这种情况下,一般将你的密码进行Hash运算得到一个Hash code, 我们一般管这样的Hash Code叫做Master Key。

由于Hash Algorithm是不可逆的,同时保证密码和Master Key是一一对应的,这样既保证了你密码的保密性,有同时保证你的Master Key和密码本身在证明你身份的时候具有相同的效力。

Short-term Key/Session Key:由于被Long-term Key加密的数据包不能用于网络传送,所以我们使用另一种Short-term Key来加密需要进行网络传输的数据。

由于这种Key只在一段时间内有效,即使被加密的数据包被黑客截获,等他把Key计算出来的时候,这个Key早就已经过期了。

二、引入Key Distribution: KServer-Client从何而来上面我们讨论了Kerberos Authentication的基本原理:通过让被认证的一方提供一个仅限于他和认证方知晓的Key来鉴定对方的真实身份。

而被这个Key加密的数据包需要在Client 和Server之间传送,所以这个Key不能是一个Long-term Key,而只可能是Short-term Key,这个可以仅仅在Client和Server的一个Session中有效,所以我们称这个Key为Client和Server之间的Session Key(SServer-Client)。

现在我们来讨论Client和Server如何得到这个SServer-Client。

在这里我们要引入一个重要的角色:Kerberos Distribution Center-KDC。

KDC在整个Kerberos Authentication中作为Client 和Server共同信任的第三方起着重要的作用,而Kerberos的认证过程就是通过这3方协作完成。

顺便说一下,Kerberos起源于希腊神话,是一支守护着冥界长着3个头颅的神犬,在keberos Authentication中,Kerberos的3个头颅代表中认证过程中涉及的3方:Client、Server 和KDC。

对于一个Windows Domain来说,Domain Controller扮演着KDC的角色。

KDC维护着一个存储着该Domain中所有帐户的Account Database(一般地,这个Account Database由AD来维护),也就是说,他知道属于每个Account的名称和派生于该Account Password的Master Key。

而用于Client和Server相互认证的SServer-Client就是有KDC分发。

下面我们来看看KDC分发SServer-Client的过程。

通过下图我们可以看到KDC分发SServer-Client的简单的过程:首先Client向KDC发送一个对SServer-Client的申请。

这个申请的内容可以简单概括为“我是某个Client,我需要一个Session Key用于访问某个Server ”。

KDC在接收到这个请求的时候,生成一个Session Key,为了保证这个Session Key仅仅限于发送请求的Client和他希望访问的Server知晓,KDC会为这个Session Key生成两个Copy,分别被Client和Server使用。

然后从Account database 中提取Client和Server的Master Key分别对这两个Copy进行对称加密。

对于后者,和Session Key一起被加密的还包含关于Client的一些信息。

KDC现在有了两个分别被Client和Server 的Master Key加密过的Session Key,这两个Session Key如何分别被Client和Server获得呢?也许你马上会说,KDC直接将这两个加密过的包发送给Client和Server不就可以了吗,但是如果这样做,对于Server来说会出现下面两个问题:由于一个Server会面对若干不同的Client, 而每个Client都具有一个不同的Session Key。

那么Server就会为所有的Client维护这样一个Session Key的列表,这样做对于Server来说是比较麻烦而低效的。

由于网络传输的不确定性,可能出现这样一种情况:Client很快获得Session Key,并将这个Session Key作为Credential随同访问请求发送到Server,但是用于Server的Session Key确还没有收到,并且很有可能承载这个Session Key的永远也到不了Server端,Client将永远得不到认证。

为了解决这个问题,Kerberos的做法很简单,将这两个被加密的Copy一并发送给Client,属于Server的那份由Client发送给Server。

可能有人会问,KDC并没有真正去认证这个发送请求的Client是否真的就是那个他所声称的那个人,就把Session Key发送给他,会不会有什么问题?如果另一个人(比如Client B)声称自己是Client A,他同样会得到Client A和Server的Session Key,这会不会有什么问题?实际上不存在问题,因为Client B声称自己是Client A,KDC就会使用Client A的Password 派生的Master Key对Session Key进行加密,所以真正知道Client A 的Password的一方才会通过解密获得Session Key。

三、引入Authenticator - 为有效的证明自己提供证据通过上面的过程,Client实际上获得了两组信息:一个通过自己Master Key加密的Session Key,另一个被Sever的Master Key加密的数据包,包含Session Key和关于自己的一些确认信息。

通过第一节,我们说只要通过一个双方知晓的Key就可以对对方进行有效的认证,但是在一个网络的环境中,这种简单的做法是具有安全漏洞,为此,Client需要提供更多的证明信息,我们把这种证明信息称为Authenticator,在Kerberos的Authenticator实际上就是关于Client的一些信息和当前时间的一个Timestamp(关于这个安全漏洞和Timestamp的作用,我将在后面解释)。

在这个基础上,我们再来看看Server如何对Client进行认证:Client通过自己的Master Key 对KDC加密的Session Key进行解密从而获得Session Key,随后创建Authenticator(Client Info + Timestamp)并用Session Key对其加密。

相关文档
最新文档