MD5方式存儲在資料庫
php將密碼存入資料庫,可以分內常見的4種方式:
1、直接md5加密存到到資料庫
2、md5兩次存到資料庫
3、對需要加密的字元串和一個常量 進行混淆加密
4、生成一個隨機的變數存到資料庫中,然後對需要加密的字元串和這個隨機變數加密
<?php$str="admin"; //需要加密的字元串$str2="php"; //增加一個常量混淆 $pass1=md5($str);$pass2=md5(md5($str));$pass3=md5($str.$str2);echo $pass1."<br>".$pass2."<br>".$pass3;?>
輸出:
第四種
$str="admin"; //需要加密的字元串$encrypt=$row['encrypt']; // 生成的 隨機加密字元串 存到資料庫中$pass4=md5($str.$encrypt);//
⑵ 如何把密碼等信息以MD5的形式加密存入資料庫!
先對密碼進行MD5求得散列,讓後將散列子串存入資料庫,等用戶登錄輸入密碼時候,對輸入進行MD5求散列,將獲得子串和資料庫中存入的比較,相等則輸入正確,否則輸入錯誤。
⑶ C#如何用MD5演算法實現上傳文件加密後存入資料庫,Winform的,請大神們回答的詳細一點,我實在是不懂!
用MD5加密文件不可行,MD5是不可逆加密,也就是說加密後無法還原,到時候取出來的時候無法還原成原始文件的
像文件加密這種,需要找一種可逆的加密演算法,MD5適合加密密碼這種不需要還原的,或者用於計算文件的MD5用於較對看看是否產生變化
⑷ MD5是做什麼用的啊
MD5中文名為消息摘要演算法第五版,英文全稱Message-Digest Algorithm 5。
MD5為計算機安全領域廣泛使用的一種散列函數,用以提供消息的完整性保護。該演算法的文件號為RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc. April 1992)。
MD5演算法具有以下特點:
1、壓縮性:任意長度的數據,算出的MD5值長度都是固定的。
2、容易計算:從原數據計算出MD5值很容易。
3、抗修改性:對原數據進行任何改動,哪怕只修改1個位元組,所得到的MD5值都有很大區別。
4、弱抗碰撞:已知原數據和其MD5值,想找到一個具有相同MD5值的數據(即偽造數據)是非常困難的。
5、強抗碰撞:想找到兩個不同的數據,使它們具有相同的MD5值,是非常困難的。
(4)MD5方式存儲在資料庫擴展閱讀:
對MD5演算法簡要的敘述可以為:MD5以512位分組來處理輸入的信息,且每一分組又被劃分為16個32位子分組,經過了一系列的處理後,演算法的輸出由四個32位分組組成,將這四個32位分組級聯後將生成一個128位散列值。
MD5
1991年,Rivest開發出技術上更為趨近成熟的md5演算法。它在MD4的基礎上增加了"安全-帶子"(safety-belts)的概念。雖然MD5比MD4復雜度大一些,但卻更為安全。
這個演算法很明顯的由四個和MD4設計有少許不同的步驟組成。在MD5演算法中,信息-摘要的大小和填充的必要條件與MD4完全相同。Den boer和Bosselaers曾發現MD5演算法中的假沖突(pseudo-collisions),但除此之外就沒有其他被發現的加密後結果了。
⑸ 為什麼密碼要以MD5值存儲在資料庫
首先,密碼欄位肯定是字元串格式,可變長字元串比如varchar(20)。
字元串格式可以包含字母,數字和一些常用特殊字元
其次,一個健全的資料庫存儲的密碼不應該以明文的形式存儲。
比如通過MD5編碼的形式存儲密碼,這樣既安全又保持唯一性。
⑹ MD5處理怎麼使用啊!我用它來存放密碼,然後與資料庫里邊的數據比對,分明正確了,為什麼提示錯誤啊!
密碼輸入後的字元串str1 經過md5加密後為 str2, 這里str2才是放入資料庫裡面的數據。
你取出來的str2在文本框裡面的顯示出來是正確的字元串。
你把過程理解錯了吧 。
在資料庫裡面如果你看見數據是正確的(密碼和你輸入的一樣的話) ,說明你存入資料庫的時候沒有加密,取出來的時候加密了,過程寫反了吧
⑺ 如何使用MD5對密碼進行加密後再保存到資料庫中
對!!
你資料庫里的密碼是經過md5加密過的,登錄時你輸入密碼後系統會把你的密碼進到md5加密,然後再與資料庫里的加密的md5碼進行對比!!這是為了防止惡意程序進行監聽你的密碼!!
⑻ 各位用php將密碼存入資料庫,都用什麼方法進行加密的
php將密碼存入資料庫,可以分內常見的4種方式:
1、直接md5加密存到到資料庫
2、md5兩次存到資料庫
3、對需要加密的字元串和一個常量 進行混淆加密
4、生成一個隨機的變數存到資料庫中,然後對需要加密的字元串和這個隨機變數加密
<?php
$str="admin";//需要加密的字元串
$str2="php";//增加一個常量混淆
$pass1=md5($str);
$pass2=md5(md5($str));
$pass3=md5($str.$str2);
echo$pass1."<br>".$pass2."<br>".$pass3;
?>
輸出:
$str="admin";//需要加密的字元串
$encrypt=$row['encrypt'];//生成的隨機加密字元串存到資料庫中
$pass4=md5($str.$encrypt);
//
⑼ PHP怎麼給密碼加上MD5存入資料庫
1.
通過get或post獲取前台傳來的密碼
$_POST['password'];
2.
md5
函數加密: $pwd
=
md5($_POST['password']);
3.
寫入資料庫
insert
into
table(name,pwd)
value('name',$pwd);
⑽ MD5加密後的密碼存入資料庫後,如果用戶忘記了該怎麼找回呀...網上都說MD5隻能加密不能解密的
對 不能找回 除非1.你之前在資料庫保存明文密碼 2.提供用戶一個重新設置密碼的機會,通過密碼問題等方式讓用戶重新輸入密碼 然後保存新的MD5值