File Coverage

blib/lib/WWW/Live/Auth/SecretKey.pm
Criterion Covered Total %
statement 6 24 25.0
branch n/a
condition 0 3 0.0
subroutine 2 7 28.5
pod 0 4 0.0
total 8 38 21.0


line stmt bran cond sub pod time code
1             package WWW::Live::Auth::SecretKey;
2              
3 1     1   9 use strict;
  1         2  
  1         59  
4 1     1   7 use warnings;
  1         1  
  1         409  
5              
6             require Digest::SHA;
7              
8             sub new {
9 0     0 0   my ( $proto, $raw ) = @_;
10 0   0       my $class = ref $proto || $proto;
11            
12 0           my $self = bless {
13             'string' => $raw,
14             }, $class;
15 0           $self->_process( $raw );
16            
17 0           return $self;
18             }
19              
20             sub as_string {
21 0     0 0   my $self = shift;
22 0           return $self->{'string'};
23             }
24              
25             sub encryption_key {
26 0     0 0   my $self = shift;
27 0           return $self->{'encryption_key'};
28             }
29              
30             sub signature_key {
31 0     0 0   my $self = shift;
32 0           return $self->{'signature_key'};
33             }
34              
35             sub _process {
36 0     0     my ( $self, $secret_key ) = @_;
37 0           my $encryption_key = Digest::SHA::sha256( "ENCRYPTION$secret_key" );
38 0           my $signature_key = Digest::SHA::sha256( "SIGNATURE$secret_key" );
39 0           $encryption_key = substr( $encryption_key, 0, 16);
40 0           $signature_key = substr( $signature_key, 0, 16);
41 0           $self->{'encryption_key'} = $encryption_key;
42 0           $self->{'signature_key'} = $signature_key;
43             }
44              
45             1;
46             __END__