你知道下面的程序輸出結果是多少嗎?
創(chuàng)新互聯(lián)建站長期為近1000家客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網生態(tài)環(huán)境。為崇明企業(yè)提供專業(yè)的網站建設、成都網站設計,崇明網站改版等技術服務。擁有10年豐富建站經驗和眾多成功案例,為您定制開發(fā)。
?php
echo md5('');
?
結果是:
d41d8cd98f00b204e9800998ecf8427e
上面的結果你是不是很眼熟呀,它就是你的結果呀,因為你的$_SESSION['pwd']為空,不信你輸出看看。
把這段密文分割成若干段,對每段都進行一次MD5運算,然后把這堆密文連成一個超長的字符串,最后再進行一次MD5運算,得到仍然是長度為32位的密文。
?php
//把密文分割成兩段,每段16個字符
function md5_2_1($data)
{
//先把密碼加密成長度為32字符的密文
$data = md5($data);
//把密碼分割成兩段
$left = substr($data, 0, 16);
$right = substr($data, 16, 16);
//分別加密后再合并
$data = md5($left).md5($right);
//最后把長字串再加密一次,成為32字符密文
return md5($data);
}
//把密文分割成32段,每段1個字符
function md5_2_2($data)
{
$data = md5($data);
//循環(huán)地截取密文中的每個字符并進行加密、連接
for ($i = 0; $i 32; $i++) {
$data .= md5($data{$i});
}
//這時$data長度為1024個字符,再進行一次MD5運算
return md5($data);
}
?
一般用來加密密碼,因為md5屬于不可逆的加密方式,所以認為它的安全性比較高,不過現(xiàn)在網上有一些網站專門提供md5解密,他們這種解密都是用的列舉法,基本上12位以下的數字組合都是能夠解密的,所以密碼一定要用數字和字母的組合。
1、先給你原來的數據表增加一個字段,字段名為md5,類型int,然后運行一個sql語句:
sql語句:update xxx set md5=0 將md5這個字段值變成0,即表示該數據未MD5保存。
2、把這段代碼保存為rewrite.php并把數據庫名修改成你對應的數據庫,然后運行。最好先把你的數據庫導出到本地的數據庫,然后在本地親自測試以下這段代碼的效果,之后再進行替換。
?php
/*讀取md5為0的前30條數據,由于考慮到PHP有個30秒超時的內置,所以一次更新30條,也可以大大降低對數據庫的負擔。*/
$sql=mysql_query("select id,password from XXX where md5=0 order by id desc limit 0,30");
$num=mysql_num_rows($sql);
if($num==0){
echo "所有MD5密碼替換完畢。"; //如果數據庫里面所有md5=0的記錄都變成了md5=1,則為修改完畢。
exit();
}else{
while($row=mysql_fetch_array($sql)){
$md5_pwd=md5($row['password']); //獲取原密碼,進行MD5化。
$query=mysql_query("update XXX set md5=1,password='".$md5_pwd."' where id=".$row['id'].""); //將該條數據進行更改,把原密碼改成MD5加密后的,并把md5值變成1,表示已經該條數據已經MD5加密
unset($query);
}
mysql_free_result($sql);
unset($sql,$row);
echo "meta http-equiv=\"refresh\" content=\"0;url=rewrite.php\""; //該30條記錄轉化完畢,繼續(xù)跳到這個頁面執(zhí)行,一直循環(huán)到替換結束。
exit();
}
mysql_close();
?
1.
通過get或post獲取前臺傳來的密碼
$_POST['password'];
2.
md5
函數加密: $pwd
=
md5($_POST['password']);
3.
寫入數據庫
insert
into
table(name,pwd)
value('name',$pwd);
網站標題:php給數據MD5加密,md5加密結果
當前路徑:http://sd-ha.com/article36/dsecosg.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站維護、動態(tài)網站、企業(yè)建站、全網營銷推廣、搜索引擎優(yōu)化、云服務器
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)