程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 淺談discuz密碼加密的方式

淺談discuz密碼加密的方式

編輯:PHP綜合

discuz注冊時,會把密碼按一個規則加密。

比如我的密碼是123456

復制代碼 代碼如下:
echo md5("123456"); 

會輸出:

復制代碼 代碼如下:
e10adc3949ba59abbe56e057f20f883e

而數據庫的值卻為:

復制代碼 代碼如下:
7839dc9437013b5c11a5d86e9b8350e9 

注意到:

有個叫salt的字段,其值為:d82a35

其實這是一個隨機的字符串。

第一次md5後的值再加上鹽值(salt)再進行md5,就是要得到的值了。

試一下

復制代碼 代碼如下:
echo md5(md5('123456').'d82a35'); 

這回結果是:7839dc9437013b5c11a5d86e9b8350e9,是對的。

在php5.5之前的版本,並沒有很好的加密機制。這是個不錯的方式。已經大大地加強了密碼的安全性了。

而php5.5中有更為可靠和方便的加密方式。喜歡鑽研的朋友可以了解一下:

password_hash()

http://www.php.net/manual/zh/function.password-hash.php

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