解析PHP安全編程的加密功能(2)_PHP教程
推薦:如何在PHP中將圖片存放ORACLE中我這里提供一個(gè)用PHP操縱blob字段的例子給你,希望能有所幫助! 這個(gè)例子是把用戶上傳的圖片文件存放到BLOB中。 假設(shè)有一個(gè)表,結(jié)構(gòu)如下: 以
| 以下為引用的內(nèi)容:
crypt()和Apache的口令-應(yīng)答驗(yàn)證系統(tǒng)的應(yī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; ?> |
上面就是一個(gè)核實(shí)用戶訪問權(quán)限的簡(jiǎn)單身份驗(yàn)證系統(tǒng)。在使用crypt()保護(hù)重要的機(jī)密資料時(shí),記住在缺省狀態(tài)下使用的crypt()并不是最安全的,只能用在對(duì)安全性要求較低的系統(tǒng)中,如果需要較高的安全性能,就需要我在本篇文章的后面介紹的算法。
下面我將介紹另一個(gè)PHP支持的函數(shù)━━md5(),這一函數(shù)使用MD5散列算法,它有幾種很有趣的用法值得一提:
混編
一個(gè)混編函數(shù)可以將一個(gè)可變長(zhǎng)度的信息變換為具有固定長(zhǎng)度被混編過的輸出,也被稱作“信息文摘”。這是十分有用的,因?yàn)橐粋(gè)固定長(zhǎng)度的字符串可以用來檢查文件的完整性和驗(yàn)證數(shù)字簽名以及用戶身份驗(yàn)證。由于它適合于PHP,PHP內(nèi)置的md5()混編函數(shù)將把一個(gè)可變長(zhǎng)度的信息轉(zhuǎn)換為128位(32個(gè)字符)的信息文摘�;炀幍囊粋(gè)有趣的特點(diǎn)是不能通過分析混編后的信息得到原來的明碼,因?yàn)榛炀幒蟮慕Y(jié)果與原來的明碼內(nèi)容沒有依賴關(guān)系。 即便只改變一個(gè)字符串中的一個(gè)字符,也將使得MD5混編算法計(jì)算出二個(gè)截然不同的結(jié)果。我們首先來看下表的內(nèi)容及其相應(yīng)的結(jié)果:
分享:解析PHP在linxu下的安裝與配置環(huán)境需求與準(zhǔn)備工作 在安裝 PHP 做為 WWW 服務(wù)器的一部份時(shí),我們可以考慮用 UNIX 操作系統(tǒng);或者是 Windows NT/95 等 Win32 API 的平臺(tái)。當(dāng)然,大部份的人都會(huì)使用 UNIX 來當(dāng)作 PHP 的
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁(yè)面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語(yǔ)言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國(guó)語(yǔ)言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
- 相關(guān)鏈接:
- 教程說明:
PHP教程-解析PHP安全編程的加密功能(2)
。