Digest::CMAC

AES CMACを計算する。

use Digest::CMAC;
パッケージをロードする。いくつかの関数をインポートすることもできるが、省略。

使い方:
// インスタンスを生成する。
my $omac = Digest::CMAC->new($key);
// 元データを追加する。
$omac->add($data , ・・・);
// ファイルを元データとして追加する。
open FH,'file' || die 'open failure';
$omac->addfile(*FH);
// CMACを計算し、バイナリ値を返す。
$digest = $omac->digest();
// CMACを計算し、16進文字列で返す。
$digest = $md5->hexdigest();
// CMACを計算し、BASE64エンコードした文字列で返す。
// 含まれる文字は、[A-Za-z0-9+/]。
$digest = $md5->b64digest();

addメソッドやaddfileメソッドは、CMACオブジェクト自身を返すので、下記のような記述もできる。

$digest = Digest::CMAC->new->addfile(*FH)->digest();

resetメソッドもあるが、newメソッドの別名になってるだけなので、既存インスタンスの内部状態をリセットするメソッドはない。