Php 显示加密的数据库字段
我终于完成了早该完成的从PHP5.6到PHP7.3的跳跃,并将mySQL升级到了MariaDB。除了一个应用程序外,所有应用程序似乎都在工作。我不介意尝试修复脚本中的代码,但我希望得到数据转储 其中两个字段已加密。我有salt和加密代码,但我没有能力运行显示编码字段的查询 这是应用程序中的编码功能:Php 显示加密的数据库字段,php,mysql,mariadb,Php,Mysql,Mariadb,我终于完成了早该完成的从PHP5.6到PHP7.3的跳跃,并将mySQL升级到了MariaDB。除了一个应用程序外,所有应用程序似乎都在工作。我不介意尝试修复脚本中的代码,但我希望得到数据转储 其中两个字段已加密。我有salt和加密代码,但我没有能力运行显示编码字段的查询 这是应用程序中的编码功能: function encode($string) { $config = &singleton::get(__NAMESPACE__ . '\config'); $error
function encode($string) {
$config = &singleton::get(__NAMESPACE__ . '\config');
$error = &singleton::get(__NAMESPACE__ . '\error');
$level = $config->get('encryption_level');
$key = $config->get('encryption_key');
switch ($level) {
case 2:
$error->create(array('type' => 'security_error', 'message' => 'Encode function cannot be used for this database security level.'));
break;
default:
$encrypted = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($key), $string, MCRYPT_MODE_CBC, md5(md5($key))));
break;
}
return $encrypted;
}
有人能帮忙吗?我们阅读了文档: mcrypt_加密字符串$cipher,字符串$key,字符串$data,字符串 $mode[,字符串$iv]:字符串 mcrypt_解密字符串$cipher,字符串$key,字符串$data,字符串 $mode[,字符串$iv]:字符串 因此,如果这对其进行加密: $encrypted=base64_encodemcrypt_encryptMCRYPT_RIJNDAEL_256,md5$key,$string,MCRYPT_MODE_CBC,md5md5$key; 这将有望解密它: $decrypted=base64_decodemcrypt_decryptMCRYPT_RIJNDAEL_256,md5$密钥,$encrypted,MCRYPT_MODE_CBC,md5md5$密钥;
谢谢大家的建议。与此同时,我采取了一种不同的方法,在Wampserver和hey presto上加载了一个本地PHP5.6实例!应用程序将再次运行
现在,我可以使用剪切粘贴和工作应用程序的奢侈功能提取我需要的信息。虽然不完美,但它可以工作。完全取决于您对其进行加密的方式。如果它是通过PHP加密的,你需要通过解密算法来运行它。或者加密经常与单向散列混淆,在这种情况下根本不可能解密,相反的是mcrypt_decrypt