AESでの暗号化の負荷を調べよう(1)

AESを知る

AESとは何なのかを調べてみました。*1

  • 共通鍵暗号
  • DESに代わる技術とされる
  • 128ビットのブロック長を持つ
  • 鍵の長さは128,192,256ビット

AESの負荷について調べる

今回知りたいのは、暗号化・復号化にかかる負荷です。

AES 概説 - 名古屋工業大学大学院おもひ領域 情報工学専攻 岩田研によると

このような鍵スケジュールはストリーム暗号に構成が似ており、鍵拡張を非常に柔軟かつ高速に実現可能だといえます。

とあるのだが、「高速」という表現の基準が書かれていないため詳しく知ることが出来なかった。*2

というわけで、コードを書いてプログラムを動かして検証した方が早そうだ。

AESのコードを探す

暗号化については、ソースコードが公開されていることが多い。
また、今回のように「AES」という具体的なキーワードが分かっているときは、
lib〜
としてGoogleで検索するとヒットすることがある。
今回はこれで「libaes」というライブラリが見つかった。

http://sourceforge.net/projects/libaes/

早速ダウンロードしてみたが、Windowsのビルド環境が整備されていない様子なので、今日はここまで。
ていうか他のライブラリがあるのかな?

*1:詳細な情報なほど、Googleでのランキングが下位になっているのが悲しかった。

*2:何クロックかかるとか、DESに比べてどれくらい早いとかがあれば嬉しいのだが・・・。