[英]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.