🏠 目录 CH1 概论 CH2 风险管理 CH4 技术体系 CH5 鉴别 CH6 访问控制 CH7 防火墙 古典密码 哈希函数 牛津密码练习
密码学基础 · 牛津练习册

🎓 牛津古典密码学练习

动手做题学三种古典密码 · 凯撒 / 替换 / 维吉尼亚 · 重点:操作方法与破解思路

📚 学习进度
0%

🎯学习目标

这份资料是牛津大学密码学练习册(Encryption Worksheets 前 6 页)。核心是亲手加密、解密、破解。读完你应能:

  1. 用"密钥字母"做凯撒加密,并理解 解密密钥 = 26 − 加密密钥
  2. 用替换表加解密,知道破解靠频率分析、关键词常打头。
  3. 用关键词做维吉尼亚加解密,理解为何频率分析失效。
  4. 掌握维吉尼亚破解的两条路:先猜密钥长度(卡西斯基)已知明文攻击(crib)
📌 怎么用这份练习 先读《古典密码-入门讲义》理解原理 → 手动加密自己的名字 → 手动解密验证规律 → 试着破解练习册密文。

1凯撒密码(Caesar Cipher)🎮

1.1 方法:密钥是一个字母

把一段文字的所有字母统一向后移动若干位密钥是一个字母,表示移动的位数(A=0 位移):

密钥字母含义
A不移动(移 0 位)
D移动 3 位
M移动 12 位
Z移动 25 位(也可理解为向后移 1 位)

例子:CAESAR 用位移 PRPTHPG

🎮 凯撒解密器(拖动滑块即时解密)

在框里输入密文,拖动滑块选解密位移,实时还原明文。提示:练习册问题1.2 让你发现 解密密钥 = 26 − 加密密钥

解密位移 = 11(密钥 L)
密文表 ▶
明文表 ▶
🧪 试一试 加密用 P(移 15),解密就要移 26−15=11 位(密钥 L)。输入密文 RPTHPG、解密位移 11,应还原成 CAESAR
加密密钥A...P...Z
位移0...15...25
解密位移0...11...1
图1 · 加密位移 + 解密位移 = 26(绕一圈回到原点)

1.3 破解:频率分析

凯撒很容易破解:密文中最常见的字母 往往对应 明文中最常见的字母,而明文最常见字母通常是该语言里最常见的(英语中 E 最常见)。辅助技巧:

  • 单字母单词:很可能是 AI
  • 重复字母:如 letter 中的 "tt"。
  • 常见双字母单词:of、to、in、is。
✍️ 练习册问题 1.5 给了密文 TRVJRI TZGYVIJ RIV HLZKV VRJP KF TIRTB,让你用频率分析破解出加密密钥(自己动手试)。

2代换(替换)密码(Substitution Cipher)

2.1 方法:一整张替换表

把明文中的每一个字母都替换成另一个字母,需要一张完整的字母替换表

明文CDEHINPRSTY
密文XJLAZEVKHOM
图2 · 牛津练习册替换表(部分)

按这张表:THIS SENTENCE IS ENCRYPTEDOAZH HLEOLEXL ZH LEXKMVOLJ。要让密码真正可用,必须为整个 26 个字母都提供替换关系。

2.2 解密:用逆映射反查

用替换表的逆映射。比如密文 O 对应明文 T,看到 O 就还原成 T。

🔁 小练习(问题 2.1b) 已知密文 JLXKMVO OAZH 按上表生成,用逆映射可反查得明文 ENCRYPT THIS

2.3 破解:仍是频率分析

和凯撒一样,替换密码保留了单字母频率特征(同一明文字母总变成同一密文字母),所以仍可频率分析破解。破解一段含全部 26 字母的密文时:

  • 先统计字母频率,把最高频密文字母猜成 E、T、A 等。
  • 观察单字母单词(A/I)、常见短词。
⭐ 重要提示(问题 2.2) 练习册提示"表格第一行开头几个字母会拼成一个单词"——这是常见的密钥构造方式:用一个关键词打头,再排其余字母。

3维吉尼亚密码(Vigenère Cipher)⭐

3.1 方法:关键词重复展开 + 逐位凯撒

用一个单词作为密钥(如 KEY):把密钥重复展开到与明文等长,密钥每个字母都当作一次凯撒位移,加密对应位置的明文。

密钥KEYKEYKEYKEY
明文CRYPTOGRAPHY
密文MVWZXMQVYZLW
图3 · 密钥 KEY 加密 CRYPTOGRAPHY → MVWZXMQVYZLW(逐位凯撒,按位公式 Ci=(Pi+Ki) mod 26)
  • 加密 C:用密钥 K(移 10 位)→ M
  • 加密 H:用密钥 E(移 4 位)→ L

加密时通常去掉空格和标点,可用"维吉尼亚方阵表"查表加密。

✍️ 练习册问题 3.1 用密钥 CODE 加密 TO BE OR NOT TO BE(去掉空格),逐位用 C/O/D/E… 做凯撒,前三位已给出 VFR…

3.2 解密

知道密钥词,对每一位做反方向凯撒移位即可。问题 3.3 让你思考:把 MVWZXMQVYZLW 还原回 CRYPTOGRAPHY 该用什么密钥词(练"解密密钥与加密密钥的关系")。

3.3 为什么频率分析失效?

⭐ 关键 同一个明文字母在不同位置,因为对齐的密钥字母不同,会被加密成不同的密文字母,所以单字母频率特征被摊薄,直接频率分析失效。

🎮 小练习:把密码与其密钥形式连起来

先点左边一个密码,再点右边对应的密钥形式。连对会变绿。

📌 密码
凯撒
替换
维吉尼亚
🎯 密钥形式
一个关键词(重复展开)
一个字母(位移量)
一整张替换表

4维吉尼亚的破解思路(进阶)

虽然难,但维吉尼亚仍可破解,主要有两条路:

① 先猜密钥长度(卡西斯基测试:看重复片段间距) ② 按密钥长度分组——每组其实是同一个凯撒位移 ③ 对每组分别做频率分析,逐位破解出密钥
图4 · 破解流程:猜长度 → 分组 → 分组频率分析

4.1 路线一:先猜密钥长度再分组

  1. 猜密钥长度:卡西斯基测试 / 重合指数法——观察密文中重复片段的间距。
  2. 知道长度后,把密文按密钥长度分组——每组其实是用同一个凯撒位移加密的!
  3. 对每组分别做频率分析,逐位破解密钥。

4.2 路线二:已知明文攻击(Crib)

🔑 crib 公式 用已知明文片段(crib)和对应密文反推密钥:密钥字母 =(密文字母 − 明文字母)mod 26

练习册问题 3.3(c) 给了密文 OINCHHFIAFYASZGUIVJCRKIWLLKJ,并告诉你明文开头是 WELLDONE。用前 8 位密文减去 WELLDONE 即可反推出密钥的循环段。

🤔 思考题 如果 crib 不在文本开头,这方法还能用吗?——,但要尝试不同的对齐位置(滑动 crib)。

5三种密码总结对比

密码密钥操作破解方法
凯撒一个字母(位移)整体平移穷举 25 种 + 频率分析
替换一张替换表逐字映射频率分析(保留单字母频率)
维吉尼亚一个关键词多表(按位变化)先猜密钥长度再分组频率分析 / crib 已知明文
⭐ 核心规律 密码强度的提升,本质是让同一明文字母在不同位置呈现不同密文行为,从而削弱频率特征。

6与 CH4 密码技术的关联

古典密码虽然不安全,但其中蕴含的思想是理解现代密码的基础:

🔑

密钥空间

凯撒25 → 替换26! → 现代AES密钥2¹²⁸,安全性取决于密钥空间足够大且不可穷举
🔀

多表/混淆

维吉尼亚的"多表替换"思想,演化为现代分组密码的扩散与混淆
📊

频率特征

现代密码要求密文统计上像随机噪声,彻底消除频率特征
➡️

下一步

现代对称密码 DES/AES、公钥密码 RSA——见 CH4 信息安全技术体系
🔗 课程关联 这部分是密码学基础,对应 CH4 的密码技术。古典密码里"频率特征""密钥空间""单向变换"的思想,是理解现代密码的基础。

📄 配套 古典密码-入门讲义 📘 配套 哈希函数-入门课 🔗 关联 CH4 技术体系

🎯自测(点击展开参考要点)

凯撒密码密钥 D、M、Z 各表示移动几位?
A=0位(不移),D=3位,M=12位,Z=25位(也可看作向后移1位)。密钥就是一个字母,对应位移数。
加密用密钥 P(移15),解密该用什么密钥?规律是什么?
解密移 26−15=11 位,即密钥 L。规律:解密密钥 = 26 − 加密密钥(加密位移 + 解密位移 = 26)。
替换密码为什么仍能被频率分析破解?破解时有什么常见提示?
同一明文字母总变同一密文字母,保留单字母频率。常见提示:替换表第一行开头几个字母常拼成一个关键词(用关键词打头构造密钥)。
维吉尼亚为什么让频率分析失效?怎么破解?
关键词逐位做不同凯撒,同一明文字母在不同位置变成不同密文,频率被摊薄。破解:先用卡西斯基测试猜密钥长度,再按长度分组(每组同一位移)分别频率分析。
已知明文攻击(crib)如何反推维吉尼亚密钥?
密钥字母 =(密文字母 − 明文字母)mod 26。用已知明文片段对齐密文逐位相减即得密钥循环段;若crib不在开头,需滑动尝试不同对齐位置。
✅ 都能答上来? 那就动手做练习册的加解密和破解题,再继续学 哈希函数CH4 密码技术

📝强化题库(20 选择 + 20 填空 = 40 题)

覆盖本讲全部知识点。选择题点选即时判分;填空题输入后点"检查"或"显示答案"。

已答 0/20 答对 0 正确率
已检查 0/20 答对 0