999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

網站安全與PHP加密技術的應用研究

2016-05-14 20:32:28何志明
知音勵志·社科版 2016年6期

何志明

摘 要 隨著互聯網技術的發展,越來越多的PHP語言開發網站不斷涌現,特別是網絡上的大量交易和大量數據傳輸,PHP網站所暴漏出來的安全性問題也越來越突出,數據加密技術就顯越來越重要了。

【關鍵詞】網站安全;數據加密;PHP技術

1 PHP加密的基本原理

PHP是英文超文本處理語言Hypertext Preprocessor的縮寫,是對文件或數據按某種加密算法進行計算處理,使其成為不可讀的一段數字代碼,通過這樣的途徑來達到保護數據不被非法竊取和閱讀的目的。PHP 是一種 HTML 內嵌式的語言,是一種在服務器端執行的嵌入HTML文檔的腳本語言,現已被廣泛地運用。

2 PHP的常用函數及其應用

2.1 不可逆的加密函數為:md5()、crypt()

md5() 用來計算 MD5 哈稀。語法為:string md5(string str);

crypt() 將字符串用 UNIX 的標準加密 DES 模塊加密。這是單向的加密函數,無法解密。欲比對字符串,將已加密的字符串的頭二個字符放在 salt 的參數中,再比對加密后的字符串。語法為:string crypt(string str, string [salt])。

2.2 可逆轉的加密為:base64_encode()、urlencode() 相對應的解密函數:base64_decode() 、urldecode()

base64_encode() 將字符串以 MIME BASE64 編碼。此編碼方式可以讓中文字或者圖片也能在網絡上順利傳輸。語法為string base64_encode(string data); 它的解密函數為:string base64_decode(string encoded_data); 將復回原樣。

urlencode() 將字符串以 URL 編碼。例如空格就會變成加號。語法為:string urlencode(string str);

它的解密函數為:string urldecode(string str); 將復回原樣。

2.3 加密/解密字符串函數應用舉例

/**

* 可逆的字符串加密函數

* @param int $txtStream 待加密的字符串內容

* @param int $password 加密密碼

* @return string 加密后的字符串

*/

public static function enCrypt($txtStream,$password){

//密鎖串,不能出現重復字符,內有A-Z,a-z,0-9,/,=,+,_,

$lockstream = 'st=lDEFABCNOPyzghi_jQRST-UwxkVWXYZabcdef+IJK6/7nopqr89LMmGH012345uv';

//隨機找一個數字,并從密鎖串中找到一個密鎖值

$lockLen = strlen($lockstream);

$lockCount = rand(0,$lockLen-1);

$randomLock = $lockstream[$lockCount];

//結合隨機密鎖值生成MD5后的密碼

$password = md5($password.$randomLock);

//開始對字符串加密

$txtStream = base64_encode($txtStream);

$tmpStream = '';

$i=0;$j=0;$k = 0;

for ($i=0; $i

$k = ($k == strlen($password)) ? 0 : $k;

$j = (strpos($lockstream,$txtStream[$i])+$lockCount+ord($password[$k]))%($lockLen);

$tmpStream .= $lockstream[$j];

$k++;

}

/**

3 PHP加密擴展庫及應用

3.1 mhash擴展庫

安裝Mhash擴展庫:首先把PHP目錄下的libmhash.dll文件copy到系統目錄下,然后在php.ini文件中找到”;extension=php_mhash.dll”將前面的分號去掉,最后重啟服務器。

Mhash擴展庫常量:Mhash擴展庫支持MD5,SHA1,CRC32等多種散列算法,可以使用mhash_count()和mhash_get_hash_name()函數輸出支持的算法名稱。

Mhash擴展庫應用:獲取文件的全部內容:file_get_contents(文件名)。

3.2 Mcrypt()擴展庫

安裝Mcrypt()擴展庫:首先把PHP目錄下的libmcrypt.dll文件copy到系統目錄下,然后在php.ini文件中找到”;extension=php_mcrypt.dll”將前面的分號去掉,最后重啟服務器。

Mcrypt()擴展庫常量:支持20多種加密算法和8種加密模式,可以通過函數mcrypt_list_algorithms()和mcrypt_list_modes()來查看。

Mcrypt應用:初始化向量:mcrypt_create_iv(該向量的大小,向量的源(MCRYPT_RAND:取系統的隨機數))

獲取到初始化向量的大小:mcrypt_create_iv_size(加密算法;加密模式);

加密:mcrypt_encrypt(加密算法,密鑰,需要加密的數據,算法模式,向量);

解密:mcrypt_decrypt(加密算法,密鑰,需要解密的數據,算法模式,向量)。

4 結語

PHP加密函數或加密庫只是一種簡單的阻止數據在傳輸過程中泄密方式, PHP不能阻止數據在傳輸過程中泄密,Mcrypt和Mhash擴展庫則提供了更全面加密與解密方法。要想構建一個更加安全性的網站,需要將服務器與客戶端間數據傳輸的安全性綜合考慮,同時配合Apache-SSL等其它安全服務器使用,以便組建一個性能更加安全的網站系統。

作者單位

重慶三峽職業學院 重慶市 404155

主站蜘蛛池模板: 亚洲国产成人麻豆精品| 无码精品一区二区久久久| 欧美伦理一区| 亚洲天堂免费| 91精品国产自产在线老师啪l| 久久伊人操| 久久91精品牛牛| 日本免费一区视频| 国产一在线| 熟女日韩精品2区| 国产精品漂亮美女在线观看| 超碰aⅴ人人做人人爽欧美 | 538国产视频| 国产噜噜噜视频在线观看| 婷婷亚洲视频| 欧美中日韩在线| 2020极品精品国产| 一本大道东京热无码av| 久久国产拍爱| 欧美日韩第三页| 亚洲AV无码精品无码久久蜜桃| 精品视频91| 99视频精品全国免费品| 青青久视频| 五月六月伊人狠狠丁香网| 久久亚洲美女精品国产精品| 欧美高清国产| 亚洲男人在线| 亚洲欧美色中文字幕| 亚洲中文字幕无码mv| 精品一区二区三区中文字幕| 热热久久狠狠偷偷色男同| 亚洲色精品国产一区二区三区| 国产亚洲第一页| 极品私人尤物在线精品首页 | 国产精品yjizz视频网一二区| 国产aⅴ无码专区亚洲av综合网| 在线视频亚洲色图| 国产成人综合欧美精品久久| av尤物免费在线观看| 亚洲一区二区三区在线视频| 国产国模一区二区三区四区| 色噜噜狠狠色综合网图区| 久久国产免费观看| 国产成人综合久久| 国产99视频精品免费观看9e| 亚洲欧洲日韩久久狠狠爱| 一级全免费视频播放| 久久狠狠色噜噜狠狠狠狠97视色| 日本道综合一本久久久88| 亚洲无码37.| 97视频在线观看免费视频| 99视频在线免费观看| 国产本道久久一区二区三区| 国产xx在线观看| 国产精品所毛片视频| 欧美国产在线看| 成人在线视频一区| 无码免费视频| 成人在线综合| 国产h视频免费观看| 毛片免费在线视频| 色婷婷丁香| 欧美精品另类| 久久久波多野结衣av一区二区| 亚洲欧美一区在线| 亚洲AV电影不卡在线观看| 四虎影视国产精品| 国产呦视频免费视频在线观看| 国产成人亚洲综合A∨在线播放 | 亚洲天堂网在线播放| 国产精品伦视频观看免费| 日韩精品专区免费无码aⅴ| 无码又爽又刺激的高潮视频| 岛国精品一区免费视频在线观看 | 99re在线免费视频| 国产制服丝袜无码视频| 97se亚洲综合在线天天| 毛片在线播放网址| 国产精品福利社| 成人国产三级在线播放| 美女免费精品高清毛片在线视|