mTLS通常应用于零信任安全框架中,用于验证组织内部的用户、设备和服务器。此外,它还有助于确保API的安全性。
零信任安全框架的核心思想是默认不信任任何用户、设备或网络流量,从而帮助消除许多安全漏洞。
什么是TLS? 传输层安全(TLS)是互联网上广泛使用的一种加密协议。其前身是SSL,用于在客户端-服务器连接中验证服务器身份,并对客户和服务器之间的通信进行加密,以确保外部各方无法窃听通信。了解TLS的工作原理,需要关注以下三个关键点:
1. 公钥和私钥TLS采用公钥加密技术,依赖于一对密钥:公钥和私钥。用公钥加密的信息只能用对应的私钥解密。
如果服务器能够解密用公钥加密的信息,则证明它拥有私钥。任何人都可以通过查看域或服务器的TLS证书来获取公钥。
2. TLS证书TLS证书是一个数据文件,其中包含了验证服务器或设备身份的重要信息,包括公钥、证书颁发者声明(TLS证书由证书颁发机构颁发)以及证书的到期日期。
3. TLS握手TLS握手是验证TLS证书和服务器是否拥有私钥的过程。同时,TLS握手还会确定握手完成后如何进行加密。
mTLS如何运作? 在典型的TLS流程中,服务器拥有一个TLS证书和一个公钥/私钥对,而客户端没有。以下是典型的TLS流程: - 客户端连接到服务器 - 服务器出示其TLS证书 - 客户端验证服务器的证书 - 客户端和服务器通过加密的TLS连接交换信息 然而,在mTLS中,客户端和服务器都拥有证书,并且双方都使用它们的公钥/私钥对进行身份验证。与常规TLS相比,mTLS中还有一些额外步骤来验证双方(以下步骤用加粗显示): - 客户端连接到服务器 - 服务器出示其TLS证书 - 客户端验证服务器的证书 - 客户端出示其TLS证书 - 服务器验证客户端的证书 - 服务器授予访问权限 - 客户端和服务器通过加密的TLS连接交换信息 mTLS中的证书颁发机构 实施mTLS的组织充当其自己的证书颁发机构。这与标准TLS相反,标准TLS的证书颁发机构是一个外部组织,负责检查证书所有者是否合法拥有关联域。 mTLS需要“根”TLS证书;这使组织能够成为他们自己的证书颁发机构。授权客户端和服务器使用的证书必须与此根证书相对应。根证书是自签名的,这意味着组织自己创建它。(这种方法不适用于公共互联网上的单向TLS,因为必须由外部证书颁发机构颁发这些证书。) 为什么使用mTLS? mTLS有助于确保客户端和服务器之间的流量是安全和可信的。这为登录到组织网络或应用程序的用户提供了一个额外的安全层。它还可以验证与不遵循登录过程的客户端设备的连接,如物联网(IoT)设备。 mTLS可以防止各种类型的攻击,包括: - 在途攻击 - 欺骗攻击 - 凭证填充 - 暴力攻击 - 网络钓鱼攻击 - 恶意API请求 为什么没有在整个互联网上使用mTLS? 对于日常用途,单向身份验证提供了足够的保护。公共互联网上TLS的目标是: 1. 确保人们不会访问欺骗性网站 2. 确保私有数据在通过包含互联网的各种网络时安全且加密 3. 确保数据在传输过程中没有改变 客户端仅验证服务器身份的单向TLS足以实现这些目标。 此外,将TLS证书分发到所有最终用户设备将非常困难。生成、管理和验证所需的数十亿证书几乎是不可能的任务。 然而,在较小的规模上,mTLS对单个组织非常有用且非常实用,尤其是当这些组织采用零信任方法来确保网络安全时。由于零信任方法默认不信任任何用户、设备或请求,因此组织必须能够在每次尝试访问网络中的任何时间对每个用户、设备和请求进行身份验证。mTLS通过验证用户和验证设备来帮助实现这一点。标签: 区块链
文章来源: 酷玩网
版权声明: 本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任