NAME
Crypt::Mac::HMAC - Message authentication code HMAC
SYNOPSIS
$hmac_raw = hmac( 'SHA256' , $key , 'data buffer' );
$hmac_hex = hmac_hex( 'SHA256' , $key , 'data buffer' );
$hmac_b64 = hmac_b64( 'SHA256' , $key , 'data buffer' );
$hmac_b64u = hmac_b64u( 'SHA256' , $key , 'data buffer' );
$d = Crypt::Mac::HMAC->new( 'SHA256' , $key );
$d ->add( 'any data' );
$d ->addfile( 'filename.dat' );
$d ->addfile( *FILEHANDLE );
$result_raw = $d ->mac;
$result_hex = $d ->hexmac;
$result_b64 = $d ->b64mac;
$result_b64u = $d ->b64umac;
|
DESCRIPTION
Provides an interface to the HMAC message authentication code (MAC) algorithm.
EXPORT
Nothing is exported by default.
You can export selected functions:
Or all of them at once:
FUNCTIONS
hmac
Logically joins all arguments into a single string, and returns its HMAC message authentication code encoded as a binary string.
$hmac_raw = hmac( $hash_name , $key , 'data buffer' );
$hmac_raw = hmac( $hash_name , $key , 'any data' , 'more data' , 'even more data' );
|
hmac_hex
Logically joins all arguments into a single string, and returns its HMAC message authentication code encoded as a hexadecimal string.
$hmac_hex = hmac_hex( $hash_name , $key , 'data buffer' );
$hmac_hex = hmac_hex( $hash_name , $key , 'any data' , 'more data' , 'even more data' );
|
hmac_b64
Logically joins all arguments into a single string, and returns its HMAC message authentication code encoded as a Base64 string.
$hmac_b64 = hmac_b64( $hash_name , $key , 'data buffer' );
$hmac_b64 = hmac_b64( $hash_name , $key , 'any data' , 'more data' , 'even more data' );
|
hmac_b64u
Logically joins all arguments into a single string, and returns its HMAC message authentication code encoded as a Base64 URL Safe string (see RFC 4648 section 5).
$hmac_b64url = hmac_b64u( $hash_name , $key , 'data buffer' );
$hmac_b64url = hmac_b64u( $hash_name , $key , 'any data' , 'more data' , 'even more data' );
|
METHODS
new
$d = Crypt::Mac::HMAC->new( $hash_name , $key );
|
clone
reset
add
$d ->add( 'any data' );
$d ->add( 'any data' , 'more data' , 'even more data' );
|
addfile
$d ->addfile( 'filename.dat' );
$d ->addfile( *FILEHANDLE );
|
mac
hexmac
$result_hex = $d ->hexmac();
|
b64mac
$result_b64 = $d ->b64mac();
|
b64umac
$result_b64url = $d ->b64umac();
|
SEE ALSO