来币圈
一文读懂公钥密码学 (PKC)

一文读懂公钥密码学 (PKC)

作者:佚名2019年1月31日交易所教程
Binance 币安

Binance 币安 邀请码

注册时填写邀请码 BN566 享受 20% 手续费减免

邀请码:BN566
立即注册
一文读懂公钥密码学 (PKC)
目录

要点

  • 公钥密码学 (PKC) 又称非对称密码学,使用一对在数学上相互关联的密钥(一个公钥、一个私钥)来保护数据并验证身份。
  • 公钥可以自由共享,而私钥必须始终保密。使用公钥加密的数据,只能由与之匹配的私钥解密。
  • RSA 是应用最广泛的 PKC 算法。当前标准要求密钥长度至少为 2,048 位;对于需要在 2030 年以后仍保持安全的系统,建议使用 3,072 位或更长的密钥。
  • PKC 是大多数互联网安全基础设施的基石,涵盖 TLS/HTTPS、电子邮件加密以及加密货币钱包等领域。
  • 2024 年 8 月,NIST 最终确定了三项后量子密码学标准,旨在抵御量子计算机的攻击。这标志着从长远来看,系统将从 RSA 和 ECDSA 向新标准过渡。



简介

每当您访问安全网站、发送加密邮件或对加密货币交易进行签名时,公钥密码学都在后台默默运行。它是现代安全领域最重要的进步之一,大多数人每天都在与之交互,却并未察觉。

公钥密码学 (PKC) 又称非对称密码学或非对称加密,是一种使用两把在数学上相互关联的密钥来加密数据、验证身份并对消息进行身份验证的系统。与使用单一共享密钥的对称加密不同,PKC 将加密与解密功能分离到一对密钥上,使得从未见过面的双方也能进行安全通信。

公钥密码学如何运作?

PKC 系统中的每位用户都会生成一对密钥:一把公钥,可以公开分享给任何人;以及一把私钥,必须始终严格保密。这两把密钥通过数学上的单向函数相互关联。从私钥推导出公钥很容易,但反向推导在计算上几乎不可能实现。

当有人想向您发送加密消息时,他们会使用您的公钥对消息进行加密。只有您的私钥(且仅由您持有)才能解密。这解决了对称密钥密码学的核心问题:如何在不受保护的信道上安全地分发共享密钥。

RSA:最常见的 PKC 算法

RSA 由 Rivest、Shamir 和 Adleman 于 1977 年提出,至今仍是应用最广泛的非对称算法之一。其原理是将两个大质数相乘,生成一个公有模数,该模数构成公钥的基础,而对应的私钥则由这些质数推导而来。在密钥足够长的前提下,将该模数分解回其质因数在计算上极其困难,而这种难度正是 RSA 安全性的来源。

当前安全标准要求 RSA 密钥长度至少为 2,048 位。对于需要在 2030 年以后仍保持安全的系统,美国国家标准技术研究所 (NIST) 建议使用 3,072 位或更长的密钥。此前常见的 1,024 位密钥长度已不再被视为足够安全。

椭圆曲线密码学 (ECC)

椭圆曲线密码学 (ECC) 在短得多的密钥长度下,即可实现与 RSA 相当的安全性。256 位的 ECC 密钥能够提供大致相当于 3,072 位 RSA 密钥的保护。这种高效性使 ECC 成为区块链网络、移动设备以及 TLS 握手等对性能敏感的应用场景中的首选方案。

数字签名与身份验证

PKC 还支持数字签名,这是一种用于证明消息或文档源自特定主体且未被篡改的方法。其流程与加密相反:发送方使用其私钥对消息进行签名,任何人都可以使用发送方的公钥来验证该签名。

在实际应用中,签名过程需要先对消息计算加密哈希值(即内容的固定长度指纹),然后使用私钥对该哈希值进行加密。接收方使用发送方的公钥解密该哈希值,并独立对收到的消息进行哈希计算。如果两个哈希值匹配,则签名有效,证明消息真实且未被篡改。

公钥密码学的应用

互联网安全:TLS 和 HTTPS

传输层安全协议 (TLS)——取代了已弃用的安全套接层 (SSL)——使用 PKC 在浏览器与网页服务器之间建立安全连接。在 TLS 握手过程中,服务器会出示包含其公钥的证书。客户端使用该证书协商会话密钥,随后双方在会话剩余时间内切换为更快的对称加密。这种混合模式将非对称密钥交换的安全性与对称加密的高性能结合在一起。

电子邮件加密

PGP (Pretty Good Privacy) 和 S/MIME 等标准使用公钥密码学对电子邮件内容进行加密,并对发送方进行身份验证。接收方公开其公钥;发送方使用该公钥对消息进行加密;只有接收方的私钥才能解密。

加密货币钱包和区块链

PKC 是加密货币网络建立所有权并授权交易的基础。创建钱包时,会生成一对密钥:公钥通过哈希运算转换为可分享的钱包地址,而私钥用于对交易进行签名。比特币和以太坊使用椭圆曲线数字签名算法 (ECDSA),该算法可生成紧凑且可验证的签名,网络节点仅需使用对应的公钥即可完成验证。

关键规则:只有私钥持有者才能授权从钱包中转出资金。如果私钥丢失,将永久且不可逆地失去对这些资金的访问权限。

数字身份与安全投票

PKC 机制也逐步应用于数字身份系统(在不暴露个人数据的情况下,由私钥证明身份),以及需要同时具备可验证性与选票保密性的电子投票协议。

后量子密码学

RSA 和 ECDSA 的安全性依赖于一些数学问题(整数分解与离散对数问题),这些问题对经典计算机而言非常困难,但在理论上可能受到运行 Shor 算法的量子计算机的攻击。具备足够规模的量子计算机有可能破解当前的 PKC 方案。

2024 年 8 月,NIST 最终确定了三项专为抵御量子攻击而设计的后量子密码学 (PQC) 标准:

  • FIPS 203 (ML-KEM):基于模块格的密钥封装机制,用于替代基于 RSA 的密钥交换
  • FIPS 204 (ML-DSA):基于模块格的数字签名算法,用于替代 ECDSA
  • FIPS 205 (SLH-DSA):基于哈希的无状态数字签名算法,用于替代现有的签名方案

美国国家安全局 (NSA) 发布的《商业国家安全算法套件 2.0》(CNSA 2.0) 要求,新系统须在 2027 年 1 月前采用量子安全算法,并在 2035 年前完成全部基础设施的迁移。建议处理敏感长期数据的组织立即开始制定过渡计划,因为攻击者可能已经在窃取当下的加密数据,待量子硬件成熟后再进行解密——这一策略称为“先窃取,后解密”。

公钥密码学的局限性

PKC 存在若干实际限制:

  • 性能:由于涉及复杂的数学运算,非对称加密的速度显著慢于对称加密。大多数现实系统中的做法是:仅将 PKC 用于密钥交换或身份验证,随后切换为对称密码进行大规模数据传输。
  • 密钥管理:在大规模场景下,安全地生成、存储、分发和撤销密钥非常复杂,往往需要信任证书颁发机构 (CA) 来验证某个公钥确实属于声称拥有该公钥的实体。这种中心化信任点本身也存在一定风险。
  • 私钥安全:整个系统依赖于私钥始终保密。私钥的丢失或被盗会破坏 PKC 所提供的全部保障;在加密货币场景下,也不存在任何恢复机制。

常见问题 (FAQ)

公钥与私钥有何区别?

公钥是一种可分享的标识符,他人可以用它加密消息或验证您的签名。私钥是仅由您持有的密钥值,用于解密使用您的公钥加密的消息,或对数据进行签名。两者在数学上相互关联:在当前技术条件下,从公钥推导出私钥在计算上几乎不可能实现。

为什么 RSA 密钥长度至关重要?

更长的 RSA 密钥会以指数级提高破解加密(通过分解密钥模数)所需的计算工作量。1,024 位的密钥已不再被视为安全。目前行业最低标准为 2,048 位;对于需要在 2030 年以后仍保持安全的数据,建议使用 3,072 位或更长的密钥。需要注意的是,更长的密钥也伴随着一种权衡:在密钥生成和加密操作过程中,会带来更高的计算成本。

TLS 如何使用公钥密码学?

在 TLS 握手过程中,服务器会出示包含其公钥的数字证书。客户端使用该公钥安全地协商对称会话密钥(可通过加密一个随机值,也可通过 Diffie-Hellman 密钥交换)。一旦会话密钥建立完成,双方将切换为对称加密以提高效率。PKC 负责初始身份验证和密钥交换;对称加密则负责大规模数据传输。

什么是后量子密码学?为什么它至关重要?

后量子密码学是指旨在同时抵御经典计算机和量子计算机攻击的非对称算法。对于当前的 RSA 和 ECDSA 等标准所依赖的数学问题,量子计算机在运行 Shor 算法后,其求解速度比经典计算机快得多。NIST 于 2024 年 8 月最终确定了首批三项后量子标准(ML-KEM、ML-DSA、SLH-DSA)。在具备密码学相关能力的量子计算机问世之前,各组织和政府现已开始推进迁移计划。

加密货币钱包如何使用公钥密码学?

当您创建加密货币钱包时,会生成一对 PKC 密钥。您的公钥(或其哈希衍生值)会成为您的钱包地址,可以分享给任何想向您转账的人。您的私钥用于授权交易:它会对转出交易进行签名,网络则会根据您的公钥验证这些签名。如果您的私钥丢失或被盗,将无法恢复对该钱包中资金的访问权限。

结语

公钥密码学是数字安全的基石之一。通过在一对数学上相互关联的密钥之间分离加密与解密功能,它使陌生人之间的安全通信成为可能,为互联网的信任基础设施提供支持,并为去中心化金融系统中的所有权奠定基础。

该领域如今正处于一个拐点。2024 年后量子标准的正式确立表明,行业必须开始从 RSA 和 ECDSA 迁移。这并非因为它们在如今已被攻破,而是为了应对未来量子硬件可能使其过时的局面。了解 PKC 的运作机制,是掌握未来发展方向的第一步。

免责声明:本文内容按“原样”提供,仅作一般资讯及教育用途,不构成任何陈述或保证。本文不应解释为财务、法律或其他专业建议,且未推荐您购买任何特定产品或服务。您应自行向合适的专业顾问寻求建议。如内容由第三方投稿,请注意相关观点属于第三方投稿人,不一定反映币安学院的观点。数字资产价格可能会波动。您的投资价值可能会下跌或上涨,且投资本金可能无法收回。您对自己的投资决策全权负责,币安学院对您可能遭受的任何损失概不负责。欲知详情,敬请参阅我们的使用条款风险提示币安学院条款

数据与内容来源: Binance 免责声明: 本文所引用的 Binance 平台数据及观点仅供参考,加密资产投资具有高风险,请投资者根据自身风险承受能力理性决策。

Binance 币安

Binance 币安 邀请码

注册时填写邀请码 BN566 享受 20% 手续费减免

邀请码:BN566
立即注册

相关文章