国产激情久久久久影院小草_国产91高跟丝袜_99精品视频99_三级真人片在线观看

淺析PHP加密技術(shù)在網(wǎng)站安全方面的應(yīng)用

  • 相關(guān)推薦

淺析PHP加密技術(shù)在網(wǎng)站安全方面的應(yīng)用

  摘 要:PHP語言是當(dāng)前網(wǎng)站開發(fā)最熱門的語言之一,越來越多使用PHP語言開發(fā)的網(wǎng)站涌現(xiàn)在了互聯(lián)網(wǎng)上。但是由于安全意識的缺乏以及攻擊手段的層出不窮,PHP網(wǎng)站所暴漏出來的安全性問題也越來越多,本文主要就PHP中內(nèi)置的加密函數(shù)在網(wǎng)絡(luò)安全中的應(yīng)用進行敘述。

  關(guān)鍵詞:PHP;加密函數(shù);身份認(rèn)證;網(wǎng)站安全;

  引言

  自20世紀(jì)90年代國內(nèi)互聯(lián)網(wǎng)開始發(fā)展到現(xiàn)在,互聯(lián)網(wǎng)信息幾乎覆蓋了我們?nèi)粘;顒铀兄R范疇,并逐漸成為我們生活、學(xué)習(xí)、工作中必不可少的一部分。據(jù)統(tǒng)計,從2003年開始,我國的網(wǎng)頁規(guī);颈3至朔脑鲩L速度,并且呈上升趨勢。PHP語言作為當(dāng)今最熱門的網(wǎng)站程序開發(fā)語言,它具有成本低、速度快、可移植性好、內(nèi)置豐富的函數(shù)庫等優(yōu)點,因此被越來越多的企業(yè)應(yīng)用于網(wǎng)站開發(fā)中。出于對網(wǎng)絡(luò)交易和數(shù)據(jù)傳輸安全方面的考慮,動態(tài)網(wǎng)站技術(shù)PHP語言腳本中內(nèi)置了加密函數(shù),它是一種保證網(wǎng)站信息安全的最有效的方法。

  1.PHP的內(nèi)置函數(shù)及應(yīng)用

  PHP中的內(nèi)置函數(shù)包括單向函數(shù)crypt()、散列MD5、數(shù)據(jù)編碼與解碼base64_enecode/base64_decode等。

  1.1函數(shù)crypt()

  crypt()函數(shù)常用來對一些明文進行單向加密,例如,網(wǎng)站中需要驗證用戶的密碼時,就需要對用戶輸入的密碼進行單向加密,并將單向加密的密文與系統(tǒng)中保存的密文進行比較,若相同,則允許用戶登錄。string crypt(string input_string [, string salt])中的input_string是想要加密的字符串,可選參數(shù)salt能夠降低預(yù)計算攻擊的威脅。由于采用的是單向加密,加密后的密文一旦落入到了第三方的手中,也無法從中獲得明文,因此其意義不大。

  除單向加密外,crypt()函數(shù)還可以用來限制用戶的訪問權(quán)限,即對用戶進行身份驗證。首先創(chuàng)建一個有用戶名和密碼的表,然后將對應(yīng)的數(shù)據(jù)存入表中。這里每個口令的前兩個字母創(chuàng)建了干擾串。使用Apche的口令-應(yīng)答認(rèn)證配置提示用戶輸入用戶名和口令,PHP將其識別為$PHP_AUTH_USER和$PHP_AUTU_PW。

  1.2散列md5

  PHP中內(nèi)置的md5()將一個可變長度的信息轉(zhuǎn)化為128位消息摘要形式,檢查文件的完整性,并進行數(shù)字簽名驗證和身份驗證等。md5(string,raw)中的string為輸入計算的字符串,可選參數(shù)raw規(guī)定了十六進制或二進制輸出格式。使用該函數(shù)時,只有其中一個字符串中的一個字符發(fā)生了改變,則計算得到的結(jié)果也是截然不同的。

  1.3 base64_enecode與base64_decode

  Base64_encode()返回使用base64對數(shù)據(jù)所做的編碼,進而使二進制數(shù)據(jù)通過非純8-bit傳輸層傳輸。base64_decode 則對使用了MIME base64編碼的數(shù)據(jù)進行解碼,并返回原始數(shù)據(jù),此時返回的數(shù)據(jù)可能是二進制的。

  2.PHP加密擴展庫及應(yīng)用

  PHP主目錄下包含了兩個擴展庫:mcrypt和mhash。

  2.1mcrypt

  mcrypt提供了35種用于數(shù)據(jù)處理的函數(shù),下面介紹數(shù)據(jù)加密函數(shù)和數(shù)據(jù)解密函數(shù)mcrypt_encrypt()和mcrypt_decrypt()的應(yīng)用。

  $str=” PHP加密技術(shù)”;//要加密的文字

  $key=”key:123”;//密鑰

  $cipher=MCRYPT_ECB;//密碼類型

  $modes=MCRYPT_MODE_ECB;//密碼模式

  $iv=mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);//初始化向量

  Echo”輸入的明文” .$str.”

  ”;

  $str_encrypt=mcrypt_encrypt($cipher,$key,$str,$mode,$iv);//加密函數(shù)

  echo”加密后的密文” .$str_encrypt.”

  ”;

  $str_decrypt=mcrypt_decrypt($cupher,$key,$str_encrypt,modes,$iv);//解密函數(shù)

  Echo”還原”.$str_decrypt;

  ?>

  2.2 mhash

  Mhash支持的混編算法有:CRC32 HAVAL160 MD6;CRC32B HAVAL192 RIPEMD160;GOST HAVAL224 SHA1;HAVAL128 HVAL256 TIGER。需要注意的是mhash支持的所有算法的名字都是以MHASH_開頭的。

  4.結(jié)束語

  在上述有關(guān)PHP內(nèi)置函數(shù)及加密擴展庫的論述中,crypt()和md5()的功能方面存在一定的限制,Mcrypt和Mhash擴展庫則提供了更全面加密與解密方法。在應(yīng)用PHP加密為實際網(wǎng)站加密的過程中,由于PHP是一種服務(wù)器端技術(shù),不能阻止數(shù)據(jù)在傳輸過程中泄密,因此需要將服務(wù)器與客戶端間數(shù)據(jù)傳輸?shù)陌踩宰鳛橐粋重點的問題加以考慮,同時配合Apache-SSL等安全服務(wù)器,以此來實現(xiàn)一個更劇安全性能的網(wǎng)站系統(tǒng)。

  參考文獻

  [1]W.Jason Gilmore,朱濤江譯.PHP與PHP程序設(shè)計.北京:人民郵電出版社,2009

  [2]劉麗萍,張力宏,張?zhí)m蘭.使用PHP對信息進行加密傳輸?shù)难芯?情報科學(xué),2009,2(9):1383-1385

  [3]吳曉剛.PHP網(wǎng)站加密技術(shù)及其應(yīng)用.電腦編程技巧與維護,2011

【淺析PHP加密技術(shù)在網(wǎng)站安全方面的應(yīng)用】相關(guān)文章:

談數(shù)據(jù)加密技術(shù)在銀行系統(tǒng)中的應(yīng)用03-18

淺析多媒體網(wǎng)絡(luò)技術(shù)在中醫(yī)藥教育方面的應(yīng)用展望02-28

淺析安鋼互聯(lián)網(wǎng)站的動態(tài)設(shè)計與應(yīng)用03-05

多線程技術(shù)在邊緣檢測方面的應(yīng)用11-22

淺析數(shù)據(jù)融合技術(shù)及其在林業(yè)中的應(yīng)用03-19

人臉信息技術(shù)應(yīng)用新熱點淺析03-05

網(wǎng)絡(luò)安全技術(shù)淺析03-21

高通量篩選技術(shù)在藥物研究方面的應(yīng)用01-01

USB技術(shù)在數(shù)據(jù)采集方面的研究與應(yīng)用03-07

淺析多媒體技術(shù)在高校音樂教學(xué)中的應(yīng)用03-08