公钥密码学如何保护加密货币与互联网安全
要点速览
- •公钥密码学使用数学上相互关联的密钥对——可自由共享的公钥和受保护的私钥——在各方无需事先交换秘密的情况下实现安全加密、数字签名和身份认证。
- •RSA 和椭圆曲线密码学成为推动公钥密码学广泛商业应用的主流算法家族,保护从 HTTPS 网站、电子邮件到软件更新和加密货币网络的各类系统。
- •NIST 于 2024 年 8 月发布首批三个最终版后量子加密标准——FIPS 203、FIPS 204 和 FIPS 205——这些标准基于旨在抵御量子计算攻击的新数学方法。
- •许多政府机构计划在 2030–2035 年前弃用 RSA-2048 和 ECC P-256,因为足够强大的量子计算机可能解决这些经典算法所依赖的数学问题。
- •“现在收集、以后解密”威胁使攻击者能够今天收集加密数据,并期待在量子能力成熟后解密,因此即使大规模量子机器尚未出现,向后量子标准过渡也已十分紧迫。

公钥密码学构成了现代数字安全的基础。它通过使用一对密钥——一个公钥和一个私钥——使数据能够在各方无需事先共享秘密的情况下完成加密、签名和认证。公钥是这对密钥中可共享的一半:任何人都可以查看或使用它,但只有持有匹配私钥的人才能解锁加密数据,或验证面向其本人的签名。
这一机制使开放互联网和区块链上的安全、可信通信与交易成为可能,支撑着从 HTTPS 网站到加密货币钱包的各类应用。如今几乎每一次安全网页会话、移动应用连接和区块链交易都依赖这项技术。
公钥密码学通过消除秘密密钥交换的需求,有效解决了互联网的根本信任问题。正如 Whitfield Diffie 和 Hellman 于 1976 年的突破性发明所展示的那样,每个用户生成一对唯一密钥,只共享公钥部分,并将私钥部分保密。用公钥加密的数据只能由相应私钥解密,而用私钥创建的签名只能用公钥验证。次年推出的 RSA,以及 20 世纪 80 年代中期发展起来的椭圆曲线密码学(ECC),成为将这一模式带入广泛商业应用的两大算法家族,用于保护网络流量、电子邮件、软件更新,并最终保护加密货币网络。
工作原理
公钥密码学也称为非对称加密,依赖于密钥对在计算上相互关联的数学算法。每一对密钥都包含一个公钥(公开共享)和一个私钥(保密保存)。
据 MDN Web Docs 表示:“Public-key cryptography is a cryptographic system in which keys come in pairs. One key (the private key) is kept secret while the other is made public.”
一个有用的类比是邮箱:公钥相当于邮箱地址(任何人都可以投递信件),而私钥相当于邮箱钥匙(只有所有者才能取出内容)。
这两个密钥承担不同但互补的功能:
**加密与解密:**任何人都可以使用公钥加密消息,但只有对应的私钥才能解密。在电子邮件或即时通信应用中,用户发布自己的公钥,以便联系人加密只有密钥持有者才能读取的消息。
**数字签名:**用户用自己的私钥对数据签名,其他人则使用公钥验证该签名。每一笔加密货币交易都依赖私钥生成数字签名,随后由网络使用公钥进行验证。同样的原则也适用于文档或软件包签名——任何人都可以使用签名者的公钥确认其真实性。
这些角色相互补充:在加密模式下,公钥用于加密,私钥用于解密;在签名场景中,私钥用于签名,公钥用于验证。这种设计允许公钥被广泛发布——甚至附加在电子邮件中或托管在网站上——而私钥则始终受到严格保护。
公钥与私钥
安全专家强调,尽管公钥可以自由共享,但私钥会授予对关联公开地址中存储资金的完全访问权限。在区块链网络中,公钥类似于账户号码:所有参与者都会看到它,或看到其哈希版本,作为钱包地址。相比之下,私钥必须不惜一切代价妥善保管,因为任何拥有私钥的人都可以冒充真正的所有者。
加密、签名与区块链
公钥密码学支撑着许多日常技术。当访问安全网站(HTTPS)时,浏览器会获取服务器的公钥证书,并使用它建立加密通道。只有服务器的私钥才能解密浏览器发送的会话密钥,从而防止窃听或篡改。网站的公钥作为 TLS 证书的一部分可以公开获取,而匹配的私钥则保存在安全服务器上。
在电子邮件中,S/MIME 和 PGP 等协议允许任何人使用收件人的公钥加密消息;只有收件人可以用其私钥打开这些消息。
无密码登录系统(FIDO2/WebAuthn)同样依赖公钥密码学。用户设备会为每个网站生成一对公钥/私钥,而网站始终只能看到公钥。安全机构指出,当私钥未被泄露时,现代身份认证可具备抗钓鱼能力。FIDO 标准采用标准公钥密码学技术提供抗钓鱼认证:不会传输密码,用户改为证明自己持有私钥。
在区块链系统中,公钥发挥着关键作用。加密货币钱包生成一对密钥,从公钥派生出钱包地址(通常通过哈希实现),并共享该地址,以便他人可以转入资金。公钥充当接收加密货币或数据的地址,而私钥则赋予对相关数字资产的控制权。当用户发起交易时,钱包用私钥对交易签名,网络再使用公钥验证签名——证明该交易确实来自账户持有人。随着主要区块链网络每天处理数百万笔交易,这一验证循环持续不断,并以全球规模运行。
在加密货币之外,公钥也是数字证书和身份系统的基础。组织会签发将公钥绑定到个人或服务器的证书,使第三方能够相信某个密钥确实属于其声称的用户。证书颁发机构(CAs)管理这些证书,并可撤销已被泄露的密钥。这一框架被称为公钥基础设施(PKI),它使得通过受信任的 CAs 验证公钥成为可能。
公钥为何重要,以及如何保护它们
由于任何人都可以使用公钥进行加密或验证,公钥会被广泛共享,有时甚至发布在全球目录中或记录在区块链上。然而,安全性仍完全取决于私钥是否保持机密。RSA 和椭圆曲线密码学(ECC)等现代密码系统的设计目标,是使从公钥推导出私钥在计算上不可行。由于单向数学函数(陷门函数)的存在,仅凭公钥实际上不可能恢复私钥。
不过,所有这些保障都建立在谨慎的密钥管理之上。被盗或泄露的私钥会破坏整个安全模型:原本应保持私密的数据会暴露,签名也可能被伪造。正如 Encryption Consulting 所强调的,组织必须将私钥存储在硬件安全模块(HSMs)或安全保险库中,定期轮换密钥,并采用强算法。
后量子转型
2026 年的一个主要趋势,是为量子计算机的到来准备公钥密码学。RSA 和 ECC 等经典公钥算法依赖于数学难题——整数分解和离散对数——而足够强大的量子计算机可能解决这些问题。这引发了“现在收集、以后解密”的担忧:攻击者可以在今天收集并存储加密数据,期待在量子能力成熟后解密,这意味着威胁时间线实际上早于大规模量子机器的出现。NIST 警告称,管理员应开始向能够抵御量子攻击的新标准过渡。2024 年 8 月,NIST 发布了首批三个最终版后量子加密标准——FIPS 203(基于用于密钥建立的 CRYSTALS-KYBER)、FIPS 204(基于用于数字签名的 CRYSTALS-Dilithium)和 FIPS 205(基于用于无状态哈希签名的 SPHINCS+)。
到 2030–2035 年,许多机构计划弃用 RSA-2048 和 ECC P-256。因此,“公钥”的含义可能会发生变化:未来的公钥将更大,并基于新的数学方法,但核心原则不变——一个密钥公开,一个密钥私密。为后量子密码学(PQC)做准备,今天的公钥规模已经在增大。新的 PQ 签名方案可能产生 2,420 字节的签名和 1,312 字节的公钥,而 RSA 签名为 256 字节。
专家观点:通过公钥建立信任
网络安全专家强调,公钥能够在各方无需共享秘密的情况下实现信任。每一笔区块链交易都会使用公钥验证签名确实由相应私钥的持有者创建。公钥本身无需保密;它充当身份证明。
这就是为什么攻击者不能仅凭知道公钥就窃取资金。即使公钥、钱包地址以及所有交易签名对所有人可见,只要私钥保持私密,资金仍然安全。
公钥密码学还将信任转移到数学和标准之上。政府和行业机构维护算法和协议,以确保公钥确实属于其声称的所有者。诸如 FIDO Alliance 的组织目前鼓励用基于公钥的“passkeys”取代密码——这类加密凭证旨在防范网络钓鱼。
来自 IBM 和 Ledger Academy 的更多资源进一步说明了非对称密码学如何保护区块链生态系统。
结论
公钥是非对称加密密钥对中非机密的一半,设计上用于公开共享。它允许任何人向密钥持有者发送加密数据,或验证已签名消息。公钥密码学支撑着从 HTTPS 到加密货币的一切应用,使各方能够在没有预共享秘密的情况下进行安全通信。
现代安全标准和研究仍围绕公钥密码学不断演进,包括开发后量子安全算法和抗钓鱼身份认证。其基本原则依然不变:公钥公开,私钥私密,这种二元结构从设计上保障数据安全。因此,公钥密码学在 2026 年仍是在线安全不可或缺的基础,为网页和区块链生态系统提供可扩展、可信赖的加密与数字签名。
术语表
**非对称密码学:**一种使用密钥对(公钥和私钥)的密码系统。用一个密钥加密的数据只能由另一个密钥解密。
**私钥:**非对称密钥对中保密的一半,需保持机密,用于解密消息或创建数字签名。
**数字签名:**使用私钥生成的加密证明,可用相应公钥验证,以确保数据完整性和来源。
**PKI(公钥基础设施):**由数字证书和认证机构组成的系统,用于将公钥绑定到实体。
**后量子密码学:**旨在抵御量子计算攻击的新型密码算法,因为量子计算威胁许多现有公钥算法。
常见问题
公钥用于什么?
公钥用于加密数据和验证签名。任何人都可以使用它向密钥持有者发送加密消息,或确认使用相应私钥签名的消息是真实的。
公钥与私钥有何不同?
公钥公开共享;私钥保密保存。公钥支持加密和签名验证,而私钥支持解密和签名。
有人能从我的公钥推导出我的私钥吗?
在现代密码学中(例如 RSA、ECC),从公钥推导私钥在计算上不可行。安全性依赖单向数学问题,这意味着即使公钥已知,也无法计算出私钥。
为什么公钥在区块链中很重要?
在区块链中,公钥(或其哈希)充当钱包地址,并在网络中标识账户。发送交易时,发送方用私钥签名;其他节点使用公钥验证签名,从而确保只有合法所有者授权了转账。
如果公钥被泄露会怎样?
由于公钥本来就设计为可共享,因此被他人知道并无危害。系统安全取决于私钥是否保持机密。即使有人获得公钥,没有相应私钥也无法解密数据或伪造签名。
免责声明:本文仅用于教育目的,不构成财务或投资建议。有关加密协议或未来标准的任何信息均应独立核实。