Jump to content

Help understanding 3rd party function.


atrum

Recommended Posts

Hello all,

 

I am working on a project that has a function in it that I don't completely understand.

From what I can understand about it; it appears to create a hash from 2 strings.

 

The parts I don't understand is the methods it is going about it with.

 

Here is the function.

If someone could please break this down for me into its parts with a brief explanation of what each part is doing, I would be very appreciative.

 

 

<?php
function hmacsha1($secret, $string){
	$blocksize = 64;
	$hashfunc = 'sha1';
	if (strlen($secret) > $blocksize)
		$secret = pack('H*', $hashfunc($secret));
	$secret = str_pad($secret,$blocksize,chr(0x00));
	$ipad = str_repeat(chr(0x36),$blocksize);
	$opad = str_repeat(chr(0x5c),$blocksize);
	$hmac = pack('H*',$hashfunc(($secret^$opad).pack('H*',$hashfunc(($secret^$ipad).$string))));
	return $hmac;
}
?>

Link to comment
https://forums.phpfreaks.com/topic/239263-help-understanding-3rd-party-function/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.