>  기사  >  백엔드 개발  >  PHP는 향상된 mhash를 구현합니다.

PHP는 향상된 mhash를 구현합니다.

*文
*文원래의
2017-12-26 15:25:461424검색

PHP에서 향상된 mhash를 구현하는 방법은 무엇입니까? 이번 글에서는 주로 PHP에서 구현된 향상된 mhash 함수를 소개합니다. 기본 mhash 함수를 사용할 때 오류가 보고되고 두 가지 해결 방법을 찾습니다. 그것이 모두에게 도움이 되기를 바랍니다.

오늘 PHP의 암호화 기능인 mhash를 사용하다가 오류가 났습니다: Fatal error: Call to unundefined function mhash()

mhash는 PHP에 내장된 함수인데, 사용해보니 오류가 뜹니다...

몇 가지 조사 끝에 두 가지 방법을 요약했습니다.

1. php_mhash.dll 확장 파일을 가져옵니다. 또한 libmhash.dll도 가져와야 합니다(mhash 라이브러리 로딩은 이 파일에 따라 다름). Apache 구성 파일 Httpd.conf.dll"의 C:/php/libmhash.

2, 사용자 정의 mhash 향상 기능을 사용합니다.

function hmac_md5($key, $data)
{
    if (extension_loaded('mhash'))
    {
        return bin2hex(mhash (MHASH_MD5, $data, $key));
    }
    $b = 64;
    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)));
}

hmac_md5 함수의 매개변수 $key 및 $data는 원래 3에 해당합니다. mhash의 2개 매개변수


두 방법 모두 원활하게 사용할 수 있습니다. PHP의 Mhash 암호화 기능

관련 권장 사항:

Php 암호화 확장 라이브러리 - Mhash 확장 라이브러리 인스턴스 사용법 자세히

설치 방법 Mhash 확장 라이브러리_PHP 튜토리얼

PHP formhash 수행 방법

위 내용은 PHP는 향상된 mhash를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.