什么是 PKI(公钥基础设施)及其工作原理?
组织依靠 PKI 解决方案来验证和加密流经 Web 服务器、数字身份、连接设备和应用程序的信息。随着组织越来越依赖 Internet 用于关键业务系统,建立安全通信对于确保业务连续性和主动风险管理至关重要。PKI 是美国国家标准与技术研究院 (NIST) 所描述的零信任架构的重要组成部分,在该架构中,信任永远不会被隐式授予,必须不断评估。
公钥加密是核心技术,它通过两个独立但相关的密钥进行加密和解密,使 PKI 成为可能。生成的密钥对(用于加密消息的公钥和用于解密消息的关联私钥)也称为非对称加密。密钥对使用加密算法来保证加密通信只能由预期的接收者(密钥的持有者)解密。
基于 PKI 的证书如何提供安全的数字身份
国际电信联盟 (ITU) X.509 标准定义了基于 PKI 的证书的格式。用户在使用网站、移动应用程序、在线文档和连接的设备时,每天都会遇到数字证书不显眼且无处不在。通常,术语数字证书描述了所有X.509 证书。这是一个包含 SSL/TLS 证书、电子邮件签名证书、代码签名证书和文档签名证书的列表。
通常被称为“在线凭证”的数字证书:
- 验证所有者的身份。
- 提供所有者的加密公钥。
- 由验证真实性的受信任证书颁发机构 (CA) 颁发。
如前所述,公钥是使用复杂的非对称算法创建的,以将它们与关联的私钥配对。在公钥密码术中,加密密钥(可以是公钥或私钥)用于加密纯文本消息并将其转换为称为密文的编码格式。然后,使用另一个密钥作为解密密钥,对密文进行解密,以便接收者可以读取原始消息。这一切都是自动发生的,对用户是不可见的。
随着公开密钥向全世界公开,更多的密钥是使用复杂的加密算法创建的,通过生成不同长度的随机数字组合将它们与相关的私钥配对,这样它们就不会被暴力攻击利用。与可公开访问的密钥不同,私钥是只有其所有者知道的秘密密钥。私钥是使用创建公钥的相同算法生成的,以创建以数学方式绑定的强密钥对。
用于生成密钥的最常见的加密算法是:
- Rivest-Shamir-Adleman (RSA)
- 椭圆曲线密码学 (ECC)
- 数字签名算法 (DSA)
这些算法使用各种计算方法来生成不同长度的随机数字组合,因此它们不能被蛮力攻击所利用。密钥大小或位长有助于确定保护强度。CA/浏览器论坛等标准组织定义了支持的密钥大小的基线要求。例如,2048 位 RSA 密钥通常用于 SSL 证书、数字签名、代码签名证书和其他数字证书。这个密钥长度提供了足够的加密强度来防止黑客破解算法。
为什么不使用两个密钥而不是一个公钥和一个私钥?虽然这似乎违反直觉,但使用由两个私钥组成的密钥对来加密和解密敏感信息(称为对称密钥算法的过程)并不比非对称加密更安全。此外,使用对称密钥算法要求通信双方都可以访问密钥,增加了风险,因为现在双方都需要保密。此外,这些类型的算法无法轻松扩展,因为几乎不可能协调私下共享所有私钥组合所需的大量连接。
PKI 的好处
加密密钥提供了一种验证机制,可保护身份和数据免遭未经授权的访问或使用。它们是企业网络安全计划的重要组成部分,用于保护网站、电子商务交易、文档、电子邮件、服务器和其他资产免受网络犯罪分子的攻击。
PKI 提供可扩展的数据和数字身份安全性,可以保护组织每天通过自己的网络和 Internet 交换的数十亿条消息。实现这种可扩展性的原因在于,公钥可以广泛且公开地分发,而恶意行为者无法发现解密消息所需的私钥。此外,PKI 已发展为更加通用,可提供互操作性、高正常运行时间和治理。
PKI 的核心是通过允许两个通信方私下发送和接收敏感数据来实现机密性。组织的好处是广泛和可衡量的,提供安全的通信:
- 保护客户。
- 保护企业知识产权。
- 加强合规计划。
- 防止数据泄露。
- 支持不断增长的远程分布式劳动力。
- 保护越来越多的云应用程序和物联网 (IoT) 设备。
从本质上讲,它是对您的人员、设备和数据的数字身份的最佳保护,让个人、组织甚至设备在数字世界中建立信任。
常见的 PKI 应用程序
PKI 技术有很多应用,包括 Web 服务器安全、数字签名和文档签名以及数字身份。
网络服务器安全
公钥加密是安全套接字层 (SSL) 和传输层安全 (TLS) 协议的基础,它们是 HTTPS 安全 Web 浏览器连接的基础。SSL/TLS 证书加密 Internet 通信并确保可信的客户端-服务器连接。没有它们,网络犯罪分子可以利用互联网或其他 IP 网络使用各种攻击媒介来拦截消息并访问其内容。
数字签名和文档签名
除了用于加密消息外,密钥对还可用于数字签名和文档签名。PKI 使用发送者的私钥来验证他们的数字身份。这种加密验证在数学上将签名绑定到原始消息,以确保它没有被更改。
代码签名
代码签名使应用程序开发人员能够通过对应用程序、驱动程序和软件程序进行数字签名来增加一层保证,以便最终用户可以验证第三方没有更改或破坏他们收到的代码。为了验证代码的安全性和可信度,这些数字证书可确保容器、它们运行的代码以及使用它们的生产应用程序的完整性。
电子邮件证书
S/MIME 证书验证电子邮件发件人并加密电子邮件内容,以防止日益复杂的社会工程和鱼叉式网络钓鱼攻击。通过加密/解密电子邮件和附件以及验证身份,S/MIME 电子邮件证书向用户保证电子邮件是真实且未经修改的。
SSH 密钥
SSH 密钥是 X.509 证书的一种形式,它提供用于安全外壳 (SSH) 协议的安全访问凭证。SSH 协议广泛用于云服务、网络环境、文件传输工具和配置管理工具中的通信。
SSH 密钥验证身份并保护这些服务免受意外使用或恶意攻击。SSH 密钥不仅可以提高安全性,还可以实现当今组织所需规模的连接流程、单点登录 (SSO) 以及身份和访问管理的自动化。
数字身份
数字身份认证是零信任策略的关键要素,用于对人员、数据或应用程序进行身份验证。随着数据和应用程序从传统网络扩展到移动设备、公共云、私有云和物联网设备,使用 X.509 数字证书保护身份比以往任何时候都更加重要。基于此标准的数字身份证书使组织能够通过替换密码来提高安全性,攻击者越来越擅长窃取密码。
建立信任:证书颁发机构在 PKI 中的作用
部署 X.509 证书的一个关键组件是受信任的证书颁发机构 (CA) 或代理,用于颁发证书并发布与个人私钥相关联的公钥。如果没有这个受信任的 CA,发件人就不可能知道他们实际上正在使用与收件人的私钥相关联的正确公钥,而不是与意图拦截敏感信息并将其用于邪恶目的的恶意行为者相关联的密钥。
受信任的第三方组织(如 Sectigo)充当认证机构,但许多企业和技术提供商也选择充当他们自己的内部 CA。他们也可能决定使用自签名证书。
无论采用何种部署方法,都必须信任 CA:
- 检查并保证他们发布其公钥的所有发件人的身份。
- 确保这些公钥确实与发件人的私钥相关联。
- 维护自己组织内的信息安全级别,以防范恶意攻击。
PKI 自动化和证书管理的价值
对于 IT 或 Web 管理员而言,证书管理可能被视为一项简单的日常任务,但确保证书单独有效既耗时又昂贵。例如,即使是使用单个 Web 服务器和域实例的最小手动 SSL 证书颁发也涉及多个步骤。这项任务很容易花费几个小时,每台 Web 服务器的人工成本加起来超过 50 美元。
现在,在全球组织中的所有联网设备和用户身份的数千或数百万个 PKI 证书上加倍努力。最后,增加执行生命周期证书管理所需的劳动力,以整合发现、安装、监控和更新流程。
对于繁忙的 IT 团队而言,手动证书管理的结果是一项代价高昂、耗时且技术要求高的挑战。更重要的是,手动方法可能会使组织面临关键业务系统的突然中断或故障以及来自网络犯罪分子的破坏和攻击。
自动化证书颁发、配置和部署的端到端流程为寻求降低风险、满足法规遵从性要求、控制运营成本和更快地将服务推向市场的 CIO 和 CSO 提供了明确的投资回报 (ROI)。
当今的 PKI 解决方案提供的功能可通过以下方式改进管理和生命周期证书管理:
- 自动化:完成单个任务,同时最大限度地减少手动流程。
- 协调:使用自动化来管理广泛的任务组合。
- 可扩展性:管理数百、数千甚至数百万的证书。
- 加密敏捷性:快速更新加密强度并用量子安全证书撤销和替换有风险的证书,以响应新的或不断变化的威胁。
- 可见性:在所有用例中通过单一窗格查看证书状态。