php7.3 에서 decrypt 하기
본문
encrypt되어있는 db를 decrypt로 풀어야 하는데
php7.3에서는 복호가 안됩니다.
반드시 php7.3을 써야 하는데 암호화되어있는 db를 어떻게 풀수 있을까요.
관련문서는 모두 찾아봤는데 불가능 한 것 같습니다.
혹시 아시는분계시면 팁을 주시면 감사하겠습니다.
답변 1
https://www.programmersought.com/article/9473127336/
참고해 보세요.
https://www.php.net/manual/en/function.openssl-encrypt.php
<?php
function encrypt($data, $key)
{
$l = strlen($key);
if ($l < 16)
$key = str_repeat($key, ceil(16/$l));
if ($m = strlen($data)%8)
$data .= str_repeat("\x00", 8 - $m);
if (function_exists('mcrypt_encrypt'))
$val = mcrypt_encrypt(MCRYPT_BLOWFISH, $key, $data, MCRYPT_MODE_ECB);
else
$val = openssl_encrypt($data, 'BF-ECB', $key, OPENSSL_RAW_DATA | OPENSSL_NO_PADDING);
return $val;
}
function decrypt($data, $key)
{
$l = strlen($key);
if ($l < 16)
$key = str_repeat($key, ceil(16/$l));
if (function_exists('mcrypt_encrypt'))
$val = mcrypt_decrypt(MCRYPT_BLOWFISH, $key, $data, MCRYPT_MODE_ECB);
else
$val = openssl_decrypt($data, 'BF-ECB', $key, OPENSSL_RAW_DATA | OPENSSL_NO_PADDING);
return $val;
}
$data = 'my secret message';
$key = 'dontsay';
$c = encrypt($data, $key);
$d = decrypt($c, $key);
var_dump($c);
var_dump($d);
?>
How to install mcrypt for PHP 7.2
https://www.techrepublic.com/article/how-to-install-mcrypt-for-php-7-2/