🔐 一、什么是加密(Encryption)
加密是一种把“可读的信息(明文)”转换为“不可读的密文”的技术, 目的是:
即使数据被截获,也没人能看懂内容,除非拥有正确的密钥。
👉 形象地说:
就像把信装进一个只有你和收件人能打开的保险箱里。
🧩 二、加密的基本原理
加密通常有两个过程:
-
加密(Encryption): 明文 + 密钥 → 密文
1Hello123 + 🔑 → 4ab3c29f... -
解密(Decryption): 密文 + 密钥 → 明文
14ab3c29f... + 🔑 → Hello123
密钥(Key)是整个加密体系的核心,没有它就无法正确还原数据。
🧠 三、加密的两大类型
1️⃣ 对称加密(Symmetric Encryption)
- 加密和解密使用同一把密钥。
- 优点:速度快。
- 缺点:密钥传输不安全(如果密钥被别人拿到,就能解密)。
📦 常见算法:
- AES(Advanced Encryption Standard)
- DES(Data Encryption Standard)
- ChaCha20
🧮 举个例子:
|
|
📌 应用场景:
- 本地文件加密
- HTTPS 连接中的数据加密阶段
- 数据库存储加密字段
2️⃣ 非对称加密(Asymmetric Encryption)
- 使用两把密钥: 公钥(Public Key) 和 私钥(Private Key) 一对密钥互为“锁和钥匙”关系。
- 用公钥加密的内容,只能用私钥解密。 用私钥加密(签名)的内容,只能用公钥验证。
📦 常见算法:
- RSA(最常见)
- ECC(椭圆曲线加密)
- ElGamal
🧮 举个例子:
|
|
📌 应用场景:
- 登录系统(比如 GitHub SSH Key)
- HTTPS(TLS 握手阶段)
- 数字签名与证书认证
🧰 四、常见加密算法
| 类型 | 算法 | 简介 |
|---|---|---|
| 对称 | AES | 现代加密标准,安全高效 |
| 对称 | DES | 早期算法,现已不安全 |
| 对称 | ChaCha20 | Google 推广的快速加密算法 |
| 非对称 | RSA | 最常见的公钥算法 |
| 非对称 | ECC | 更高效、更安全的新算法 |
| 混合 | TLS | 网络通信中结合两种加密方式使用 |
🌍 五、现实中的加密应用
| 场景 | 加密类型 | 举例 |
|---|---|---|
| 网站 HTTPS 通信 | 混合(RSA + AES) | 浏览器访问网站 |
| 密码管理器 | 对称 | KeePass / 1Password |
| 邮件签名 | 非对称 | PGP / S/MIME |
| 文件加密 | 对称 | ZIP / AES-256 |
| 数字货币 | 非对称 | 比特币使用椭圆曲线加密 |
🧮 六、浏览器中的简单加密示例
现代浏览器支持 crypto.subtle 进行 AES 加密:
|
|
🧭 七、总结一句话
加密 = “让别人看不懂,但我能解开的数据保护方式。”
- 🔑 可逆(只要有密钥)
- 💡 保证隐私
- 🚀 用于通信、存储、认证