ROT13
提供: セキュリティ
スポンサーリンク
ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。 また、FreeBSD には、rot13 という名前のコマンドが提供されています。
読み方
- ROT13
- ろっとじゅーさん
概要
ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。ROT13は、rotate by 13 places の略です。
非常に単純であるため、学習目的以外で利用するべきではありません。
hoge
を ROT13 で置き換えると
ubtr
となります。
平文 を ROT13 してできた 暗号文は、もう一度 ROT13 することで、平文 に 復号化されます。
暗号文 = ROT13 ( 平文 ) 平文 = ROT13 ( 暗号文 )
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
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 |
インストール
FreeBSD では、 rot13 というコマンドがベースシステムで提供されます。
使い方
% echo hoge | rot13 ubtr % echo ubtr | rot13 hoge
trコマンドでrot13を実現する
tr コマンドを用いて、ROT13 を実現できます。
% echo hoge | tr a-zA-Z n-za-mN-ZA-M ubtr
下記は、sh 系の alias の書き方の例です。
alias rot13="tr a-zA-Z n-za-mN-ZA-M"
Pythonでrot13エンコード
Python で ROT13 エンコードが簡単にできます。
% python >>> print "hoge".encode("rot13"); ubtr >>> print "ubtr".encode("rot13"); hoge >>> print "ubtr".decode("rot13"); hoge
関連項目
ツイート
スポンサーリンク