在Kerberos协议中,用户(C)和票据授权服务器(TCS)之间没有共享密钥,他们之间是如何实现加密通信的?
时间: 2023-06-01 20:05:18 浏览: 48
Kerberos协议中,用户(C)和票据授权服务器(TCS)之间通过 TGS Session Key 完成加密通信。具体的过程是,用户在向 TGS 请求服务票据时,会向 TGS 发送一个包含 TGS Session Key 的加密信息,TGS 解密该信息后再使用该 Session Key 向用户发送授权票据。这样,用户和 TGS 之间的通信就可以通过 Session Key 实现加密。
相关问题
在Kerberos协议中,用户(C)和服务器(S)之间没有共享密钥,他们之间是如何实现加密通信的?
在Kerberos协议中,用户(C)向认证服务器(AS)发送请求,AS返回一段加密过的票据,C使用自己的密码对票据进行解密,获取到一个称为Ticket-Granting Ticket (TGT)的凭证。C再向Ticket Granting Server (TGS)发送请求,使用TGT进行身份验证,并获取到另一个被称为服务票据 (Service Ticket)的加密票据。C将Service Ticket发送给服务器(S),并且使用Service Ticket中的密钥对后续通信进行加密和解密。因此,用户和服务器之间的加密通信是通过对票据进行加密和解密来实现的,而不是通过共享密钥来实现的。
0.在 Kerberos v4 中,除了客户 C 之外,系统中还有哪些主体 (对象)?几者之间是如何共享哪些密钥的?试用一个简单的图 形说明该系统中的这几个主体之间的关系(如何共享密钥的)。 请用带序号的箭头及简单的说明描述其认证是如何实现的
除了客户 C 之外,Kerberos v4 系统中还有以下主体:
1. Kerberos 认证服务器(KAS)
2. Kerberos 数据库服务器(KDS)
这三个主体之间共享的密钥主要是用户的密码,被称为用户的“长期密钥”。KAS 和 KDS 之间还会共享一个称为“Kerberos 密钥”的密钥,用于保护系统中的 Kerberos 数据库信息。
下图是 Kerberos v4 系统中各个主体之间的关系:
```
+--------+ 1. 请求 TGS 服务票据 +---------+ 2. 发送 TGS 服务器票据
| 客户 C | ------------------------>| Kerberos| ------------------------>| TGS 服务器|
+--------+ | 认证服务器| +---------+
+---------+
|
| 3. 请求访问服务 S
|
v
+---------+
|Kerberos |
|数据服务器|
+---------+
```
该系统中的认证过程如下:
1. 客户 C 向 Kerberos 认证服务器 KAS 发送“请求 TGS 服务票据”的请求,请求中包括 C 的身份信息和服务 S 的身份信息。
2. KAS 使用 C 的密码生成加密 TGS 服务器票据,其中包含了 C 的身份信息和一个称为“会话密钥”的密钥,将其发送给客户 C。
3. 客户 C 使用会话密钥解密 TGS 服务器票据,取出其中的会话密钥和 TGS 服务器的身份信息,然后向 TGS 服务器发送“请求访问服务 S”的请求,请求中包括 C 的身份信息、S 的身份信息和会话密钥。
4. TGS 服务器使用 KAS 和自己共享的密钥解密收到的 TGS 服务器票据,取出其中的会话密钥,然后生成加密服务票据,将其发送给客户 C。
5. C 使用会话密钥解密服务票据,取出其中的服务票据和服务 S 的身份信息,然后向 S 发送请求。
6. 服务 S 使用会话密钥解密收到的请求,验证 C 的身份,并向 C 发送响应。