「ROT13」の版間の差分
提供: セキュリティ
(ページの作成:「<!-- vim: filetype=mediawiki --> ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字...」) |
|||
行93: | 行93: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
alias rot13="tr a-zA-Z n-za-mN-ZA-M" | alias rot13="tr a-zA-Z n-za-mN-ZA-M" | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == pythonでrot13エンコード == | ||
+ | |||
+ | [[python]] で [[ROT13]] エンコードが簡単にできます。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | % python | ||
+ | >>> print "hoge".encode("rot13"); | ||
+ | ubtr | ||
+ | >>> print "ubtr".encode("rot13"); | ||
+ | hoge | ||
</syntaxhighlight> | </syntaxhighlight> | ||
2013年7月28日 (日) 12:46時点における版
ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。 また、FreeBSD には、rot13 という名前のコマンドが提供されています。
読み方
- ROT13
- ろっとじゅーさん
概要
ROT13 (ROT-13, rot13) とは、単換字式暗号 (シーザー暗号) の1つです。アルファベットを1文字ごとに13文字後のアルファベットに置き換えます。
非常に単純であるため、学習目的以外で利用するべきではありません。
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