「ROT13」の版間の差分

提供: セキュリティ
移動: 案内検索
(関連項目)
行109: 行109:
  
 
== 関連項目 ==
 
== 関連項目 ==
 
+
{{cipher}}
* [[暗号]]
+

2014年2月10日 (月) 18:51時点における版

ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。 また、FreeBSD には、rot13 という名前のコマンドが提供されています。

読み方

ROT13
ろっとじゅーさん

概要

ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。

非常に単純であるため、学習目的以外で利用するべきではありません。

hoge

ROT13 で置き換えると

ubtr

となります。

平文ROT13 してできた 暗号文は、もう一度 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エンコード

PythonROT13 エンコードが簡単にできます。

% python
>>> print "hoge".encode("rot13");
ubtr
>>> print "ubtr".encode("rot13");
hoge
>>> print "ubtr".decode("rot13");
hoge

関連項目