File Coverage

blib/lib/Net/OAuth/SignatureMethod/HMAC_SHA256.pm
Criterion Covered Total %
statement 19 19 100.0
branch n/a
condition n/a
subroutine 6 6 100.0
pod 0 2 0.0
total 25 27 92.5


line stmt bran cond sub pod time code
1             package Net::OAuth::SignatureMethod::HMAC_SHA256;
2 1     1   8 use warnings;
  1         2  
  1         67  
3 1     1   6 use strict;
  1         2  
  1         41  
4 1     1   5 use Digest::SHA ();
  1         2  
  1         16  
5 1     1   538 use MIME::Base64 ();
  1         817  
  1         153  
6              
7             sub sign {
8 2     2 0 16 my $self = shift;
9 2         4 my $request = shift;
10 2         17 my $hmac_digest = Digest::SHA::hmac_sha256(
11             $request->signature_base_string, $request->signature_key
12             );
13 2         22 return MIME::Base64::encode_base64($hmac_digest, '');
14             }
15              
16             sub verify {
17 1     1 0 4 my $self = shift;
18 1         1 my $request = shift;
19 1         3 return $request->signature eq $self->sign($request);
20             }
21              
22             =head1 NAME
23              
24             Net::OAuth::SignatureMethod::HMAC_SHA256 - HMAC_SHA256 Signature Method for OAuth protocol
25              
26             =head1 SEE ALSO
27              
28             L<Net::OAuth>, L<http://oauth.net>
29              
30             =head1 AUTHOR
31              
32             Originally by Keith Grennan <kgrennan@cpan.org>
33              
34             Currently maintained by Robert Rothenberg <rrwo@cpan.org>
35              
36             =head1 COPYRIGHT & LICENSE
37              
38             Copyright 2007-2012, 2024-2025 Keith Grennan
39              
40             This program is free software; you can redistribute it and/or modify it
41             under the same terms as Perl itself.
42              
43             =cut
44              
45             1;