这是一个我需要转换为PHP的Ruby代码:
print OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new("sha1"), 'hello', Base64.encode64('bonjour'))
输出:
62ac34e5d28563d6a50272d660805d1f8c791e41
这是我的PHP代码:
echo hash_hmac('sha1', base64_encode('bonjour'), 'hello');
输出:
89ebf8bd3d92bf3283aa4c5f24072820258367e4
我找不到一种方法来拥有.62ac34...
我也试过:
echo hash_hmac('sha1', 'bonjour', 'hello'); // 1
echo hash_hmac('sha1', 'hello', 'bonjour'); // 2
echo hash_hmac('sha1', base64_encode('hello'), 'bonjour'); // 3
echo hash_hmac('sha1', 'hello', base64_encode('bonjour')); // 4
echo base64_encode(hash_hmac('sha1', 'hello', 'bonjour', TRUE)); //5
这也是错误的。输出:
bed443484cc49c41c053a11dd15e44d4f79c524f // 1
16923f8d6e9afd345cf947fc963cad73aa12b76c // 2
8e5989976296c76f0462fe33c6bc2dec48bdcb5a // 3
ca237e79f77e6d9739db45fc5d162da3a4036639 // 4
FpI/jW6a/TRc+Uf8ljytc6oSt2w= // 5
我完全绝望了。
收到一只叮咚