PHP中的md5解密

PHP中的md5解密,php,encryption,hash,md5,Php,Encryption,Hash,Md5,我正在开发一个在线酒店预订系统,我不是从零开始的。系统中的客户(预订者)信息使用MD5加密,但与普通的MD5()php函数不同,系统非常复杂,如您在此处所见: $psw = md5("vhdsxnjuobef"); $t_cred_num = md5_encrypt($t_cred_num, $psw, 16); 对于解密,它是这样的: $psw = md5("vhdsxnjuobef"); $t_credit_num = md5_decrypt($t_cred_num, $psw, 16);

我正在开发一个在线酒店预订系统,我不是从零开始的。系统中的客户(预订者)信息使用MD5加密,但与普通的MD5()php函数不同,系统非常复杂,如您在此处所见:

$psw = md5("vhdsxnjuobef");
$t_cred_num = md5_encrypt($t_cred_num, $psw, 16);
对于解密,它是这样的:

$psw = md5("vhdsxnjuobef");
$t_credit_num = md5_decrypt($t_cred_num, $psw, 16);
这个代码在我的服务器上不起作用,而且有很多客户的信息被加密了

t_cred_num变量的哈希示例=>

 fdRucZHctr7vIX+U400xGHq53Qemze0YQH1sAUjvmaC1P+XaRadI9CaX0wrkDXu6

关于如何解密这些散列有什么想法吗?当我将md5_解密与哈希一起使用时,什么都不会发生。

我认为md5_crypt和md5_encrypt是由以前的开发人员手工制作的函数。md5不应该是可解密的。散列应该是单向函数:


因此,您需要找到这些函数的定义。在代码文件中搜索“function md5_3;”应该可以找到代码中定义它们的位置

无法解密md5。您可以做两件事:

  • 如果您有其他帐户或知道其他帐户的密码,请复制该帐户的md5字符并将其放置在您的帐户上
  • 搜索md5,比如说“admin”。在您的帐户上粘贴与md5相当的“admin”一词。你也可以用其他的词

  • 之后,登录到您的帐户,然后更改回您的密码

    如何在linux中全局搜索“function md5”*-Rgrep“function md5”*-R查看此处:我找到了函数:更多信息:不要使用这些函数。他们以一种令人难以置信的不安全的方式滥用MD5。对这个函数的不安全性的全面分析不适合这个评论框。只要说一句就够了:它有许多严重的密码缺陷,这使得它可以进行广泛的分析。使用由真正的密码学家设计的密码算法。信用卡号是非常敏感的信息,只要可能,你就不应该存储它们,看看这个问题的答案。如果您确实需要存储它们,则必须遵守。信用卡号码的问题是,它们很短,而且必须可以解密,这使得安全存储它们非常困难。