-1
Ich benutze diesen Code, um das Passwort zu verschlüsseln, aber es funktioniert nicht PHP 5.6 oder höhere Versionen. Bitte schlagen Sie mir einen neuen Code vor, ohne algo zu ändern.php Verschlüsselung funktioniert nicht in Version 5.6 oder höher?
bitte geben Sie mir neuen Code ohne Algorithmus zu ändern.
<?php
class Encryption {
var $skey = "844958uyjd875e89t5f4h6j4h5g"; // you can change it
public function safe_b64encode($string) {
$data = base64_encode($string);
$data = str_replace(array('+','/','='),array('-','_',''),$data);
return $data;
}
public function safe_b64decode($string) {
$data = str_replace(array('-','_'),array('+','/'),$string);
$mod4 = strlen($data) % 4;
if ($mod4) {
$data .= substr('====', $mod4);
}
return base64_decode($data);
}
public function encode($value){
if(!$value){return false;}
$text = $value;
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $this->skey, $text, MCRYPT_MODE_ECB, $iv);
return trim($this->safe_b64encode($crypttext));
}
public function decode($value){
if(!$value){return false;}
$crypttext = $this->safe_b64decode($value);
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$decrypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $this->skey, $crypttext, MCRYPT_MODE_ECB, $iv);
return trim($decrypttext);
}
}
?>
Warum sollte man ein Passwort so verschlüsseln wollen?!? – arkascha
Was bedeutet _ "nicht funktioniert" _? Fehler? Falsches Ergebnis? In jedem Fall. ** Sie sollten niemals verschlüsselte Passwörter speichern. ** Das ist ein großes Sicherheitsrisiko. Sie sollten _only_ Passwort Hashes speichern! –
Überprüfen Sie zuerst, ob mcrypt installiert ist oder nicht ?. Wenn es nicht installiert ist, installieren Sie es von einem Drittanbieter. –