Heim >Backend-Entwicklung >PHP-Tutorial >PHP implementiert erweiterten Mhash

PHP implementiert erweiterten Mhash

*文
*文Original
2017-12-26 15:25:461446Durchsuche

Wie implementiert man erweiterten Mhash in PHP? In diesem Artikel wird hauptsächlich die in PHP implementierte erweiterte Mhash-Funktion vorgestellt. Bei Verwendung der Standard-Mhash-Funktion wird ein Fehler gemeldet und es werden zwei Lösungen gefunden. Ich hoffe, es hilft allen.

Als ich heute die Verschlüsselungsfunktion mhash von PHP verwendet habe, habe ich eine Fehlermeldung erhalten: Schwerwiegender Fehler: Aufruf der undefinierten Funktion mhash()

mhash ist eine integrierte Funktion von PHP, aber ich habe eine Fehlermeldung erhalten Als ich es verwendet habe..

Nach einiger Recherche haben wir zwei Methoden zusammengefasst:

1. Importieren Sie die Erweiterungsdatei php_mhash.dll. Außerdem müssen Sie libmhash.dll importieren der mhash-Bibliothek hängt von dieser Datei ab),

Laden Sie „LoadFile C:/php/libmhash.dll“ in Apaches Konfigurationsdatei Httpd.conf

2, verwenden Sie die benutzerdefinierte mhash-Erweiterungsfunktion .

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)));
}


Die Parameter $key und $data in der Funktion hmac_md5 entsprechen den ursprünglichen 3,2-Parametern von mhash.

Beide Methoden können die mhash-Verschlüsselungsfunktion erfolgreich nutzen von PHP

Verwandte Empfehlungen:

PHP-Verschlüsselungserweiterungsbibliothek – Beispiel-Nutzungsdetails für die Mhash-Erweiterungsbibliothek

PHP So installieren Sie die Mhash-Erweiterungsbibliothek_PHP-Tutorial

So führen Sie PHP-Formhash speziell aus

Das obige ist der detaillierte Inhalt vonPHP implementiert erweiterten Mhash. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn