凯撒密码在线编码器和解码器

The Caesar cipher — also called the shift cipher, additive cipher, or rotation cipher — shifts each letter by a fixed number of positions in the alphabet to encrypt a message. Use this free tool to encode, decode, or brute-force crack any Caesar-shifted text instantly. Supports all 26 shift values with automatic key detection — no signup required.

Caesar Cipher Shift Values Reference Table

Each row shows the complete ciphertext alphabet for a given shift value. Shift 13 (ROT13) is the most commonly used variant.

ShiftPlaintextCiphertext Alphabet
1ABCDEFGHIJKLMNOPQRSTUVWXYZBCDEFGHIJKLMNOPQRSTUVWXYZA
2ABCDEFGHIJKLMNOPQRSTUVWXYZCDEFGHIJKLMNOPQRSTUVWXYZAB
3ABCDEFGHIJKLMNOPQRSTUVWXYZDEFGHIJKLMNOPQRSTUVWXYZABC
4ABCDEFGHIJKLMNOPQRSTUVWXYZEFGHIJKLMNOPQRSTUVWXYZABCD
5ABCDEFGHIJKLMNOPQRSTUVWXYZFGHIJKLMNOPQRSTUVWXYZABCDE
6ABCDEFGHIJKLMNOPQRSTUVWXYZGHIJKLMNOPQRSTUVWXYZABCDEF
7ABCDEFGHIJKLMNOPQRSTUVWXYZHIJKLMNOPQRSTUVWXYZABCDEFG

显示第 1–7 行,共 25 个位移

ROT Cipher Variants

Caesar cipher has several popular fixed-shift variants. Each applies rotation to a different character set.

Frequently Asked Questions About Caesar Cipher

什么是凯撒密码(Caesar Cipher)?

凯撒密码是一种单表替换密码,通过将明文中的每个字母沿字母表固定位移若干位来加密消息。位移量为 3 时,A 变为 D,B 变为 E,Z 循环回绕变为 C。凯撒密码又称移位密码加法密码旋转密码凯撒位移,得名于古罗马将军 Julius Caesar——据历史学家 Suetonius 记载,他在高卢战争(公元前 58–50 年)期间使用位移量为 3 的加密方式来保护敏感军事通信。

尽管结构简单,凯撒密码在历史上具有重要意义:它是西方文明中最早有据可查的加密技术之一,也是所有现代替换密码在概念上的基础。如今,它被广泛用作密码学入门课程的教学工具,以及地理寻宝、密室逃脱等益智游戏中的谜题。

凯撒密码的工作原理

该密码遵循一条规则:将每个字母替换为字母表中其后固定位数的字母。这个固定数字称为位移值(也称为密钥旋转量)。字母表被视为循环排列,Z 之后为 A。

加密公式

单个字母的加密过程可用数学表达式表示为:

E(x) = (x + n) mod 26

其中 x 是明文字母的数字位置(A = 0,B = 1,… Z = 25),n 是位移值。mod 26 运算确保结果在 26 个字母的范围内循环。

解密公式

解密过程通过减去位移量来还原:

D(x) = (x − n + 26) mod 26

模运算前加 26 是为了防止当密文字母位于字母表前部(位置值小于位移量)时出现负数。

逐步加密示例

以下是使用位移量 4 加密单词 ATTACK 的过程:

步骤明文位置 (x)x + 4mod 26密文
1A044E
2T192323X
3T192323X
4A044E
5C266G
6K101414O

结果: ATTACK → EXXEGO(位移量 4)

注意,相同的明文字母总是映射到相同的密文字母——两个 T 都变为 X。这种可预测的一对一映射正是单表密码容易被频率分析攻破的原因。

逐步解密示例

解密过程完全相反。已知密文 EXXEGO 和位移量 4,对每个字母的位置减去 4:

步骤密文位置 (x)x − 4 + 26mod 26明文
1E4260A
2X234519T
3X234519T
4E4260A
5G6282C
6O143610K

结果: EXXEGO → ATTACK(位移量 4)

公式中加 26 是为了防止密文字母位于字母表中位移起点之前时出现负数。

如何识别凯撒密文

在尝试破解密码之前,判断是否面对凯撒密码很有帮助。以下几个特征可帮助识别凯撒加密文本:

  • 仅含字母。 经典凯撒密码保留空格和标点符号,只转换字母字符。如果密文仅包含标准字母且单词间距正常,则可能是凯撒加密。
  • 单词长度不变。 由于密码逐字母操作而不重新分组,单词边界和长度与明文完全相同。一个 5 字母的单词加密后仍为 5 字母。
  • 频率分布整体偏移但形状相似。 密文的字母频率分布与英语相似,但发生了位移。绘制频率图时,熟悉的"ETAOIN SHRDLU"模式会出现偏移,偏移量即为位移值。
  • 无异常字符。 与摩尔斯电码(点和横线)、Base64(字母数字 + /=)或波利比奥斯方阵(数字对)不同,凯撒密文看起来像普通文本,只是无法理解。

本站的密码识别器工具可以自动检测给定密文是否可能是凯撒加密,并建议可能的位移值。

全部 25 种位移值

由于英语字母表有 26 个字母,共有 25 个有效位移值(位移量 1 至 25)。位移量为 0 或 26 时文本保持不变。这个极小的密钥空间是凯撒密码极易被破解的主要原因。

本页上方的位移参考表展示了每个位移值对应的完整密文字母表。常见的位移值包括:

  • 位移量 1 — 奥古斯都密码;变换程度最小,有时用于简单谜题。
  • 位移量 3 — 凯撒的原始位移,历史上最具意义的值。
  • 位移量 10 — 常用于教学示例,因为偏移量便于心算。
  • 位移量 13(ROT13) — 最著名的变体。因为 13 恰好是 26 的一半,应用 ROT13 两次可还原原文,具有自逆性。这一特性使 ROT13 特别适合在互联网论坛和 Usenet 讨论组中隐藏剧透、谜题答案和笑话包袱。
  • 位移量 25 — 等效于向后位移 1;产生反向邻接映射(与位移量 1 组合则形成 A↔Z)。

处理数字、标点及扩展字符

经典凯撒密码只转换拉丁字母表中的 26 个字母,空格、数字和标点通常保持不变。不过,存在几种处理非字母字符的扩展变体:

  • ROT5 用于数字。 对数字 0–9 应用位移量 5(循环回绕),即 0→5,1→6,……,5→0。通常与 ROT13 组合为 ROT18,同时对字母位移 13,对数字位移 5。
  • ROT47 用于 ASCII。 将旋转扩展至 94 个可打印 ASCII 字符(编码 33–126),每个字符位移 47 位。这样数字、标点和字母都会被转换,产生更彻底的混淆效果。与 ROT13 一样,ROT47 也是自逆的。
  • 自定义字母表扩展。 某些实现将字母表扩展为包含数字和常见符号,建立更大的字符集(如 36 或 62 个字符),并对扩展集进行模运算。

大多数教学和益智应用中,除非明确说明,否则默认使用标准 26 字母版本。

相关经典密码

凯撒密码属于一个随着时间推移不断演变的替换密码家族:

  • Atbash 密码 — 一种希伯来镜像密码,将字母表倒序排列(A↔Z,B↔Y)。比凯撒密码早几个世纪,曾用于编码希伯来《圣经》中的名字。
  • ROT13 — 位移量为 13 的凯撒密码。其自逆特性使其在互联网上的日常文本混淆中独具实用价值。
  • 仿射密码 — 凯撒密码的推广,使用公式 E(x) = (ax + b) mod 26,其中 a 和 b 为密钥。凯撒密码是 a = 1 时的特例。
  • 维吉尼亚密码(Vigenère Cipher) — 使用关键字对每个字母位置应用不同的凯撒位移,形成多表替换密码,在长达 300 年内抵御了密码分析。
  • 关键字密码 — 根据秘密关键字重新排列密文字母表,而非简单位移,将密钥空间从 25 扩大到约 26!(阶乘)种可能。
  • 博福特密码 — 维吉尼亚密码的互逆变体,关键字字母从明文位置中相减而非相加。

延伸阅读

想深入了解凯撒密码的密码分析、历史和代码实现?请参阅我们的详细指南: