PHP中 HMAC-MD5 加密算法

MD5已经不是那么安全了,采用字典可暴力破解,通常采用加盐的MD5或者HMAC-MD5提升安全性。

<?php

/**
 * 基于MD5的加密算法HMAC
 *
 * @param String $data 预加密数据
 * @param String $key  密钥
 * @return String 
 */
function hmac_md5($data, $key) {
    if (function_exists('hash_hmac')) {
        return hash_hmac('md5', $data, $key);
    }

    $key = (strlen($key) > 64) ? pack('H32', 'md5') : str_pad($key, 64, chr(0));
    $ipad = substr($key,0, 64) ^ str_repeat(chr(0x36), 64);
    $opad = substr($key,0, 64) ^ str_repeat(chr(0x5C), 64);
    return md5($opad.pack('H32', md5($ipad.$data)));
}

?>

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/18/php-hmac-md5-encrypt-algorithm/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
PHP中 HMAC-MD5 加密算法
MD5已经不是那么安全了,采用字典可暴力破解,通常采用加盐的MD5或者HMAC-MD5提升安全性。 <?php /** * 基于MD5的加密算法HMAC * * @param String $da……
<<上一篇
下一篇>>
文章目录
关闭
目 录