程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 加強用戶密碼保存及檢驗的安全性

加強用戶密碼保存及檢驗的安全性

編輯:關於PHP編程

以下 $username, $password 分別指用戶名和密碼,$sitekey 為站點擾碼。

  密碼設置

<input type="password" name="passwd" />
<input type="hidden" name="t_code0" />

  提交的時候,使用 javascript 處理


t_code0.value = md5 (username.value "|" passwd.value);
passwd.value = '';

  假如提交的 passwd 有值或 t_code0 為空,設置密碼失敗;

  t_code0 的值保存到數據庫的 save_pwd 字段中;


  密碼校驗

  1. 用戶端申請登錄
  服務器生成隨機碼 $sid,保存到 $_SESSION[sid] 中,同時傳遞給用戶;

  表單


<input type="hidden" name="sid" value="..." />
<input name="username" />
<input type="password" name="passwd" />
<input type="hidden" name="t_code" />

  2. 用戶輸入用戶名和密碼,提交的時候,使用 javascript 處理


var t = md5 (username.value "|" passwd.value);
t_code.value = md5 (sid "|" t);
passwd.value = '';
  3. 服務器端判定
  假如 username 為空 或 passwd 非空 或 t_code 為空,返回登錄頁;
  如沒有 $_SESSION[sid],返回登錄頁;


[php]

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved