使用HMAC-SHA1签名方法详解_php教程-查字典教程网
使用HMAC-SHA1签名方法详解
使用HMAC-SHA1签名方法详解
发布时间:2016-12-29 来源:查字典编辑
摘要:加密算法:使用HMAC-SHA1签名方法复制代码代码如下:/***@brief使用HMAC-SHA1算法生成oauth_signature签...

加密算法:

使用HMAC-SHA1签名方法

复制代码 代码如下:

/**

* @brief 使用HMAC-SHA1算法生成oauth_signature签名值

*

* @param $key 密钥

* @param $str 源串

*

* @return 签名值

*/

function getSignature($str, $key) {

$signature = "";

if (function_exists('hash_hmac')) {

$signature = base64_encode(hash_hmac("sha1", $str, $key, true));

} else {

$blocksize = 64;

$hashfunc = 'sha1';

if (strlen($key) > $blocksize) {

$key = pack('H*', $hashfunc($key));

}

$key = str_pad($key, $blocksize, chr(0x00));

$ipad = str_repeat(chr(0x36), $blocksize);

$opad = str_repeat(chr(0x5c), $blocksize);

$hmac = pack(

'H*', $hashfunc(

($key ^ $opad) . pack(

'H*', $hashfunc(

($key ^ $ipad) . $str

)

)

)

);

$signature = base64_encode($hmac);

}

return $signature;

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新php教程学习
    热门php教程学习
    编程开发子分类