🎯 恺撒密码
简介
恺撒密码(Caesar Cipher)是一种最简单的替换加密技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。
历史背景
这种加密方法是以罗马共和国时期恺撒的名字命名的,据苏维托尼乌斯记载,恺撒曾用此方法与他的将军们进行秘密通信。当时使用的是偏移量为 3 的恺撒密码。
加密原理
当偏移量是 3 的时候,所有的字母 A 将被替换成 D,B 变成 E,以此类推,X 变成 A,Y 变成 B,Z 变成 C。此为循环移位。
偏移量:3
A → D B → E C → F D → G E → H
F → I G → J H → K I → L J → M
K → N L → O M → P N → Q O → R
P → S Q → T R → U S → V T → W
U → X V → Y W → Z X → A Y → B
Z → C
示例
明文:HELLO WORLD
偏移量:3
密文:KHOOR ZRUOG
明文:THE QUICK BROWN FOX
偏移量:3
密文:WKH TXLFN EURZQ IRA
数学公式
加密:E_n(x) = (x + n) mod 26
解密:D_n(x) = (x - n) mod 26
其中 x 是字母的数字表示 (A=0, B=1, ..., Z=25)
n 是偏移量
安全性
恺撒密码的安全性非常低,原因如下:
- 只有 25 种可能的偏移量(1-25),可以轻易暴力破解
- 可以通过频率分析轻松破解
- 不应用于任何需要真正安全性的场景
变体
- ROT13:偏移量为 13,加密和解密使用相同的操作
- 凯撒移位:可以向前或向后移位任意数量
应用场景
- 密码学入门教学
- 简单的谜题和游戏
- CTF 比赛的入门题目
- 儿童密码游戏