Smartphoneすぎゃーんメモ2012-06-15AES復号化ベンチマークPerlAES暗号を復号化する必要があってググってみたところ、以下の記事を発見。perlによるAESベンチさすがに6年も前の記事だし、自分でもちゃんとベンチマークは取ってみよう、と思って調べてみた。metacpan.org復号化に使えるものとしてこのへんがあるのは変わっていない模様。Crypt::RijndaelとCrypt::OpenSSL::AESはそのまま使うとちょっと面倒なのでCrypt::ECBを通して利用する(CBCの方が良いのだと思うけど、とりあえずECBで)。一応クラスメソッドから呼ぶ場合とインスタンス化したものを使い回した場合を比較する。Crypt::GCryptはCrypt::ECBからは使えないので通常の使い方で。適当なデータを暗号化したものとそれに利用した鍵を用意しておき、ただそれを復号化するだけの処理を繰り返す。--GCryptがとても早いようだ。RijndaelとOpenSSL::AESはそれほど大きくは違わない。当然だけどインスタンス化しておいて使った方が良い。CBCやECBなどの暗号化モード、データサイズやpaddingなど知らないことがたくさんあって、まずちゃんと復号させるように書くところでだいぶつまずいてしまった...。