2 Stimmen

Verwendung der undefinierten Konstante CRYPT_SHA512

Ich verwende ein php-Skript, das Passwörter mit php's crypt hasht und SHA512 verwendet, aber wenn ich versuche zu überprüfen, ob SHA512 gesetzt ist, erhalte ich die oben genannte Fehlermeldung. Natürlich weiß ich, WARUM ich diesen Fehler bekomme: php fehlt eine Abhängigkeit. Ich weiß nur nicht, was diese Abhängigkeit ist.

Kann mir bitte jemand sagen, was ich installieren muss (auf einem Ubuntu-Server), um SHA512 in PHP verwenden zu können?

Danke!

2voto

simshaun Punkte 20979

In den PHP-Dokumenten steht, dass die integrierte Unterstützung für SHA-256 und SHA-512 in PHP 5.3.2 hinzugefügt wurde. Wenn Sie frühere PHP-Versionen verwenden, sind Sie auf die Implementierungen dieser Algorithmen auf Ihrem System angewiesen, die auf Ihrem System offenbar nicht vorhanden sind.

0voto

Jack Punkte 1380

Stellen Sie sicher, dass Sie die neueste Version von PHP5 haben und installieren Sie mcrypt - enthält auch viele andere Verschlüsselungsmethoden wie rinjdael (AES)

0voto

huntar Punkte 1002

Unterm Strich sollten Sie mcrypt verwenden, nicht SHA512 oder einen md5-ähnlichen Hashwert. Es ist zu einfach, sie mit roher Gewalt zu entschlüsseln. Es gibt eine Menge guter Referenzen unter http://www.php.net/manual/en/function.mcrypt-generic.php und überall bei Google. Nachfolgend ein Beispiel für eine 3DES-verschlüsselte URL unter Verwendung der Referenzfunktion urlsafe_b64encode von http://www.php.net/manual/en/function.mcrypt-generic.php#71135

$key = "what can i tell you";
$request = http_build_query($_REQUEST);
$request_enc = urlencode(urlsafe_b64encode(mcrypt_ecb(MCRYPT_3DES, $key, $request, MCRYPT_ENCRYPT)));
$url = "http://localhost/takemerightthere/".$request_enc;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X