ROT13エンコーディングの基本
ROT13がアルファベットの各文字を13位置回転させる仕組みを学びます。ROT13が自己逆元である理由、大文字・小文字・非アルファベット文字の扱い方を理解しましょう。
ROT13 Fundamentals
詳細な説明
ROT13とは?
ROT13(「13位置回転」)はシーザー暗号の最も人気のあるバリアントです。英語アルファベットの各文字を、ちょうど13位置後の文字に置き換え、Zを超えるとAに戻ります。
置換テーブル
平文: 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
小文字にも同じマッピングが適用されます:aはnに、bはoになります。
自己逆元の性質
英語のアルファベットは26文字で、13はその半分であるため、ROT13を2回適用すると元のテキストに戻ります:
"Hello" → ROT13 → "Uryyb" → ROT13 → "Hello"
つまり、エンコードとデコードに同じ関数を使用できます。別の復号操作は不要です。
非アルファベット文字
数字、句読点、スペース、英語の文字以外の文字はすべてそのまま変更されません:
"Hello, World! 123" → "Uryyb, Jbeyq! 123"
数学的な定式化
位置pの大文字(A=0, B=1, ..., Z=25)の場合:
encrypted = (p + 13) mod 26
(p + 13 + 13) mod 26 = (p + 26) mod 26 = pなので、操作はそれ自身の逆元となります。
ユースケース
ROT13の基本はテキストエンコーディング、インターネット文化、または暗号学入門に取り組む人にとって不可欠な知識です。ROT13の仕組みを理解することは、より複雑な換字式暗号や暗号化アルゴリズムを把握するための第一歩です。