2013-03-14 24 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; } 
}