Crypt::DSA::Signature
DSA, ECDSAの署名を意味する2つの値 r ,s をオブジェクト化し、ASN.1 DERフォーマット表記の署名入出力をサポートする。
use Crypt::DSA::Signature;
パッケージをロードする。
(r, s) → ASN.1
my $sign = Crypt::DSA::Signature->new();
$sign->r($r);
$sign->s($s);
$sign->serialize();
$r, $s は
長整数の文字列表記。54601165933209047605605813808273978495…等。
serialize出力は
バイナリ数列(ASN.1 DERフォーマット)。
ASN,,1 → (r, s)
my $sign = eval {
Crypt::DSA::Signature->new($asn1);
};
unless ($sign) {
... error ..
}
my $r = $sign->r;
my $s = $sign->s;
$asn1は バイナリ数列(ASN.1 DERフォーマット)。
$r, $s は
長整数の文字列表記。54601165933209047605605813808273978495…等。
不正なDERフォーマットを入力すると die するので、エラートラップしたい場合は evalで囲う。