Мне нужно расшифровать данные, хранящиеся в базе данных mysql.
Это работало в моих тестах, но теперь, когда оно работает и пользователи отправляют данные, выходные данные не расшифровываются во что-либо читаемое.
function encrypt($text,$key){
$key = md5("Salt1". $key . "Salt2");
return trim(
base64_encode(
mcrypt_encrypt(
MCRYPT_RIJNDAEL_256,
$key,
$text,
MCRYPT_MODE_ECB,
mcrypt_create_iv(
mcrypt_get_iv_size(
MCRYPT_RIJNDAEL_256,
MCRYPT_MODE_ECB
),
MCRYPT_RAND
)
)
)
);
}
Таким образом, данные были зашифрованы при отправке, а данные ключа взяты из пары столбцов в одной строке.
Но используя:
function decrypt($text,$key){
$key = md5("Salt1". $key . "Salt2");
return trim(
mcrypt_decrypt(
MCRYPT_RIJNDAEL_256,
$key,
base64_decode($text),
MCRYPT_MODE_ECB,
mcrypt_create_iv(
mcrypt_get_iv_size(
MCRYPT_RIJNDAEL_256,
MCRYPT_MODE_ECB
),
MCRYPT_RAND
)
)
);
}
Я просто получаю больше зашифрованного мусора.
Мне нужно другое решение, кроме как попросить пользователей вернуться и обновить свою информацию.