CLEFIAの実装性能
CLEFIAは安全性のみならず実装性能を重視して設計された128ビットブロック暗号です。まず初めに具体的な数値を見ながらCLEFIAの優れた性能を紹介いたします。
表1はハードウェア実装を行った際の性能を表したものです。表中のデータは0.09μmCMOS標準セルライブラリを用いた場合の数値です。
鍵長 (bits) |
暗/復号 (cycles) |
鍵セットアップ (cycles) |
最適化 オプション |
面積 (gates) |
クロック周波数 (MHz) |
速度 (Mbps) |
速度/面積 (Kbps/gate) |
---|---|---|---|---|---|---|---|
128 | 18 | 12 | area | 5,979 | 225.83 | 1,605.94 | 268.63 |
speed | 12,009 | 422.29 | 3,003.00 | 250.06 | |||
36 | 24 | area | 4,950 | 201.28 | 715.69 | 144.59 | |
speed | 9,377 | 389.55 | 1,385.10 | 147.71 | |||
192 | 22 | 20 | area | 8,536 | 206.56 | 1,201.85 | 140.81 |
256 | 26 | 20 | area | 8,482 | 206.56 | 1,016.95 | 119.89 |
この表から分かるように128ビット鍵での暗号化関数を36サイクルで実行させた場合、ハードウェアの実装規模が5,000 gate 以下で構成することが可能であり、このときのスループットは700Mbps以上を達成しています。このように、CLEFIAはあまり多くの回路を利用できないようなリソースの限られた環境でも十分な高速性を発揮することが可能となっています。
さらに、より高速性を追求した実装では、単位ゲート数あたりの処理速度で見ると極めて高い値が得られており、CLEFIAが高い処理効率性を持つことがお分かりいただけると思います。
表2は128ビット鍵CLEFIAの小型実装を行った際の性能を表したものです。表中のデータは0.13μmCMOS標準セルライブラリを用いた場合の数値です。
鍵長 (bits) |
モード | 暗/復号 (cycles) |
鍵セットアップ (cycles) |
面積 (gates) |
速度@100KHz (Kbps) |
---|---|---|---|---|---|
128 | Enc | 176 | 128 | 2,678 | 73 |
Enc/Dec | 176 | 128 | 2,781 | 73 | |
Enc | 328 | 224 | 2,488 | 39 | |
Enc/Dec | 328/320 | 224 | 2,604 | 39/40 |
128ビット鍵での暗号化関数を176サイクルで実行させた場合には、ハードウェアの実装規模が3,000 gate 以下で、328サイクルで実行させた場合には2,500 gate 以下で構成することが可能となり、さらなる小型化を達成しています。
表3はソフトウェア実装を行った際の性能を表したものです。なお表中のデータはアセンブリ言語で実装したコードをAMD Athlon 64TMプロセッサ4000+ を使用し、Windows XP 64-bit Edition上で動作させた場合の数値です。
実装 タイプ |
鍵長 (bits) |
暗号化関数 (cycles/byte) |
復号関数 (cycles/byte) |
鍵セットアップ (cycles) |
テーブルサイズ (KB) |
---|---|---|---|---|---|
1ブロック | 128 | 12.9 | 13.3 | 217 | 8 |
192 | 15.8 | 16.2 | 272 | ||
256 | 18.3 | 18.4 | 328 | ||
2ブロック 並列 |
128 | 11.1 | 11.1 | 217 | 16 |
192 | 13.3 | 13.3 | 272 | ||
256 | 15.6 | 15.6 | 328 |
128ビット鍵での暗号化の際には、1バイトあたりのサイクル数が12.9となっており、このときのスループットは1.48Gbpsを達成しています。この速度は、現在知られている128ビットブロック暗号の中でも最高速度レベルを実現しています。
ここで紹介したCPUのみならず、CLEFIAはソフトウェア実装において幅広い環境で優れた性能を発揮することができるデザインとなっており、異なるプラットフォームにおいても十分な高速性を実現していることを確認しています。
以上のようにCLEFIAが安全性を損なわず、コンパクト性と高速性を同時に達成できたのはいくつかの新しい設計技術を導入しているためです。次のページでは、これらの新しい設計技術のポイントをいくつかご紹介いたします。
CLEFIAについて