加密界的“老大哥”:RSA 算法与数学家的陷阱

前两期我们聊了“当红炸子鸡” ECC 和“身份证” SSL 证书。今天,我们必须向一位“老兵”致敬。

它就是 RSA

在 1977 年之前,加密是一件很麻烦的事:如果你想给盟友发密信,你们必须先私下见面约定一个密码。但在互联网上,你不可能和亚马逊服务器先见一面再买东西。

RSA 的出现改变了一切。它是人类历史上第一个非对称加密算法。简单说,它发明了两把钥匙:一把用来锁(公钥),一把用来开(私钥)

虽然现在 ECC 正在接班,但 RSA 依然支撑着全球半数以上的安全连接。今天我们就来拆解一下,这三位麻省理工的天才(Rivest, Shamir, Adleman)是如何用小学数学原理设计出世界级迷宫的。

💡 核心原理
RSA 的安全感来源于一个数学事实:把两个大质数相乘很简单,但把一个大数分解回两个质数,难如登天。

1. 对称 vs 非对称:从“一把钥匙”到“两把钥匙”

为了理解 RSA 的伟大,我们先看看以前是怎么加密的。

  • 对称加密 (AES 等)

    • 房间只有一把钥匙。
    • 你把数据锁进箱子,把箱子寄给朋友。但你必须想办法把钥匙也寄给朋友
    • Bug:如果邮递员偷配了钥匙,秘密就泄露了。
  • 非对称加密 (RSA)

    • 你有一把公钥(像一把这就锁上的挂锁,大家都能拿)。
    • 你有一把私钥(像开锁的钥匙,只有你自己有)。
    • 玩法:朋友想给你发秘密,就找你要个挂锁(公钥),把箱子锁上寄给你。
    • 安全:路上没人能打开箱子,因为只有你手里那把私钥能开锁。连朋友自己锁上后都打不开!

2. 数学家的陷阱:大数分解难题

RSA 是怎么做到“公钥能锁,私钥能开”的?这背后是一个精妙的数学陷阱。

第一步:找两个质数

我们随便找两个质数,比如 p = 61q = 53
算出它们的乘积 n = 61 × 53 = 3233

这个 n (3233) 就是那个“锁”的核心部分。它会作为公钥公开给大家。

第二步:容易的乘法 vs 困难的除法

  • 正向:我问你 61 × 53 等于几?你拿计算器按一下,1秒钟出结果 3233
  • 逆向:如果我只告诉你 3233,问你它是哪两个质数乘出来的?
    • 对于 3233 这种小数字,你或许能试出来。
    • 但如果 n 是一个 2048 位(600 多位十进制数) 的天文数字呢?

这就是 RSA 的根基:
目前人类最强的计算机,要想把一个 2048 位的 RSA 整数分解回两个质数,可能需要几百万年。只要你算不出来那两个质数,你就永远猜不到私钥。

3. RSA 的两副面孔:加密与签名

RSA 有两个完全相反的用法,支撑了互联网的信任体系。

用法一:公钥加密,私钥解密(保密通信)

  • 场景:你给银行发信用卡密码。
  • 流程:你拿银行的公钥把密码加密 -> 发送 -> 银行用私钥解密。
  • 结果:只有银行能看到你的密码,黑客截获了也没用。

用法二:私钥签名,公钥验签(身份认证)

  • 场景:银行给你发通知,你要确认这真是银行发的,不是骗子。
  • 流程:银行用私钥对文件盖个章(数字签名) -> 你拿银行的公钥去验证这个章。
  • 原理:因为私钥只有银行有,如果公钥能解开这个签名,说明这文件一定出自拥有私钥的那个人(银行)。
  • 结果:防伪造,防抵赖。

4. 为什么 RSA 正在慢慢退休?

虽然 RSA 设计很完美,但它毕竟是 1977 年的技术,现在显得有点“老态龙钟”了。

  1. 钥匙太大了
    为了安全,RSA 的密钥长度必须越来越长。现在普遍要求 2048 位4096 位。传输和存储都占地方。

    • 对比:ECC 只需要 256 位就能达到同样的效果。
  2. 速度太慢了
    RSA 涉及大数幂运算,计算速度比对称加密(AES)慢几百倍,比 ECC 也慢不少。

    • 所以现在的 HTTPS(TLS)握手,通常只用 RSA/ECC 交换一次临时密钥,真正传数据时还是用 AES。
  3. 量子计算机的阴影
    秀尔算法(Shor’s Algorithm)理论上可以快速分解大数。一旦量子计算机成熟,RSA 的数学根基就会瞬间崩塌。

5. 总结

尽管 RSA 效率不如 ECC,但它依然是兼容性最好的加密算法。直到今天,如果你用一些老旧的设备或系统,可能不支持 ECC,但一定支持 RSA。

它是数学与计算机科学结合的巅峰之作。它告诉我们:在这个数字世界里,保护秘密的不是厚重的钢板,而是人类智商的极限。


加密界的“老大哥”:RSA 算法与数学家的陷阱
https://blog.zlirui.netlib.re/加密界的“老大哥”:RSA 算法与数学家的陷阱/
作者
小瑞子吖
发布于
2025年11月30日
许可协议