簡體   English   中英

使用PHP的用戶哈希密碼

[英]Hashing and Salting passwords from users using PHP

我被認為MD5和SHA1並不是處理密碼的最佳實踐,因此我想確保以最安全的方式進行操作。

我不知道如何實現,我從另一個“開發人員”那里得到了一個站點,該站點以純文本格式存儲了密碼……這就是為什么我現在要對其進行更正。

我的理解是:

  • 用戶注冊X,然后輸入所需的密碼以便以后登錄。

  • 輸入的詳細信息將提交到數據庫。 提交密碼並在服務器端加密,然后添加密碼。

  • 當用戶下次登錄時,密碼將被重新散列,並與現有數據庫中的條目進行比較。 如果密碼正確,則授予訪問權限。

我當前的設置是PHP,PHP My Admin管理數據庫。

我要:

是否需要單獨的表/數據庫來存儲哈希密碼/加鹽密碼? 我可以使用PHP中的現有函數來哈希密碼嗎? 是否需要先哈希,先加鹽然后再加胡椒粉密碼?

謝謝,我是PHP的新手,請確保此信息安全保存”

PHP v5.5提供了內置的授權功能。 閱讀:

password_hash()password_verify()

最好使用經過驗證的組件,而不要使用您自己創建的組件-尤其是授權過程。 授權失敗是主要漏洞之一!

您只需:

 <?php
 $password = md5($_POST['password']); // or md5($_GET['password'])
  // insert into the database

然后比較登錄時的相同過程

 $password = md5($_POST['password']);
 $login = "select username from users where password = '".$password."'";

完成:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM