信息安全中的Kerberos是什么?
Kerberos 是一种网络认证协议,旨在使用秘密密钥加密为客户端/服务器应用程序提供强大的身份验证。Kerberos 为网络资源提供了最高级别的安全性。
Kerberos 由麻省理工学院 (MIT) 开发,旨在解决这些网络安全问题。Kerberos 协议使用强大的加密技术,以便用户能够在不安全的网络连接中向服务器证明其身份(反之亦然)。在客户端和服务器使用 Kerberos 确定其身份后,它们还可以加密所有通信以提供隐私和数据完整性,并在其业务流程中保持安全。
Kerberos 可从 MIT 公开获取,其版权许可与 BSD 操作系统框架和 X 窗口系统使用的许可相同。MIT 以源代码形式支持 Kerberos,以便任何需要使用它的人都可以自行查看代码,并确保代码的可信赖性。此外,对于那些希望基于专业支持的产品的用户,Kerberos 也可从多家供应商处获得。
Kerberos 应用客户端/服务器架构,并支持用户到服务器的身份验证,而不是主机到主机的身份验证。在此模型中,安全性和身份验证将依赖于秘密密钥技术,其中网络上的每个主机都有其自己的秘密密钥。
Kerberos 服务器/KDC 具有两个主要功能,包括身份验证服务器 (AS) 和票据授予服务器 (TGS)。在应用程序客户端和应用程序服务器之间创建经过身份验证的会话的步骤如下:
Kerberos 客户端软件与 Kerberos 服务器的 AS 功能建立连接。AS 首先验证客户端是否为其声称的身份。AS 为此登录会话(TGS 会话密钥)提供客户端一个秘密密钥,并提供一个票据授予票据 (TGT),该票据允许客户端与 TGS 通信。票据的有效期有限,因此身份验证过程会定期重复。
客户端与 TGS 通信以获取应用程序服务器的密钥,以便它(客户端)可以与所需的服务建立连接。客户端向 TGS 提供 TGS 会话密钥和 TGT。TGS 会回复一个应用程序会话密钥 (ASK) 和应用程序服务器秘密密钥的加密形式。此秘密密钥永远不会以多种形式通过网络传输。
客户端已对其自身进行身份验证,并且可以通过提供 Kerberos 票据、应用程序会话密钥和加密的应用程序服务器秘密密钥来向应用程序服务器确定其身份。应用程序服务器会回复相同的加密数据以向客户端进行身份验证。然后,客户端可以发起预期的服务请求,例如 Telnet、FTP、HTTP 或电子商务交易会话建立。