Ron Rivest 如何影响了实用密码学:RSA、数字签名以及那些使得安全商务和 HTTPS 成为常态的安全工程选择。

Ron Rivest 是一个你很少在安全圈外听到的名字,但他的工作悄然塑造了线上“普通”安全的感觉。只要你登录过网银、用卡购物过,或相信某个网站就是你想访问的那个网站,你就得益于 Rivest 帮助普及的一种思路:实用可用的密码学,而不是只存在于纸上的理论。
当成千上万陌生人需要互相交互时,安全通信变得困难。这不仅仅是保持消息私密——还包括证明身份、防止篡改,以及确保支付不能被伪造或悄然转走。
在小范围内,你可以事先共享一个秘密码。在互联网上,这种方法会崩溃:你不能和每个网站、存储服务以及你可能使用的服务预先共享秘密。
Rivest 的影响与一个更大的想法有关:只有当安全成为默认时,它才会被广泛采用。这需要三者协同工作:
这是一篇高层、非数学化的导览,说明 RSA 如何融入实用安全栈——加密、签名、证书与 HTTPS——以及为何该栈使得安全商务和通信成为常态而非例外。
在 RSA 出现之前,大多数安全通信像是共用日记的锁:双方需要相同的秘密密钥来加解密消息。这就是对称密码学——快速且有效,但它假设你已经有一种安全的方式来共享该秘密。
公钥密码学则颠倒了这种设置。你发布一个可以公开的密钥(公钥),任何人都可以用它来保护发给你的消息,而你保管另一个只有你能用来打开消息的密钥(私钥)。数学上很巧妙,但它重要的原因很简单:它改变了秘密的分发方式。
想象一家有一百万顾客的在线商店。使用对称密钥,商店需要和每位顾客分别共享一个秘密。
这会带来一堆棘手问题:
当通信是点对点且离线时,你可能面对面交换秘密或通过信使传递。在开放的互联网上,这种方法行不通。
把发送贵重物品通过邮寄想象成。使用对称密钥时,你和收件人必须先共享同一把实体钥匙。
使用公钥时,收件人可以寄给你一把开着的挂锁(他们的公钥)。你把物品放入箱子,锁上挂锁,然后寄回去。任何人都可以拿着挂锁,但只有收件人有能打开它的钥匙(他们的私钥)。
这正是互联网所需要的:一种在不事先约定密码的情况下,能够与陌生人安全交换秘密、并可扩展的方法。
公钥密码学并非从 RSA 开始。1976 年 Whitfield Diffie 和 Martin Hellman 描述了两个人如何在不事先共享秘密的情况下安全通信,这一重大概念性转变奠定了方向。
一年后(1977 年),Ron Rivest、Adi Shamir 与 Leonard Adleman 提出了 RSA,并很快成为人们可以实际部署的公钥系统。不是因为它是唯一聪明的想法,而是因为它契合真实系统的混乱需求:实现直观、适配多种产品且易于标准化。
RSA 使两种关键能力广泛可用:
这两者看似对称,但解决不同问题。加密保护机密性;签名保护真实性和完整性——证明一条消息或软件更新确实来自宣称的来源。
RSA 的力量不仅在学术上。它是当时计算资源下可实现的,并且作为组件能融入产品而非停留在研究原型阶段。
同样重要的是,RSA 易于标准化与互操作。随着关于密钥长度、填充与证书处理的常用格式与 API 出现,不同厂商的系统可以协同工作。
正是这种实用性——比任何单一技术细节更重要——帮助 RSA 成为安全通信与安全商务的默认构件。
RSA 加密的核心,是当你只知道接收者公钥时,仍能保持消息机密。你可以广泛发布该公钥,任何人都能用它加密数据,只有对应的私钥能解密。
这解决了一个现实问题:你不需要在开始保护信息之前进行秘密会面或预共享密码。
既然 RSA 能加密数据,为什么不全部用它来处理电子邮件、照片、数据库导出?因为 RSA 计算开销大且有严格的大小限制:你只能加密到与密钥大小相关的有限长度,频繁使用比现代对称算法慢得多。
这一现实促成了应用密码学中最重要的模式之一:混合加密。
在混合设计中,RSA 保护一个小的秘密,而更快的对称密码保护主体数据:
这个设计主要考虑性能与实用性:对称加密在大数据上速度更快,而公钥加密擅长安全地完成密钥交换。
许多现代系统更偏好不同的密钥交换方式(尤其是 TLS 中的临时 Diffie–Hellman 变种),以便获得更强的前向保密和更好的性能特性。
但 RSA 的模板——用公钥保护会话秘密,用对称密码保护负载——仍然是安全通信的常见范式。
数字签名是在线版的防篡改封印和身份核验。即便签名消息中的一个字符被改动,签名也会失效。如果签名能用签名者的公钥验证,你就有有力证据表明是谁批准了它。
这两者容易混淆,因为它们常常一起传输,但它们解决不同的问题:
你可以对一个人人可读的公告进行签名(例如公开声明)。你也可以对某些内容仅加密而不签名(私有但无法确认发送者)。很多系统同时采用两者。
一旦 RSA 使公钥签名实用化,企业就能把信任从电话和纸质转为可验证的数据:
人们常把签名描述为提供不可抵赖性——阻止签名者合理地否认自己签过名。实际上,这是一个目标,而非保证。密钥被盗、共享账户、设备安全薄弱或不清晰的政策都会模糊归属。
数字签名是强有力的证据,但现实世界中的问责还需要良好的密钥管理、审计日志和操作规程。
RSA 使得公钥密码学在实际部署中变得可行:任何人都可以用你的公钥对数据加密,而只有你能用私钥解密。更重要的是,RSA 支持数字签名,它让其他人能够验证数据确实来自你且未被篡改。
这种组合(加密 + 签名)符合真实产品的需求并且可以标准化,从而推动其广泛应用。
对称加密速度很快,但前提是双方已经共享了相同的密钥。
在互联网规模上,这会引出棘手问题:
包括 RSA 在内的公钥密码学改变了密钥分发的问题:人们可以公开发布公钥。
混合加密是一个实用模式:公钥加密保护小的秘密(会话密钥),而对称加密保护大量数据。
典型流程:
这是因为 RSA 计算开销大且有长度限制,而对称密码更适合处理大数据。
加密回答的是:“谁能读取这些内容?”
数字签名回答的是:“谁批准了这份内容,且内容是否被篡改?”
在实践中:
TLS 证书将域名(例如 example.com)与一个公钥绑定。它让浏览器验证你连接的服务器所出示的公钥是否被授权用于该域名。
如果没有证书,攻击者可以在连接建立时替换自己的公钥,从而使加密“看起来正常”——但实际上是跟错误的一方在通信。
浏览器和操作系统预装了一组受信任的根证书颁发机构(CAs)。大多数网站使用链式结构:
在 HTTPS 连接过程中,浏览器会验证:
如果这些检查通过,浏览器就接受该站点的公钥确实属于该域名。
在现代 TLS 中,密钥协商通常使用**临时 Diffie–Hellman(ECDHE)**而不是 RSA 直接传输密钥。
主要原因:前向保密。
RSA 仍可用于证书或签名,但握手阶段大多转向 ECDHE 以提供更强的安全性。
常见的运维失败包括:
数学可能是安全的,但真实系统常因密钥处理、配置和补丁管理而失败。
密钥管理涵盖密钥的整个生命周期:
如果攻击者窃取了私钥,就可能解密受保护的数据(在某些设计中),或伪造服务并签署恶意内容——因此围绕密钥的操作控制与算法同等重要。
它通过加密来保护不共享私有网络的各方之间的连接与消息:
加密并不能单独解决欺诈或争议问题——这些需要风控和流程——但它确实让支付流程更难被拦截或篡改。