解析PHP安全編程的加密功能(2)_PHP教程
推薦:如何在PHP中將圖片存放ORACLE中我這里提供一個用PHP操縱blob字段的例子給你,希望能有所幫助! 這個例子是把用戶上傳的圖片文件存放到BLOB中。 假設有一個表,結構如下: 以
| 以下為引用的內(nèi)容:
crypt()和Apache的口令-應答驗證系統(tǒng)的應用 = "localhost"; // Set authorization to False = 0; // Verify that user has entered username and password if (isset() && isset()) : mysql_pconnect(, , ) or die("Can''t connect to MySQL mysql_select_db() or die("Can''t select database!"); // Perform the encryption // Build the query = "SELECT username FROM members WHERE // Execute the query if (mysql_numrows(mysql_query()) == 1) : endif; // confirm authorization if (! ) : header(''WWW-Authenticate: Basic realm="rivate"''); else : print "This is the secret data!"; endif; ?> |
上面就是一個核實用戶訪問權限的簡單身份驗證系統(tǒng)。在使用crypt()保護重要的機密資料時,記住在缺省狀態(tài)下使用的crypt()并不是最安全的,只能用在對安全性要求較低的系統(tǒng)中,如果需要較高的安全性能,就需要我在本篇文章的后面介紹的算法。
下面我將介紹另一個PHP支持的函數(shù)━━md5(),這一函數(shù)使用MD5散列算法,它有幾種很有趣的用法值得一提:
混編
一個混編函數(shù)可以將一個可變長度的信息變換為具有固定長度被混編過的輸出,也被稱作“信息文摘”。這是十分有用的,因為一個固定長度的字符串可以用來檢查文件的完整性和驗證數(shù)字簽名以及用戶身份驗證。由于它適合于PHP,PHP內(nèi)置的md5()混編函數(shù)將把一個可變長度的信息轉(zhuǎn)換為128位(32個字符)的信息文摘。混編的一個有趣的特點是不能通過分析混編后的信息得到原來的明碼,因為混編后的結果與原來的明碼內(nèi)容沒有依賴關系。 即便只改變一個字符串中的一個字符,也將使得MD5混編算法計算出二個截然不同的結果。我們首先來看下表的內(nèi)容及其相應的結果:
分享:解析PHP在linxu下的安裝與配置環(huán)境需求與準備工作 在安裝 PHP 做為 WWW 服務器的一部份時,我們可以考慮用 UNIX 操作系統(tǒng);或者是 Windows NT/95 等 Win32 API 的平臺。當然,大部份的人都會使用 UNIX 來當作 PHP 的
- 相關鏈接:
- 教程說明:
PHP教程-解析PHP安全編程的加密功能(2)
。