2013-03-14 53 views
0

加密的密码下面的代码是我一直用来加密在PHP密码......检索在PHP

$password = sha1(sha1($_POST['password']).sha1("[email protected]$#(%")); 

我可以使用什么代码,以便用户可以登录使用他们输入的内容?

回答

4

sha1是哈希算法,而不是双向加密。您无法检索原始密码。

  1. 使用相同的算法散列提交的密码。
  2. 从您的数据库中提取相关用户的密码哈希值。
  3. 比较两个哈希值。如果它们匹配,证书就可以。

+0

感谢您的答复。 – user2169832 2013-03-14 12:57:47

+0

感谢您的回复。我的问题是:我使用哪些代码让用户组成我的数据库可以登录到他们的账户?这只是一个小型的uni项目 – user2169832 2013-03-14 12:59:50

+0

写一个完整的认证系统有点超出了适用于SO问题的范围。 – Quentin 2013-03-14 13:04:00

0

您应该使用crypt进行密码散列,sha1/md5太弱。

所有你需要:

function check_password($password) { 
    ...//get db password to compare 
    if (crypt($post_password, $db_results[0]['password']) == $db_results[0]['password']) { 
     return true; 
    } else { return false; } 
}