Camellia
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、ブロック暗号について説明しています。その他の用法については「カメリア」をご覧ください。

Camellia一般
設計者三菱電機, NTT
初版発行日2000年
派生元E2, MISTY1
認証CRYPTREC, NESSIE
暗号詳細
鍵長128, 192または256ビット
ブロック長128ビット
構造Feistel構造
ラウンド数18または24

Camellia(カメリア)とは、2000年NTT三菱電機により共同開発されたブロック暗号である。名称の由来は植物のツバキツバキ属:Camellia)。

CamelliaはFeistel構造を採用したブロック長128ビットブロック暗号で、鍵長としてAESと同じ128ビット、192ビット、256ビットの3つを選択できる。また、CamelliaはAESと同等の安全性を保ちつつハードウェアでの低消費電力で高速な暗号化復号に優れている。
構造

Camelliaの入出力インタフェースAES互換で、ブロック長は128ビット固定、鍵長は128 / 192 / 256ビットの3つを選択できる。

全体構造は、AESではSPN構造が採用されたのと違い、DESと同じFeistel構造を採用している。ラウンド段数は、鍵長が128ビットのときは18段、192ビット・256ビットのときは24段で、6段毎に「副変換部」と呼ばれる全単射関数FLとFL-1が挿入されている。また、最初と最後にホワイトニング(拡大鍵との排他的論理和)が設けられている。

ラウンド関数はバイト(8ビット)を単位とした処理になっていて、拡大鍵との排他的論理和の後、8ビット入力-8ビット出力のSボックス(4種類ある)と、FEALにも似たあみだくじ型のP関数によって構成される。Sボックスは4種類あるが、テーブル1つと、入出力のビットシフト等の組合せで実装することもできる。

鍵スケジューラは、ラウンド関数2段で、鍵を"暗号化"して中間鍵を生成し、中間鍵の一部分を取り出すことで拡大鍵を作り出す。具体的には中間鍵をラウンド毎に定義された分だけシフトして、右64ビット(または左64ビット)を取り出す。CamelliaはFeistel構造を採用して、暗号化と復号の違いはラウンド関数等で使用される拡大鍵の順番のみになるように設計されている。そこで鍵スケジューラは、拡大鍵を1番目から順番に求めることも、最後から逆順に求めることも、それぞれ、どちらも同様な手間で実現できるように設計されている。
安全性

Camelliaは解読可能なラウンド数と最低限安全性を保てるラウンド数を元にした指標であるセキュリティーマージンにてAESを上回る1.8?2.0を確保している[1]。これに加え、CamelliaはCRYPTRECおよびNESSIEにおいてAESと同等の安全性と効率を兼ね備えているという評価もされている。
性能

開発者や第三者による実装報告によると、パソコンで使用されている汎用CPUでは1 Gbps、専用LSIでは2 Gbpsを超えるスループットがある。

一方、組込み機器で使用される8ビットCPUなどの処理能力が低いプロセッサでも、極端なメモリサイズ増加は生じず、ハードウェア実装した場合には、暗号化と復号や鍵スケジューラで回路を共用できるため10,000ゲート以下でも実装可能であることが確認されている。
ソフトウェア実装

組込み機器等での性能(8ビットCPU)

7.19 msec (ENC) / 7.51 msec (DEC) - Z80 (5 MHz), ROM 1,268バイト, RAM 60バイト (NTT)

5.68 msec (ENC) / 1.03 msec (KeyGen) - Z80 (), ROM 1,698バイト, RAM 63バイト (NTT)

10.22 msec (ENC/DEC) - 8051 (12 MHz), ROM 990バイト, RAM 32バイト (1st NESSIE Workshop)



パソコンなどでの性能(32/64ビットCPU)

1,134.6 Mbps - Intel Pentium 4 (3.2 GHz), Windows XP SP2, 鍵長128ビット (Oda, et al., SCIS 2006)

1,158.8 Mbps - AMD Athlon 64 3500+ Winchester (2.2 GHz), Windows XP 64-Bit Edition, ビットスライス実装, 鍵長128ビット (Fukuda, et al., SCIS 2006)


ハードウェア実装

ASIC

325.76 Mbps - IBM 0.13 μm, 6,511 unit, Loop arch, 鍵長128ビット (Satoh, et al., ISC 2003)

2,154.88 Mbps - IBM 0.13 μm, 29,809 unit, Loop arch, 鍵長128ビット (Satoh, et al., ISC 2003)



FPGA

128.58 Mbps - Xilinx Virtex-E, 908 Slice, Loop arch, 鍵長128ビット (Satoh, et al., ISC 2003)

393.24 Mbps - Xilinx Virtex-E, 2,833 Slice, Loop arch, 鍵長128ビット (Satoh, et al., ISC 2003)


歴史

2000年3月10日 Camelliaの公開:NTTと三菱電機による共同開発がニュースリリースされる。

2001年4月17日 Camelliaの基本特許の無償化が宣言される。

2003年2月20日 日本の暗号評価プロジェクト
CRYPTRECによる電子政府推奨暗号リストにCamelliaも推奨される。

2003年2月27日 欧州の暗号評価プロジェクトNESSIEにて、128ビットブロック暗号として、AESと共にCamelliaも選定される。

2005年7月15日 国際標準規格ISO/IEC 18033 Part 3の128ビットブロック暗号に、他の2つの暗号(AES、SEED)と共にCamelliaも採用される。(5月27日にニュースリリース)

2005年7月20日 SSL/TLS、S/MIME、XMLなどの標準規格で、暗号方式としてCamelliaが追加される。

2006年4月13日 Camelliaのオープンソースが公開される。

2006年11月8日 OpenSSLにCamelliaが追加される。

2007年6月7日 FreeBSD ProjectがCamelliaへの対応を発表する。

2008年6月17日 ウェブブラウザとして初採用したMozilla Firefox 3がリリースされた(後に、バージョン33において既定で無効化され[2]、バージョン37でサポート終了[3])。

2013年3月1日 CRYPTRECによって改訂された電子政府推奨暗号リストに、日本初のブロック暗号として唯一Camelliaが推奨される。

標準化

Camelliaは、欧州のNESSIEプロジェクトや日本のCRYPTRECが作成した「電子政府推奨暗号リスト」に採用されている。

また、TLS/SSLIPsecをはじめとして、IETFISO/IECなど多くの標準化団体に採用されている。主な標準化実績は以下の通りである[4]

CRYPTREC

NESSIE

IETF

アルゴリズム

.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation.cs-ja1 q,.mw-parser-output .citation.cs-ja2 q{quotes:"「""」""『""』"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:#d33}.mw-parser-output .cs1-visible-error{color:#d33}.mw-parser-output .cs1-maint{display:none;color:#3a3;margin-left:0.3em}.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}RFC 3713: A Description of the Camellia Encryption Algorithm

RFC 5528: Camellia Counter Mode and Camellia Counter with CBC-MAC Mode Algorithms


S/MIME

RFC 3657: Use of the Camellia Encryption Algorithm in Cryptographic Message Syntax (CMS)


XML暗号化

RFC 4051: Additional XML Security Uniform Resource Identifiers (URIs)


TLS/SSL

RFC 4132: Addition of Camellia Cipher Suites to Transport Layer Security (TLS)

RFC 5932: Camellia Cipher Suites for TLS

RFC 6367: Addition of the Camellia Cipher Suites to Transport Layer Security (TLS)


IPsec

RFC 4312: The Camellia Cipher Algorithm and Its Use With IPsec

RFC 5529: Modes of Operation for Camellia for Use with IPsec


OpenPGP

RFC 5581: The Camellia Cipher in OpenPGP


RSA-KEM in CMS

RFC 5990: Use of the RSA-KEM Key Transport Algorithm in the Cryptographic Message Syntax (CMS)


PSKC

RFC 6030: Portable Symmetric Key Container (PSKC)


スマートグリッド

RFC 6272: Internet Protocols for the Smart Grid



ISO/IEC

ISO/IEC 18033 ( ⇒ISO/IEC 18033-3:2010) Information technology -- Security techniques -- Encryption algorithms -- Part 3: Block ciphers


ITU-T


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:21 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef