File Coverage

blib/lib/Crypt/Mac/OMAC.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 12 12 100.0


line stmt bran cond sub pod time code
1             package Crypt::Mac::OMAC;
2              
3             ### BEWARE - GENERATED FILE, DO NOT EDIT MANUALLY!
4              
5 3     3   116629 use strict;
  3         19  
  3         72  
6 3     3   12 use warnings;
  3         4  
  3         120  
7             our $VERSION = '0.080';
8              
9 3     3   16 use base qw(Crypt::Mac Exporter);
  3         3  
  3         914  
10             our %EXPORT_TAGS = ( all => [qw( omac omac_hex omac_b64 omac_b64u )] );
11             our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
12             our @EXPORT = qw();
13              
14             1;
15              
16             =pod
17              
18             =head1 NAME
19              
20             Crypt::Mac::OMAC - Message authentication code OMAC
21              
22             =head1 SYNOPSIS
23              
24             ### Functional interface:
25             use Crypt::Mac::OMAC qw( omac omac_hex );
26              
27             # calculate MAC from string/buffer
28             $omac_raw = omac($cipher_name, $key, 'data buffer');
29             $omac_hex = omac_hex($cipher_name, $key, 'data buffer');
30             $omac_b64 = omac_b64($cipher_name, $key, 'data buffer');
31             $omac_b64u = omac_b64u($cipher_name, $key, 'data buffer');
32              
33             ### OO interface:
34             use Crypt::Mac::OMAC;
35              
36             $d = Crypt::Mac::OMAC->new($cipher_name, $key);
37             $d->add('any data');
38             $d->addfile('filename.dat');
39             $d->addfile(*FILEHANDLE);
40             $result_raw = $d->mac; # raw bytes
41             $result_hex = $d->hexmac; # hexadecimal form
42             $result_b64 = $d->b64mac; # Base64 form
43             $result_b64u = $d->b64umac; # Base64 URL Safe form
44              
45             =head1 DESCRIPTION
46              
47             Provides an interface to the OMAC message authentication code (MAC) algorithm.
48              
49             =head1 EXPORT
50              
51             Nothing is exported by default.
52              
53             You can export selected functions:
54              
55             use Crypt::Mac::OMAC qw(omac omac_hex );
56              
57             Or all of them at once:
58              
59             use Crypt::Mac::OMAC ':all';
60              
61             =head1 FUNCTIONS
62              
63             =head2 omac
64              
65             Logically joins all arguments into a single string, and returns its OMAC message authentication code encoded as a binary string.
66              
67             $omac_raw = omac($cipher_name, $key, 'data buffer');
68             #or
69             $omac_raw = omac($cipher_name, $key, 'any data', 'more data', 'even more data');
70              
71             =head2 omac_hex
72              
73             Logically joins all arguments into a single string, and returns its OMAC message authentication code encoded as a hexadecimal string.
74              
75             $omac_hex = omac_hex($cipher_name, $key, 'data buffer');
76             #or
77             $omac_hex = omac_hex($cipher_name, $key, 'any data', 'more data', 'even more data');
78              
79             =head2 omac_b64
80              
81             Logically joins all arguments into a single string, and returns its OMAC message authentication code encoded as a Base64 string.
82              
83             $omac_b64 = omac_b64($cipher_name, $key, 'data buffer');
84             #or
85             $omac_b64 = omac_b64($cipher_name, $key, 'any data', 'more data', 'even more data');
86              
87             =head2 omac_b64u
88              
89             Logically joins all arguments into a single string, and returns its OMAC message authentication code encoded as a Base64 URL Safe string (see RFC 4648 section 5).
90              
91             $omac_b64url = omac_b64u($cipher_name, $key, 'data buffer');
92             #or
93             $omac_b64url = omac_b64u($cipher_name, $key, 'any data', 'more data', 'even more data');
94              
95             =head1 METHODS
96              
97             =head2 new
98              
99             $d = Crypt::Mac::OMAC->new($cipher_name, $key);
100              
101             =head2 clone
102              
103             $d->clone();
104              
105             =head2 reset
106              
107             $d->reset();
108              
109             =head2 add
110              
111             $d->add('any data');
112             #or
113             $d->add('any data', 'more data', 'even more data');
114              
115             =head2 addfile
116              
117             $d->addfile('filename.dat');
118             #or
119             $d->addfile(*FILEHANDLE);
120              
121             =head2 mac
122              
123             $result_raw = $d->mac();
124              
125             =head2 hexmac
126              
127             $result_hex = $d->hexmac();
128              
129             =head2 b64mac
130              
131             $result_b64 = $d->b64mac();
132              
133             =head2 b64umac
134              
135             $result_b64url = $d->b64umac();
136              
137             =head1 SEE ALSO
138              
139             =over
140              
141             =item * L
142              
143             =item * L
144              
145             =back
146              
147             =cut