使用HMAC-SHA1签名方法详解
方法 使用 详解 签名 SHA1 HMAC
2023-06-13 09:15:02 时间
加密算法:
使用HMAC-SHA1签名方法
复制代码代码如下:
使用HMAC-SHA1签名方法
/**
*@brief使用HMAC-SHA1算法生成oauth_signature签名值
*
*@param$key 密钥
*@param$str 源串
*
*@return签名值
*/
functiongetSignature($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;
}
相关文章
- c++ set集合的使用方法详解
- dirsearch使用方法_in search of的用法
- 【Laravel】在企业级项目中使用Laravel框架中的工厂状态下的页面方法 Code Verifier以及错误处理
- 详解linux 定时任务 crontabs 安装及使用方法
- mysql group by使用方法注意详解数据库
- jquery.cookie使用方法详解编程语言
- ConcurrentLinkedQueue使用和方法介绍详解编程语言
- JS使用自定义的方法初始化数组
- 指令NMCLI在Linux系统中的使用方法(linuxnmcli)
- 串利用Oracle构建随机字符串的方法(oracle生成随机字符)
- MySQL查询:不等于的使用方法(mysql查询不等于)
- MySQL变量的使用方法详解(mysql变量使用)
- 详解Oracle参数的定义与常见使用方法(oracle参数定义)
- 使用Linux平台编译APK应用的详细方法指南(linux编译apk)
- MySQL中使用不等于参数的方法详解(mysql 中不等于参数)
- MySQL非空查询语句使用方法详解(mysql不为空语句)
- 使用MySQL上传CSV文件的简便方法(mysql上传csv)
- jQuery中使用了document和window哪些属性和方法小结
- androidRadioGroup的使用方法
- Repeater里switch的使用方法
- 使用javascript:将其它类型值转换成布尔类型值的解决方法详解
- 深入php中var_dump方法的使用详解
- java关键字final使用方法详解
- C#正则表达式使用方法示例
- python基础入门详解(文件输入/输出内建类型字典操作使用方法)
- JQuery动画animate的stop方法使用详解
- C#中richtextbox使用方法详解