Lesson 03 · 约 20 分钟
密码学入门:对称、非对称与哈希
开场:为什么密码学是地基
还记得第 1 课的 CIA 吗?机密性靠加密、完整性靠哈希、防抵赖靠数字签名—— 三样东西全是密码学。上午卷的密码题每年必考,下午卷的方案设计题(「请设计一个加密传输方案」) 更是直接拿它当答题模板。今天的课学完,你就拥有了下午卷的大招。
一、对称加密:一把钥匙开一把锁
加密和解密用同一把密钥,就像一把钥匙开一把锁。特点:快,适合加密大量数据。 代表算法:AES(现代标准)、DES(56 位密钥,已不安全)、3DES、IDEA、国产 SM4。
它的死穴是密钥分发:甲乙要通信,先得把同一把钥匙安全地送到对方手里——送钥匙的路上被偷了,一切白搭。 怎么解决?靠非对称加密(见下)。
二、非对称加密:公钥私钥两把锁
每个用户有一对钥匙:公钥(可以公开,谁都能拿到)和私钥(必须保密,只有自己知道)。两条铁律:
- 公钥加密 → 私钥解密:别人用你的公钥加密发给你,只有你能解开。解决保密。
- 私钥签名 → 公钥验签:你用私钥「盖章」,别人用你的公钥验证。解决认证 + 防抵赖。
代表算法:RSA、ECC、国产 SM2。特点:慢,不适合加密大数据—— 所以实战中两者搭配:对称加密数据,非对称加密那把对称密钥(这叫「数字信封」思路,先记住结论)。
口诀(对称 vs 非对称):对称快、非对称慢;对称加密数据,非对称传密钥。
口诀(非对称密钥方向)⚠️:公钥加密 → 私钥解(保密);私钥签名 → 公钥验(认证+防抵赖)。
口诀(非对称密钥方向)⚠️:公钥加密 → 私钥解(保密);私钥签名 → 公钥验(认证+防抵赖)。
三、哈希:内容的一滴「指纹」
哈希函数把任意长度的输入,算成固定长度的输出(如 SHA-256 输出 256 位)。 三个特性是考试最爱:
- 单向不可逆:从输出反推输入在计算上不可行——所以哈希不是加密(加密可逆,哈希不可逆,注意这个坑);
- 相同输入必得相同输出:同一份文件任何时候算,指纹都一样;
- 雪崩效应:输入改一个比特,输出面目全非。
用途:完整性校验(发文件时附上哈希,收方一算对不上就是被改过)、口令存储(只存哈希不存明文)。 算法:MD5(128 位,已不安全)、SHA-1(已不安全)、SHA-256(现代标准)、国产 SM3。
口诀(哈希 vs 加密):哈希不是加密——加密可逆,哈希不可逆。
口诀(算法淘汰与标准):淘汰 DES / MD5 / SHA-1;现代 AES / SHA-256;国产 SM2 · SM3 · SM4。
口诀(算法淘汰与标准):淘汰 DES / MD5 / SHA-1;现代 AES / SHA-256;国产 SM2 · SM3 · SM4。
四、数字签名:私钥盖章,公钥验章
把前三样串起来就是下午卷的送分模型。发送方(比如银行)要发一条转账确认,流程是:
- 对消息算哈希;
- 用自己的私钥加密这个哈希 = 「签名」;
- 消息 + 签名一起发出;
- 接收方用银行的公钥解出哈希 1,再对收到的消息重算哈希 2;
- 两个哈希相等 ⇒ 消息没被改(完整性)+ 确实出自银行(不可否认性)。
五、动手练一练(点击选项,立刻看对错)
Q1 · 下列哪项属于对称加密算法?
答案 B。AES 是对称加密(现代标准)。RSA、ECC、SM2 都是非对称的。记忆:对称「A 系」(AES)+ 国产 SM4;非对称「R 系」(RSA、ECC、SM2)。
Q2 · 甲用乙的公钥加密一条消息后发送。谁能够解密?
答案 B。公钥加密、私钥解密:乙的私钥只有乙有,所以只有乙能解。这正是「公钥可以满天飞,私钥打死不外借」的原因。
Q3 · 下列关于哈希函数的描述,正确的是?
答案 B。哈希是确定性的:同一输入必得同一输出。A 错在「必」——哈希存在碰撞(不同输入可能撞出相同输出);C 违反单向性;D 违反定长输出。
Q4 · 甲用自己的私钥对消息签名后发送。乙要用什么来验证签名?
答案 C。私钥签名、公钥验签。B 是干扰项:证书里确实装着公钥,但「验证」直接用的工具是公钥本身。
Q5 · 网站需要保证用户提交的订单数据「未被篡改且商家无法抵赖」,最适合采用?
答案 B。「防篡改」(完整性)+「防抵赖」(不可否认性)= 数字签名(哈希 + 私钥签名)。C、D 是攻击手法,用来当干扰项的。
Q6 · Which of the following is a symmetric encryption algorithm?(英文题)
答案 B。AES 是对称加密。英文题套路:考的就是你认不认识算法名和术语,词汇表密码学速查表里的英文词每天过一遍。
附加题(下午卷风格)· 点击展开答案
某银行需要向客户传输一份大文件,要求:① 传输过程保密;② 客户能验证文件未被篡改;③ 银行无法抵赖曾发出该文件。请给出方案。
① 保密:用对称加密(如 AES)加密文件——数据量大,对称加密快;对称密钥再用银行的非对称加密方式安全送达(数字信封思路)。
② 防篡改:对文件计算哈希,客户收到后重算比对。
③ 防抵赖:银行用私钥对哈希签名,客户用银行公钥验签。
答题格式就这个套路:需求 → 技术 → 理由,每一条各占一行,得分点就到手了。
② 防篡改:对文件计算哈希,客户收到后重算比对。
③ 防抵赖:银行用私钥对哈希签名,客户用银行公钥验签。
答题格式就这个套路:需求 → 技术 → 理由,每一条各占一行,得分点就到手了。
六、今日任务(约 40 分钟)
- 精读第 3 章(30 分钟):教材精读 · 第 3 章 密码学,重点看对称/非对称/哈希与数字签名流程。
- 睡前默写(5 分钟):写一句话总结每种工具「解决什么问题」——对称:保密;哈希:防篡改;签名:防抵赖防冒充。
- 给家人讲(5 分钟):用「寄保险箱」或「盖章」的比喻把数字签名讲明白——能讲出来,才是真会了。