Cyber Security Academy · 课时

非对称加密:RSA 与椭圆曲线

理解公钥和私钥的密钥对、RSA 的基本原理,以及 ECC 为什么效率更高。

第 2 / 4 课13 个步骤

非对称加密:RSA 与椭圆曲线 是 CoddyKit 上的免费 Cyber Security Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cyber Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cyber Security Academy 课程共包含 4 节课。

什么是非对称加密

非对称加密使用一对在数学上相关联的密钥:公钥(可以自由共享)和私钥(必须保密)。使用公钥加密的数据只能使用私钥解密,反之亦然。

RSA:基础算法

RSA(Rivest–Shamir–Adleman,1977)基于对大素数进行因式分解的困难性。安全性取决于密钥长度:RSA-2048 是目前的最低要求;RSA-4096 用于高安全性场景。RSA 比对称加密慢,因此用于密钥交换,而不是加密大量数据。

RSA 密钥生成

RSA 密钥生成:

# Generate 4096-bit RSA key pair:
openssl genrsa -out private.pem 4096
openssl rsa -in private.pem -pubout -out public.pem

# View key details:
openssl rsa -in private.pem -text -noout

椭圆曲线密码学(ECC)

ECC 使用小得多的密钥长度即可提供与 RSA 等效的安全性。256 位 ECC 密钥的安全性相当于 3072 位 RSA 密钥。更短的密钥意味着更快的运算速度和更低的带宽消耗,这对 TLS 握手和移动设备至关重要。

常见椭圆曲线

广泛使用的曲线:

  • P-256 (secp256r1) — NIST 标准,用于 TLS
  • X25519 — 由 Bernstein 设计,密钥交换效率高,没有专利方面的顾虑
  • Ed25519 — EdDSA 签名方案,用于 SSH 密钥

混合加密

在实际应用中,非对称加密和对称加密会结合使用:

  1. 非对称加密:使用接收方的公钥加密一个随机生成的对称密钥
  2. 对称加密:使用该密钥加密实际数据

TLS 就是这样工作的:RSA/ECDH 协商会话密钥;AES 加密会话数据。

Diffie-Hellman 密钥交换

Diffie-Hellman (DH) 允许双方在不安全的信道上建立共享秘密,而无需交换密钥。共享秘密用于派生对称会话密钥。ECDH(椭圆曲线 DH)是现代变体,用于 TLS 1.3。

前向保密

完美前向保密(PFS):每个会话都使用临时 DH 密钥,并在使用后丢弃。即使服务器的私钥后来遭到泄露,过去记录的会话也无法被解密。TLS 1.3 强制要求使用 PFS;在 TLS 1.2 中应寻找 ECDHE 密码套件。

RSA 用于加密与签名

RSA 有两种用途:

  • 加密:使用公钥加密 → 只有私钥持有者能够解密
  • 签名:使用私钥签名 → 任何拥有公钥的人都可以验证真实性

加密使用 OAEP 填充;签名使用 PSS 填充。绝不要将 PKCS#1 v1.5 用于加密。

后量子威胁

运行 Shor 算法的量子计算机可能破解 RSA 和 ECC。NIST 正在制定后量子密码学算法的标准(用于密钥交换的 CRYSTALS-Kyber,以及用于签名的 CRYSTALS-Dilithium)。迁移需要数年时间,现在就应开始盘点依赖加密技术的系统。

密钥管理

非对称密钥需要安全管理:在受信任的硬件上生成密钥,使用口令或 HSM 保护私钥,定期轮换密钥,并通过 CRL/OCSP 撤销已泄露的密钥。私钥丢失意味着失去对所有加密数据的访问权限。

快速检查:非对称加密

哪种方法结合了非对称加密和对称加密,使用非对称加密交换密钥,再使用对称加密来加密数据?

课程回顾

非对称加密使用公钥/私钥对。RSA 久经验证但速度较慢;ECC 使用更短的密钥即可提供等效的安全性。混合加密将两者结合,以满足实际应用需求。Diffie-Hellman 支持安全的密钥交换;ECDHE 提供前向保密。量子威胁正在逼近,请关注 NIST 的 PQC 标准化进展。

免费开始

用 AI 导师学习 Cyber Security Academy — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
76
课程
303

常见问题解答

「非对称加密:RSA 与椭圆曲线」课时是免费的吗?

是的 — 「非对称加密:RSA 与椭圆曲线」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cyber Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cyber Security Academy 课程共包含 4 节课。

「非对称加密:RSA 与椭圆曲线」这节课中我会学到什么?

理解公钥和私钥的密钥对、RSA 的基本原理,以及 ECC 为什么效率更高。 你通过在浏览器中直接运行的动手代码来练习 Cyber Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Cyber Security Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Cyber Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「非对称加密:RSA 与椭圆曲线」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Cyber Security Academy 课中编写并运行代码吗?

能。每节 Cyber Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 对称加密:AES 与流密码
  2. 非对称加密:RSA 与椭圆曲线
  3. 哈希函数:SHA-256 及更进一步
  4. 数字签名与证书
← 返回 Cyber Security Academy