PKI工作原理探秘:公钥基础设施内部机制详解

本文深入解析公钥基础设施(PKI)的工作原理,涵盖证书颁发、身份验证和加密过程,详细说明TLS握手、信任链构建以及非对称与对称加密的协同工作,帮助理解PKI如何保障数据传输安全。

PKI如何工作?公钥基础设施内部工作机制解析

您每天都在享受PKI带来的好处,但您是否曾想过其背后的工作原理?了解公钥基础设施如何工作,以确保个人、设备和组织的数据安全与信任。

在去年黑色星期五之前,几家东欧国家的宜家运营商遭受了勒索软件攻击。总损失:2280万美元。这只是公钥基础设施(PKI)帮助防止发生在您组织上的潜在威胁之一。

但PKI究竟如何工作?

在我们之前的文章中,我们已经了解了什么是PKI。我们探索了其基本组件和实际用途。今天,我们将更进一步,通过窥探幕后了解公钥基础设施如何工作,以保护您组织的数据免受恶意攻击者的侵害。

编辑注:本文是三部分系列文章中的第三篇也是最后一篇,该系列深入探讨PKI技术的细节。本系列从技术角度探讨PKI技术在IT安全中的角色、中小型企业可以享受的PKI用途和应用,以及PKI技术的工作原理。

什么是PKI?60秒解释公钥基础设施

PKI是互联网安全的"秘方"。它使得通过互联网进行安全数据和通信成为可能。

  • 从实践角度:PKI是让"HTTPS"出现在用户浏览器地址栏中的原因,并帮助防止"不安全"消息阻止潜在客户访问您的网站。
  • 从技术角度:PKI是一套基于加密密钥对和数字证书的协议、硬件和软件,用于验证各方身份并确保数字世界中的安全、未经篡改的通信。

它为全球组织所做工作的快速回顾

从在线支付到电子邮件交换,甚至软件下载,PKI:

  • 防止敏感或机密数据落入错误手中或在传输过程中被篡改。
  • 帮助组织实现各种数据隐私和安全法规的合规性。
  • 最小化数据泄露、罚款、法律费用以及其他对组织声誉构成风险的风险。

PKI如何工作?概述

PKI的工作方式是通过使用可信证书颁发机构(CA)颁发的数字证书,在两个通信方(例如用户、服务或设备)之间建立"信任链"(稍后会详细介绍)。这种基于公钥密码学的数字信任使一方或双方能够验证并加密用于交换数据的通道——同时保护数据本身的完整性。

是的,简而言之,PKI通过以下方式工作:

  • 真实性:PKI利用通过PKI证书层次结构颁发的X.509数字证书,该层次结构"链接"回可信实体(即可信根CA)。
  • 机密性:PKI采用两个加密过程——加密和解密——以保护您最敏感数据在传输过程中的隐私。从网站安全的角度来看,这使您能够确保只有预期的接收方才能以明文形式访问它。
  • 完整性:PKI采用数字签名,允许接收者验证文件是否未经更改或自签名以来已被篡改。

在传统连接中,PKI使Web服务器能够向连接客户端证明其身份,作为TLS握手的一部分。(我们稍后会详细讨论这一点。)但是,当客户端使用个人身份验证证书时,PKI也使其能够进行身份验证,这个过程称为相互身份验证。

当然,这是PKI的简化概述。让我们通过逐步介绍其关键概念来回答"PKI如何工作?“这个问题。

没有时间详细了解所有步骤?在180秒内了解所有PKI基础知识。

公钥基础设施如何工作(步骤#1):证书颁发

作为证书请求者,您必须生成公钥-私钥对作为证书签名请求(CSR)的一部分。您将私钥保密(安全存储!)并将公钥与您的数字证书请求一起发送给可信证书颁发机构(CA)。哪种类型的数字证书?答案取决于您的具体需求。

证书类型

组织有很多选择。有几种类型的证书,每种在不同情况下保护数据。以下是中小型企业常用的几种PKI证书的快速示例:

  • 安全套接字层/传输层安全(SSL/TLS)证书:如果您想保护网站与客户端之间交换的信息,请选择它。SSL/TLS证书有不同的变体:单域、多域、通配符和多域通配符。不要忘记选择您首选的验证级别:域验证、组织验证(OV)或扩展验证(EV)。
  • 安全/多用途互联网邮件扩展(S/MIME)证书:选择此电子邮件签名证书以签名和加密您的电子邮件,确保消息完整性,或验证用户和设备,而无需传统的ID和密码组合。这就是为什么此证书也称为个人身份验证证书或客户端身份验证证书。
  • 代码签名证书:如果您是开发人员或发布者,这是适合您的证书。它使您能够确认自己作为软件开发人员或发布者的身份,并证明您的产品未经授权未被修改。它有两种类型:标准验证(SV)和扩展验证(EV)。
  • 文档签名证书:当您想证明您的PDF发票或其他文档是原始的且未被篡改时,此证书是理想选择。您还可以使用它来签名多种文件类型,包括Microsoft Office文档。

证书的验证过程

要回答"PKI如何工作?“这样的问题,您首先需要了解验证及其在可信数字身份中的作用。对于此示例,我们假设您为企业的网站请求EV SSL/TLS证书。

由于您请求了最高级别的身份保证,CA通过更深入的审查过程验证您的组织。此过程可能比平时花费稍长的时间,但非常值得。作为交换,您的网站将获得终极级别的信任。验证完成后,CA颁发包含公钥和您组织信息的证书。

图片说明:截图显示了证书颁发过程的高级概述。

公钥基础设施如何工作(步骤#2):身份验证

在您收到证书并将其安装在Web服务器上后,您基本上就可以开始了。一旦用户访问您的网站,客户端启动所谓的TLS握手,这个过程严重依赖PKI。

TLS握手

此过程使一方或双方(在相互TLS身份验证的情况下为后者)能够进行身份验证并交换有关它们支持的加密密码的信息。之后,服务器选择用于安全通信会话的算法。

在传统的TLS握手中,当用户的客户端尝试建立与您网站的连接时:

  1. 您的Web服务器将其SSL/TLS证书和公钥发送给客户端。
  2. 在验证证书上颁发CA的数字签名后,客户端使用服务器的公钥加密发送消息。
  3. 当接收服务器使用其私钥解密时,意味着客户端正在与正确的伙伴(您的合法网站)通信。

图片说明:图形显示了使用SSL/TLS证书的网站的PKI身份验证过程。

信任链

在继续回答PKI如何工作的下一步之前,让我们快速澄清什么是信任链以及PKI如何与之配合工作。信任链是一组数字证书,将您的SSL/TLS证书链接回颁发它的CA,就像您的家谱将您链接到您的祖先一样。PKI使用这种起源方法使客户端能够验证您的服务器身份是否合法。

这组通常包括三个证书:

  • 根证书:由CA拥有并保存在"信任存储"中。
  • 颁发(或中间)证书:这些证书中的一个或两个充当根证书和您域的叶子证书之间的缓冲区。(如下图的左半部分所示。)但是,某些PKI信任链有多个从属CA——在这些情况下,它们将有一个位于根CA和颁发CA之间的中间CA(如下图的右半部分所示)。
  • 服务器(叶子)证书:这是CA发送给您的SSL/TLS证书。

图片说明:图形显示了作为PKI基本组成部分的信任链,并回答了"PKI如何工作?“的问题。

那么,PKI如何与信任链配合工作以增强对您网站的信心?记得我们说过服务器将SSL/TLS证书及其公钥发送给客户端吗?这就是信任链发挥作用的地方。

客户端将SSL/TLS证书链接回根证书,通过中间证书,就像跟随一个想象中的"阿里阿德涅之线”:

  • 如果证书可以成功追溯到根证书,则显示您的网站。
  • 如果无法追溯,浏览器会显示类似下面的警告消息。

图片说明:截图显示了当信任链验证失败时可能出现的错误消息之一。

公钥基础设施如何工作(步骤#3):加密

在我们的示例中,成功身份验证后,PKI在用户的浏览器(即客户端)和您的服务器之间创建安全(加密的)通信通道。这就是PKI如何工作以保护您的客户和组织在传输中的数据(例如信用卡信息、密码和社会安全号码)免受窥探。

图片说明:图像说明了整个PKI SSL/TLS握手过程。

通常,PKI使用非对称和对称加密的混合:

  • 非对称加密:使用公钥-私钥对在 insecure 网络上安全交换数据。简而言之,数据使用公钥加密并使用私钥解密,将数据扰乱成只有相应私钥的所有者才能解密的无意义乱码。优点是什么?传输的密钥相关数据受到保护,防止中间人攻击。
  • 对称加密:计算开销较小,在规模上更适合Web服务器,然后用于会话的其余部分。这种密码学方法依赖于双方使用相同的共享密码密钥来加密和解密数据。但是使双方拥有相同的密钥意味着生成密钥的密钥相关值必须首先通过安全通道(即使用非对称加密通道)安全共享。

使用SSL/TLS,您两全其美:最初配对非对称加密的增强安全性,以及会话其余部分的对称加密的速度和性能。

等等。所有这些事情都在后台发生,网站访问者和其他潜在客户不知情。那么,这些人如何知道连接是安全的?通过查看URL开头的HTTPS指示(以及在某些客户端(如Firefox)中浏览器网址栏附近的挂锁)。

图片来源:SectigoStore.com博客。Firefox中的挂锁和HTTPS确认该网站使用PKI保护传输的数据。

这就是公钥基础设施如何工作以保护传输中的数据。但是PKI可以为您的业务做更多事情。这是我们接下来要探索的内容,因为我们的后台之旅尚未结束。在我们回到数字世界的舞台之前,还有一些事情要探索。所以,请继续阅读。

PKI如何工作以保护您的组织?8个实际示例

既然我们从技术角度了解了PKI如何工作,现在是时候发现公钥基础设施如何以更实际的意义帮助保护您组织的通信和敏感数据的几种方式:

  1. 保护您的销售点(POS)设备在传输中的数据。
  2. 验证您网络的物联网设备并保护其数据在传输中的完整性。
  3. 通过基于PKI的身份验证智能卡保护对您组织场所的物理访问。
  4. 通过不安全的连接保护基于云的服务和通信免受MitM攻击和数据泄漏。
  5. 验证软件材料清单(SBOM)中列出的软件组件。
  6. 保护微服务和容器之间的通信。
  7. 使用安全外壳(SSH)无密码身份验证保护对机器的访问。
  8. 为API、设备、应用程序和服务启用更安全的相互身份验证(mTLS)。

在我们关于PKI用途和应用的专门文章中找到更多关于PKI如何工作为零信任安全铺平道路的实际示例。

PKI需要适当的密钥和证书管理才能有效

您刚刚了解了PKI如何工作以促进数据机密性、完整性和真实性,以及它如何通过不安全的网络保持通信安全。在许多方面,公钥基础设施是互联网安全的MVP。

但是,有一个问题:没有强大的密钥和证书管理,PKI无法发挥其魔力。管理密钥并保持其安全对PKI来说是一件大事。这就像要求魔术师在没有帽子和魔杖的情况下表演他的把戏。

因此:

  • 仅从信誉良好的CA和经销商(如SectigoStore.com)购买您的数字证书。它将保证您安全的信任链和坚固的数字证书。
  • 安全存储您的私钥。所有代码签名证书的私钥必须在FIPS 140-2 Level 2兼容的硬件(如USB令牌或HSM)上生成和存储。对其他密钥应用相同的安全标准。
  • 妥善管理您的证书。像Sectigo证书管理器这样的软件自动化证书续订和管理。它加速证书吊销,并允许您实施适应每种情况的策略。

遵循这些提示,PKI将像魔法一样工作。

关于公钥基础设施内部工作机制的最终思考

我们窥探PKI如何工作幕后的大游览到此结束。我们希望本文回答了您的问题,这样您就再也不用想知道"公钥基础设施如何工作?”

现在,轮到您了。使用X.509数字证书通过PKI保护您的组织、系统和客户。在AI驱动的攻击增加泄露机会的时代,PKI可以帮助各种规模的企业保护其资产并保护客户的隐私,同时提供强大的身份验证系统。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计