Java 实现 Php 的 hash_hmac 函数

本文介绍了PHP中的hash_hmac函数如何结合不同的哈希算法实现HMAC,以HMAC-SHA1为例展示了其使用方法。同时,通过Java代码展示了等效的HMAC-SHA1签名过程,两者结果一致。示例代码包括了PHP和Java的实现,可用于理解跨语言的哈希一致性。
摘要由CSDN通过智能技术生成

PHP

在php中hash_hmac函数就能将HMAC和一部分哈希加密算法相结合起来实现HMAC-SHA1  HMAC-SHA256 HMAC-MD5等等算法。

函数介绍如下:
string hash_hmac(string $algo, string $data, string $key, bool $raw_output = false)
algo:要使用的哈希算法名称,可以是上述提到的md5,sha1等
data:要进行哈希运算的消息,也就是需要加密的明文。
key:使用HMAC生成信息摘要是所使用的密钥。
raw_output:该参数为可选参数,默认为false,如果设为true,则返回原始二进制数据表示的信息摘要,否则返回16进制小写字符串格式表示的信息摘要(注意是16进制数,而非简单的字母加数字)。
另外:如果algo参数指定的不是受支持的算法,将返回false。

<?php

$data = "b-b7a3b7cc7a57fb0433fef3252c60a105";
$key = "d25b2cb97c0b5a82d887ebbc0580cce0";
$str  = hash_hmac("sha1", $data, $key);
echo $str."\n";

?>

运行结果:

39b46d318c7338b034d1f623a551b8ddcadb7ac0

Java


                
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值