编码 | 解码 | 压缩

> 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 的方案。

// 速查表

PlainCipher
A B C D E F G H I J K L MN O P Q R S T U V W X Y Z
N O P Q R S T U V W X Y ZA 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 可同时处理字母和数字。

其他语言