> rot13 | rot47 | caesar <
// ROT13/ROT47 —— 用于文本混淆的简单替换密码
轻量级混淆
快速对文本进行混淆,用于隐藏剧透、解谜或基础隐私保护。
自反操作
同一操作即可编码也可解码——连续执行两次即可还原原始文本。
多种模式
对字母使用 ROT13,对所有可打印 ASCII 字符使用 ROT47,或使用任意自定义位移的凯撒密码。
>> 技术说明
ROT13/ROT47 的工作原理:
ROT13 将每个字母替换为字母表中向后偏移 13 位的位置。ROT47 对所有可打印 ASCII 字符(33–126)执行类似操作。自定义凯撒密码允许你为字母选择任意位移值。
示例:
ROT13: Hello → Uryyb ROT47: Hello! → w6==@P
为什么使用 ROT13/ROT47:
- >在论坛中隐藏剧透
- >对文本做简单混淆
- >谜题和小游戏
- >基础隐私保护
- >教学与入门密码学
>> 常见问题
什么是 ROT13?
ROT13(旋转 13 位)是一种简单的替换密码,它将每个字母替换为字母表中向后 13 位的字母。它是自反的:连续应用两次就能恢复原始文本。
ROT13 和 ROT47 有什么区别?
ROT13 只旋转字母(A–Z、a–z),数字和符号保持不变。ROT47 会旋转所有可打印 ASCII 字符(! 到 ~),包括数字、字母和符号。
ROT13 是安全的加密方式吗?
不是。ROT13 并不是安全的加密算法,而是一种非常简单、很容易被破解的替换密码。它主要用于轻量级混淆(例如隐藏剧透),而不是安全防护。
什么是凯撒密码?
凯撒密码会将字母按固定的位数进行平移。ROT13 是位移为 13 的特别凯撒密码。传说尤利乌斯·凯撒曾使用位移为 3 的方案。
// 速查表
| Plain | Cipher |
|---|---|
| A B C D E F G H I J K L M | N O P Q R S T U V W X Y Z |
| N O P Q R S T U V W X Y Z | A B C D E F G H I J K L M |
// 代码示例
Hello, World! -> Uryyb, Jbeyq! (apply again -> Hello, World!)
13 + 13 = 26 letters, so ROT13 is its own inverse.
sh echo 'Hello' | tr 'A-Za-z' 'N-ZA-Mn-za-m'
python import codecs; codecs.encode('Hello', 'rot13')
ROT5 rotates digits 0-9 by 5
ROT47 rotates printable ASCII 33..126 by 47 (also self-inverse)
>> 更多问题
问:ROT13 是加密吗?
答:不是。它没有密钥,任何人都能立即还原。ROT13 只用于让文字乍看之下不可读(剧透、笑话、谜底),不能保护数据。
问:为什么连续做两次 ROT13 会还原文本?
答:拉丁字母共 26 个,13 正好是一半。移位 13 位两次共 26 位,回到原位。因此加密和解密是同一种操作。
问:ROT5 和 ROT47 是什么?
答:ROT5 把数字 0–9 移 5 位。ROT47 把可打印 ASCII 字符(33 至 126)移 47 位,同样自反。ROT13 加 ROT5 可同时处理字母和数字。