「ROT13」の版間の差分

提供: セキュリティ
移動: 案内検索
(ページの作成:「<!-- vim: filetype=mediawiki --> ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字...」)
 
 
(同じ利用者による、間の4版が非表示)
行1: 行1:
<!--
+
[[ROT13]] (ROT-13, rot13)  とは、'''単換字式暗号''' ([[シーザー暗号]]) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。 また、[[FreeBSD]] には、rot13 という名前のコマンドが提供されています。
vim: filetype=mediawiki
+
-->
+
[[ROT13]] (ROT-13, rot13)  とは、[[単換字式暗号]] ([[シーザー暗号]]) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。 また、[[FreeBSD]] には、rot13 という名前のコマンドが提供されています。
+
  
 
'''読み方'''
 
'''読み方'''
行9: 行6:
  
 
== 概要 ==
 
== 概要 ==
 
+
[[ROT13]] (ROT-13, rot13)  とは、'''単換字式暗号''' ([[シーザー暗号]]) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。[[ROT13]]は、rotate by 13 places の略です。
[[ROT13]] (ROT-13, rot13)  とは、[[単換字式暗号]] ([[シーザー暗号]]) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。
+
  
 
非常に単純であるため、学習目的以外で利用するべきではありません。
 
非常に単純であるため、学習目的以外で利用するべきではありません。
行68: 行64:
 
| Z
 
| Z
 
|}
 
|}
 
 
== インストール ==
 
== インストール ==
 
 
[[FreeBSD]] では、 rot13 というコマンドがベースシステムで提供されます。
 
[[FreeBSD]] では、 rot13 というコマンドがベースシステムで提供されます。
 
 
== 使い方 ==
 
== 使い方 ==
 
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
% echo hoge | rot13
 
% echo hoge | rot13
行81: 行73:
 
hoge
 
hoge
 
</syntaxhighlight>
 
</syntaxhighlight>
 
 
== trコマンドでrot13を実現する ==
 
== trコマンドでrot13を実現する ==
 
+
tr コマンドを用いて、[[ROT13]] を実現できます。
[[tr]] コマンドを用いて、[[ROT13]] を実現できます。
+
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
% echo hoge | tr a-zA-Z n-za-mN-ZA-M
 
% echo hoge | tr a-zA-Z n-za-mN-ZA-M
行94: 行84:
 
alias rot13="tr a-zA-Z n-za-mN-ZA-M"
 
alias rot13="tr a-zA-Z n-za-mN-ZA-M"
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
== Pythonでrot13エンコード ==
 +
[[Python]] で [[ROT13]] エンコードが簡単にできます。
 +
<syntaxhighlight lang="bash">
 +
% python
 +
>>> print "hoge".encode("rot13");
 +
ubtr
 +
>>> print "ubtr".encode("rot13");
 +
hoge
 +
>>> print "ubtr".decode("rot13");
 +
hoge
 +
</syntaxhighlight>
 
== 関連項目 ==
 
== 関連項目 ==
 
+
{{cipher}}
* [[暗号]]
+
<!--
 +
vim: filetype=mediawiki
 +
-->

2015年9月23日 (水) 01:18時点における最新版

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 ( 暗号文 )
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

関連項目