編碼 | 解碼 | 壓縮

> 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 可同時處理字母和數字。

其他語言