home *** CD-ROM | disk | FTP | other *** search
- package Digest::HMAC_SHA1;
- $VERSION="1.01";
-
- use strict;
- use Digest::SHA1 qw(sha1);
- use Digest::HMAC qw(hmac);
-
- # OO interface
- use vars qw(@ISA);
- @ISA=qw(Digest::HMAC);
- sub new
- {
- my $class = shift;
- $class->SUPER::new($_[0], "Digest::SHA1", 64);
- }
-
- # Functional interface
- require Exporter;
- *import = \&Exporter::import;
- use vars qw(@EXPORT_OK);
- @EXPORT_OK=qw(hmac_sha1 hmac_sha1_hex);
-
- sub hmac_sha1
- {
- hmac($_[0], $_[1], \&sha1, 64);
- }
-
- sub hmac_sha1_hex
- {
- unpack("H*", &hmac_sha1)
- }
-
- 1;
-
- __END__
-
- =head1 NAME
-
- Digest::HMAC_SHA1 - Keyed-Hashing for Message Authentication
-
- =head1 SYNOPSIS
-
- # Functional style
- use Digest::HMAC_SHA1 qw(hmac_sha1 hmac_sha1_hex);
- $digest = hmac_sha1($data, $key);
- print hmac_sha1_hex($data, $key);
-
- # OO style
- use Digest::HMAC_SHA1;
- $hmac = Digest::HMAC_SHA1->new($key);
-
- $hmac->add($data);
- $hmac->addfile(*FILE);
-
- $digest = $hmac->digest;
- $digest = $hmac->hexdigest;
- $digest = $hmac->b64digest;
-
- =head1 DESCRIPTION
-
- This module provide HMAC-SHA-1 hashing.
-
- =head1 SEE ALSO
-
- L<Digest::HMAC>, L<Digest::SHA1>, L<Digest::HMAC_MD5>
-
- =head1 AUTHOR
-
- Gisle Aas <gisle@aas.no>
-
- =cut
-