Luke a Pro

Luke Sun

Developer & Marketer

🇺🇦
EN||

非对称加密 (RSA 与 ECC)

| , 1 minutes reading.

非对称加密 (RSA 与 ECC)

引言:公开的挂锁

想象一个所有人都可以复制的挂锁。你可以用它来锁上一个盒子,但一旦锁上,只有持有物理钥匙的主人才能打开它。甚至那个锁上盒子的人自己也打不开。

这就是 非对称(公钥)加密

  • 公钥 (Public Key): 向全世界公开。用于 加密
  • 私钥 (Private Key): 严格保密。用于 解密

算法要解决什么问题?

  • 密钥交换: 两个从未见过面的人,如何在黑客监视下协商出一个秘密的 AES 密钥?
  • 身份验证: 我如何证明这条消息真的是由“Luke”发出的?

两位核心选手

1. RSA (Rivest-Shamir-Adleman)

  • 数学原理: 基于 大质数分解 的极端困难性。将两个 1024 位的质数相乘很容易,但如果给你乘积,超级计算机也需要数年时间才能找回原始的质数。
  • 地位: 经典的工业标准。非常可靠,但为了安全,需要非常长的密钥(2048 位以上)。

2. ECC (椭圆曲线密码学)

  • 数学原理: 基于有限域上椭圆曲线的代数结构。
  • 为什么更好: 它能以 更短的密钥提供与 RSA 相同的安全性。一个 256 位的 ECC 密钥,强度相当于 3072 位的 RSA 密钥。
  • 地位: 现代标准。被比特币、以太坊和现代移动应用广泛采用。

典型业务场景

  • ✅ SSL/TLS 证书: 当你在 Chrome 中看到锁头图标时,浏览器就在使用 RSA/ECC 验证网站身份并交换 AES 密钥。

  • ✅ SSH 密钥: 使用 id_rsa 无需密码即可登录服务器。

  • ✅ 数字签名: 在法律文件 (DocuSign) 或软件包上签名,以证明其未被修改过。

  • ❌ 加密大文件: 永远不要 使用 RSA/ECC 加密 1GB 的文件。它的速度极慢且极其耗费内存。正确做法是用 AES 加密文件,再用 RSA/ECC 加密那个小小的 AES 密钥。

性能与复杂度总结

  • RSA: 验证(公钥)快,签名/解密(私钥)慢。
  • ECC: 比 RSA 更高效,尤其适合计算能力有限的移动设备。

小结:一句话记住它

“非对称加密是安全的‘前门’。它允许世界向你发送秘密并验证你的身份,同时确保只有你的私钥才能开启真相。”