4

我正在使用 payU 信用卡系统。但我管不了。payU 告诉我我必须创建 hmac md5 哈希。

我的密钥是:3~9#[X4^660?ak+]h6%T 我想转换为 HMAC_MD5 哈希:8GEMISEPE6208617192012-12-15 15:58:476Deneme117Deneme202103NET112242103TRY2107Antalya7Antalya2TR8CCVISAMC2,3,7,

什么是php代码?

4

2 回答 2

20

hash_hmac()您可以使用以下功能轻松做到这一点:

$input = 'foo';
$output = hash_hmac('md5', $input, $secretKey);

where$secretKey保存您的密钥的字符串表示形式。

于 2012-12-15T13:15:46.333 回答
2

这个 php 函数类对我有用:

   function hmac ($key, $data)
              {
              // RFC 2104 HMAC implementation for php.
              // Creates an md5 HMAC.
              // Eliminates the need to install mhash to compute a HMAC
              // Hacked by Lance Rushing
              $b = 64; // byte length for md5
              if (strlen($key) > $b) {
              $key = pack("H*",md5($key));
              }
              $key = str_pad($key, $b, chr(0x00));
              $ipad = str_pad('', $b, chr(0x36));
              $opad = str_pad('', $b, chr(0x5c));
              $k_ipad = $key ^ $ipad ;
              $k_opad = $key ^ $opad;
              return md5($k_opad . pack("H*",md5($k_ipad . $data)));
              }


            $x_fp_hash = hmac($string1,$string2);
于 2015-10-21T10:32:48.747 回答