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

主站蜘蛛池模板: 国产免费自拍视频| 国产精品99久久久| 天堂网亚洲系列亚洲系列| 波多野结衣视频网站| 精品亚洲麻豆1区2区3区| 国产欧美视频综合二区| 九九久久99精品| 亚洲国产91人成在线| 91网在线| 国产精品无码AⅤ在线观看播放| 伊人久久福利中文字幕| 久久久久久高潮白浆| 精品久久777| 免费一级毛片| 成人午夜久久| 国产欧美高清| 国产高潮流白浆视频| 成年免费在线观看| 88av在线播放| 91欧美亚洲国产五月天| 免费国产不卡午夜福在线观看| 制服丝袜一区| 国产又爽又黄无遮挡免费观看| 欧美成一级| 国产在线拍偷自揄观看视频网站| 精品色综合| 亚洲最大福利视频网| 国产鲁鲁视频在线观看| 在线国产91| 日韩精品欧美国产在线| aa级毛片毛片免费观看久| 青青操国产视频| 999国产精品| 国产精品成| 日韩精品亚洲一区中文字幕| 亚洲人成影院午夜网站| 无码日韩视频| 国产一区二区免费播放| 亚洲中文字幕日产无码2021| 久久大香香蕉国产免费网站| 人妻熟妇日韩AV在线播放| 欧美色亚洲| 国产女人18毛片水真多1| 国产午夜人做人免费视频中文| 亚洲国产综合自在线另类| 国产第四页| 97se亚洲综合在线韩国专区福利| 91网址在线播放| 伊人成人在线| 色婷婷在线影院| 色妞永久免费视频| 欧美性久久久久| 伊人久综合| 欧美亚洲国产一区| 中文字幕日韩欧美| 色天堂无毒不卡| 国产大片喷水在线在线视频| 亚洲精品无码高潮喷水A| 91在线播放免费不卡无毒| 国产精品成人AⅤ在线一二三四| 视频二区欧美| 亚洲av无码牛牛影视在线二区| 欧美一区中文字幕| 欧美中出一区二区| 噜噜噜久久| 国产亚洲欧美在线人成aaaa| www.亚洲色图.com| 青青青国产在线播放| 亚洲中文制服丝袜欧美精品| 亚洲综合狠狠| 深夜福利视频一区二区| 韩国v欧美v亚洲v日本v| 国产九九精品视频| 国产毛片网站| 波多野结衣久久高清免费| 亚洲黄色片免费看| 国产特一级毛片| 少妇精品网站| 97国产成人无码精品久久久| 人人澡人人爽欧美一区| www欧美在线观看| 91精品专区国产盗摄|