凯撒密码 / ROT13 在线转换
按位移量把字母表整体错位:加密就是向后错 n 位,解密就是向前错 n 位,ROT13 是位移 13 的特例。不确定原文用了多少位移时,可以直接列出全部 25 种候选逐一比对。汉字、数字与标点保持原样,大小写各自保留。
凯撒密码把字母表整体错位 n 位:加密向后错,解密向前错,ROT13 是位移 13 的特例(26 个字母错 13 位再错 13 位回到原点,所以加解密是同一个操作)。它出现在字谜、CTF 入门题和防止一眼被看到的场合,本工具附 25 种位移的暴力破解对照表与字母映射表。
它的安全性是零:位移只有 25 种,逐个试几秒就能恢复原文,没有任何密钥空间可言。汉字、数字与标点不在 A~Z 范围内会原样保留,所以中英混排只有英文部分被加密。解出来是乱码就换位移再试,25 种都读不通说明原文用了别的密码体系。
这个工具解决你的问题了吗?
提交后会把工具名、你的输入与当前结果发送到服务器;请勿填写身份证号、手机号等隐私信息。
AI 助手 会结合你当前的输入与结果回答
追问会再次把当前输入与结果发送到服务器;请勿填写隐私信息。
使用步骤
- 选加密或解密,设位移量 1~25(ROT13 快捷键即位移 13)。
- 粘贴文本,结果即时更新;对照表显示 A~Z 各自变成什么。
- 不知道位移时点暴力破解,25 种候选里挑读得通的那条。
- 记住它只适合谜题与演示,保护真实内容请用 AES。
计算原理与示例
基本用法
选「加密」或「解密」,把位移量设成 1~25 的整数,结果即时更新。下方的字母对照表会显示当前位移下 A~Z 各自变成什么,比读文字描述更直观。位移量可以用输入框两侧的加减按钮逐步调。
ROT13 与 ROT47 的区别
ROT13 是位移 13 的特例:字母表 26 个字母,错 13 位再错 13 位正好回到原点,所以「加密」和「解密」是同一个操作,本站把它做成了位移 13 的快捷键。ROT47 处理的不是字母而是全部 94 个可打印 ASCII 字符(含数字与符号),也是自逆运算,常用来把网址、代码片段变成不可读的一串。
为什么位移密码不安全
位移密码只有 25 种可能,逐个试一遍即可恢复原文——真人在几秒内就能完成,脚本更是毫秒级。它没有任何密钥空间可言,只能用于字谜、演示或者「防止一眼被看到」的场合,绝不能用来保护任何真实信息。
口径:只变换 A~Z 与 a~z 并保留大小写,其余字符(数字、标点、空格、汉字)原样保留;位移量归一化到 1~25(26 的整数倍等于未位移),解密即按负数位移处理。ROT47 覆盖可打印 ASCII 33~126 共 94 个字符。
代码示例
JavaScript 位移函数(解密即负位移)
const shift = (s, n) => s.replace(/[a-z]/gi, (ch) => {
const base = ch <= "Z" ? 65 : 97;
return String.fromCharCode((ch.charCodeAt(0) - base + n + 26) % 26 + base);
});
shift("Hello", 3); // "Khoor"
shift("Khoor", -3); // "Hello"(解密即负位移)
Python ROT13 一行搞定
import codecs
codecs.encode("hello", "rot13") # "uryyb"
codecs.encode("uryyb", "rot13") # 再转一次还原(自逆)
# 任意位移用 str.translate 建映射表,或参考左侧 JS 写法
常见问题
凯撒密码位移多少位最安全?
都不安全。位移量只有 25 种取值,逐个试一遍就能恢复原文,选 3 还是选 17 只是「先被猜到」和「后被猜到」的区别。要保护内容必须用现代加密算法(如 AES),凯撒密码只适合做演示和字谜。
ROT13 为什么加密和解密是同一个操作?
因为字母表是 26 个字母的环,错 13 位再错 13 位总共错 26 位,正好转回原处。所以对 ROT13 结果再执行一次 ROT13 就得到原文,工具里把「加密 / 解密」都设成位移 13 即可。
ROT47 和凯撒密码有什么不同?
凯撒密码只动字母(A~Z / a~z),数字和符号原样保留;ROT47 动的是全部 94 个可打印 ASCII 字符(33~126),数字、标点、括号一起变,汉字等非 ASCII 字符则不变。两者都是自逆运算,但 ROT47 的输出更难一眼看出来。
解密出来是乱码,说明什么?
说明位移量不对。换一个位移再试,或直接用「暴力破解」把 25 种候选一次性列出来比对:唯一那段读得通的就是正确答案。如果 25 种都读不通,可能原文用了别的密码体系(如维吉尼亚、换位),而不是简单位移。
中文内容用凯撒密码会怎样?
汉字不在 A~Z 的范围内,会被原样保留、不做任何变换,所以中英混排的文本只有英文字母部分被加密。这既是凯撒密码的局限,也解释了为什么它只适用于纯拉丁字母文本。
暴力破解表怎么快速找到原文?
看输出是否像正常语言:候选表按位移 1~25 排列,正常句子会有可读的单词与空格节奏,乱码则是随机的字母组合。文本越长越容易判断,三五个字符的短串可能好几种位移都「像」,需要结合上下文。
凯撒密码和维吉尼亚密码有什么关系?
维吉尼亚密码可以看成「一串不同位移的凯撒密码」:它用一个关键词决定每个字母错多少位,从而把单一位移变成周期性的多位位移,破解难度明显上升。凯撒密码是维吉尼亚在关键词只有一个字符时的特例。
这个工具会记录我解密的内容吗?
不会。全部计算在浏览器内完成,输入不发送到服务器,也不写入 localStorage——本工具没有计算历史区块,解密私密内容时不会留下痕迹。
延伸阅读
来自本站原创文章,讲清这个工具背后的算法与口径。