【セキュリティ】共通鍵暗号アルゴリズム

【1】DES (Data Encryption Standard)

* DES(デス)
* 64ビットのキーを利用(8ビットはパリティとして使うため、実際は、56ビット)

注意点

 * 脆弱性(総当たり攻撃、差分解読法、線形解読法)が見つかっているため、
   現在使用すべきではない

参考文献
http://msdn.microsoft.com/ja-jp/library/system.security.cryptography.des.aspx
http://www.atmarkit.co.jp/ait/articles/1505/21/news030.html
http://www.atmarkit.co.jp/ait/articles/0401/01/news076.html

【2】Triple DES

* Triple DES = トリプルデス or トリプルDES
* 暗号化→復号→暗号化の順に三回施す暗号アルゴリズム
* 128 ビットから 192 ビットのキー長を 64 ビット単位でサポート

注意点

* IPA(独立行政法人 情報処理推進機構)では、2030年までにするように勧告
* 資料は、以下のサイトを参照。

参考文献
http://msdn.microsoft.com/ja-jp/library/system.security.cryptography.tripledes.aspx
http://ja.wikipedia.org/wiki/%E3%83%88%E3%83%AA%E3%83%97%E3%83%ABDES
http://www.ipa.go.jp/security/vuln/ssl_crypt_config.html
http://www.ipa.go.jp/files/000045645.pdf

【3】BCrypt(Blowfish暗号/Blowfish)

* ブローフィッシュ(意味は、「フグ」)
* DESよりも高速
* ライセンスフリーな暗号化方式

参考文献
https://yuskamiya.tumblr.com/post/100503173956/bcryptblowfish%E6%9A%97%E5%8F%B7%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%BF%E3%81%B9%E3%81%9F%E3%81%AE%E3%81%A7%E6%96%87%E6%9B%B8%E5%8C%96%E3%81%97%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%81%9F
http://www.nttpc.co.jp/yougo/Blowfish.html
http://nagatsuki.cocolog-nifty.com/bunbackup/2004/06/index.html

【4】Twofish(トゥーフィッシュ)

 * Blowfish の発展型

【5】RC6 (Rivest's Cipher 6)

RC2/RC4/RC5もある

* Ronald Rivest(ロナルド・リベスト)が設計したブロック暗号
* 「コリレーションアタック」と呼ぶ統計的手法による攻撃法が
 有効であることが発見
* 米国商務省標準技術局(NIST)によって認定される
 次世代暗号化標準規格(AES)の候補として
 最終選考まで残ったものの結局、採用されなかった

参考文献
http://msdn.microsoft.com/ja-jp/library/system.security.cryptography.rc2.aspx
http://ja.wikipedia.org/wiki/RC2
http://www.maitou.gr.jp/rsa/rsa06.php
http://www.weblio.jp/content/RC6

【6】AES (Advanced Encryption Standard)

Rijndaell(ラインダール)共通鍵暗号

* DESの後継として米国の国立標準技術研究所(NIST)によって制定
 => DESはもちろんトリプルDESより強度が高い
 => 暗号化/復号化処理にかかる時間は、DESと同じか短い
 => つまり安全でかつ早い、「DES < Triple DES < AES」
* 高度暗号化標準対称暗号化アルゴリズム
* 128 ビット、192 ビット、256 ビットのキー長をサポート

参考文献
http://itpro.nikkeibp.co.jp/article/Keyword/20070202/260555/?rt=nocnt
http://www.atmarkit.co.jp/ait/articles/1506/18/news019.html
http://type74.org/edman5-1.php

【7】Camellia

カメリア(意味は「つばき」)

* AESを同等もしくは上回る安全性(らしい)

参考文献
http://www.atmarkit.co.jp/ait/articles/0605/20/news011_2.html
http://info.isl.ntt.co.jp/crypt/camellia/dl/CamelliausersguideV1.0_070704.pdf

関連記事

公開鍵暗号法について
https://dk521123.hatenablog.com/entry/2013/12/15/111634