编码解码哈希加密格式化时间转换开发生成文本处理网络工具其他工具
首页 / 哈希加密 / 凯撒密码

凯撒密码

字母移位的凯撒密码加解密

输入
结果

这个工具能做什么

凯撒密码在线加解密工具做的事情很直接:把你输入的一段文本,按指定的位移量,对其中的英文字母逐个在字母表上循环移动,得到密文,或者反过来还原成明文。它解决的是手工做字母移位容易算错、越界处理麻烦的问题——尤其当文本里混着标点、数字、中文时,人工挑出字母再逐个数着移位既慢又容易出错。这里只需要填入位移量、粘贴文本,点「加密」或「解密」即可,大小写各自保持,非字母字符原样透传。位移量支持正数也支持负数,填 3 就是经典的向后移三位,填 -3 则等价于解密。

它的核心是一个模 26 的加法运算。对每个字母,先把它映射成 0 到 25 的序号(A 或 a 记为 0,Z 或 z 记为 25),加上位移量后对 26 取模,再映射回字母,这样 'z' 移 1 位就绕回 'a'。大写和小写分别以各自的基准('A' 或 'a' 的编码)计算,所以移位不会让大小写互相串档。取模能自然处理任意大小的位移和负位移,位移 29 和位移 3 效果完全一样,位移 -3 和位移 23 也等价。正因为加密是加上 k、解密是加上 -k,同一段逻辑靠位移量的正负就能双向运行,这也是为什么解密时用相同位移量点「解密」即可还原。

最常见的用途是教学和练手:讲替换式密码、出 CTF 入门题、或做算法作业时,用它快速造一批密文与明文的对照。举个例子,著名的 ROT13 就是位移 13 的凯撒密码,把 "Hello" 加密成 "Uryyb",对 "Uryyb" 再用同样的 13 位加密又变回 "Hello",常用来在论坛里遮挡剧透和谜底。再比如做 CTF 时拿到一串疑似移位的字符串,可以把位移从 1 试到 25 逐档还原(即暴力枚举),快速判断哪一档能得到可读英文。对需要给学生演示「密钥」概念的场景,位移量就是最小的对称密钥模型。

需要强调的是,凯撒密码只是古典替换密码,不具备任何现代安全性:有效位移只有 25 种,穷举秒破,绝不能用来保护真实的敏感数据。它也不是哈希,更不是 Base64——哈希不可逆、Base64 是编码而非加密,凯撒则是可逆的移位加密,三者用途完全不同,别混用。另外本工具只对 A-Z、a-z 做移位,数字、中文、标点、空格一律原样保留;如果你想连数字和符号一起移(类似 ROT47 覆盖可见 ASCII),这里不做,需要另找工具。全部运算在浏览器本地完成,不会把文本上传到服务器。

凯撒密码是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“凯撒密码”、“caesar cipher”、“字母移位”,说的都是这个。

常见使用场景

使用方法

  1. 把内容粘贴到输入框(生成类工具直接设置选项)。
  2. 按需要选择选项,点操作按钮。
  3. 结果出现在下方,点「复制结果」即可带走。

常见问题

凯撒密码和 ROT13 是一回事吗?
ROT13 就是位移量固定为 13 的凯撒密码。因为 26 的一半正好是 13,加密和解密用的位移相同,所以对同一段文本连续做两次 ROT13 会还原;本工具把位移填 13 即可实现。
位移量填负数是什么效果?
负位移相当于把字母往字母表前方移动,它和「用相同的正位移做解密」是等价的。例如加密用 +3,那么用 -3 加密,或直接点「解密」,都能还原出原文。
为什么中文、数字和标点没有被加密?
凯撒密码本质是对 26 个英文字母的移位,工具只处理 A-Z 和 a-z。数字、中文、标点、空格不在字母表内,因此原样保留,这是设计上的正常行为,不是 bug。
它安全吗,能用来加密密码或隐私数据吗?
不能。凯撒密码的有效密钥只有 25 种,可在瞬间被暴力穷举破解,只适合教学、趣味和 CTF 入门,绝不能用于任何真实的安全场景。
忘了对方用的位移量,还能破解吗?
可以。有效位移只有 25 种,把 1 到 25 逐个试一遍(即枚举/暴力破解),看哪一档输出是通顺的英文即可,这也是古典密码分析最基础的做法。

相关工具

查看全部「哈希加密」工具 →

相关名词解释