安全与加密:概览
Published: Sun Feb 15 2026 | Modified: Sat Feb 07 2026 , 1 minutes reading.
安全与加密:概览
引言:“间谍”问题
在开放的网络中,任何人都可以监听你的流量。你如何在不被黑客发现的情况下,将信用卡号发送给服务器?你如何知道与你交谈的人正是他们自称的那个人?
密码学 (Cryptography) 是利用数学算法保护信息的科学。它已经从简单的字符移位(凯撒密码)演变为涉及大质数和椭圆曲线的复杂数学证明。
CIA 三要素
每种安全算法都旨在实现以下一个或多个目标:
- 机密性 (Confidentiality): 只有授权人员才能读取数据 (AES, RSA)。
- 完整性 (Integrity): 确保数据在传输过程中没有被篡改 (MD5, SHA, Merkle Tree)。
- 可用性 (Availability): 确保系统正常运行(通过 限流、DDoS 过滤 等手段保护)。
选型框架:怎么选?
- 追求速度还是便捷?
- 加密大文件: 使用 对称加密 (AES)。它比非对称加密快 1000 倍以上。
- 交换密钥: 使用 非对称加密 (RSA/ECC) 或 迪菲-赫尔曼 (Diffie-Hellman)。
- 证明所有权?
- 使用 数字签名(私钥签名,公钥验证)。
- 证明海量数据的完整性?
- 使用 默克尔树 (Merkle Tree) 来验证数据块,而无需下载整个数据集。
常见算法速览
- 8.1 AES: 日常加密的“黄金标准”,速度极快。
- 8.2 RSA/ECC: 保护初始连接的“大师锁”。
- 8.3 Diffie-Hellman: 允许两个陌生人在不安全信道上协商出秘密的“魔法盒”。
- 8.5 Merkle Tree: 被比特币和 Git 使用的“哈希之哈希”,用于证明数据未被破坏。
选型对比速查
| 目标 | 推荐算法 | 安全强度 | 性能 |
|---|---|---|---|
| 海量数据加密 | AES-256 | 极高 | 非常快 |
| 安全密钥握手 | ECC (椭圆曲线) | 高 (优于 RSA) | 快 |
| 兼容性握手 | RSA | 高 (需要大长度密钥) | 慢 |
| 完整性校验 | SHA-256 | 抗碰撞 | 快 |
| 防篡改账本 | Merkle Tree | 分布式信任 | 高吞吐 |
一句话心法
“加密让窃听的成本高到无法承受,而签名让伪造在数学上变得绝无可能。”
