PHP加密與解密

2021-09-23 17:37:30 字數 1555 閱讀 3251

一、不可逆的加密函式為:md5()、crypt() 

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

crypt() 將字串用 unix 的標準加密 des 模組加密。這是單向的加密函式,無法解密。欲比對字串,將已加密的字串的頭二個字元放在 salt 的引數中,再比對加密後的字串。語法為:string crypt(string str, string [salt]); 

二、可逆轉的加密為: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); 將復回原樣 

看段**: 

複製** **如下:

<?php 

define("str","墨劍");

echo 'md5 加密後的結果為:'.md5(str).'

';//md5 加密

echo 'crypt加密後的結果為:'.crypt(str,str).'

';// crypt加密

$base64encode=base64_encode(str);// base64_encode() 加密

echo 'base64_encode加密後的結果為:'.$base64encode.'

'; echo 'base64_decode解密後的結果為:'.base64_decode($base64encode).'

'; //base64_decode()解密

$urlencode=urlencode(str); //urlencode() 加密

echo 'urlencode加密後的結果為:'.$urlencode.'

'; echo 'urldecode解密後的結果為:'.urldecode($urlencode).'

';//urldecode() 解密

?>

輸出的結果為: 

md5 加密後的結果為:ea796af15c74e90faeba49576fa7984b 

crypt加密後的結果為:墨ylczgttyxps 

base64_encode加密後的結果為:xku9ow== 

base64_decode解密後的結果為:墨劍 

urlencode加密後的結果為:%c4%ab%bd%a3 

urldecode解密後的結果為:墨劍 

注:加號處理:str_replace('+', '%2b', base64_encode(serialize($string)));

php 資料加密與解密

最近突發奇想,想實現乙個小功能,具體的保密,呵呵 其中一段我想用資料加密來實現,但是這個並不是像md5那樣單xiang的,因為我只是想在傳輸過程中加密,而傳輸到了後再進行解密。而且我並不想在伺服器端裝什麼元件。所以就.研究.了一下,沒有結果。結果得到了如下函式 base64 encode base6...

PHP加密解密

加密 function string2secret str 解密 function secret2string sec echo secret2string string2secret 11111111111111111 顯示結果是11111111111111111 echo string2secr...

PHP 加密 解密

由於出於安全考慮,引數傳遞的時候需要進行加密和解密,乙個比較簡單的方法是直接使用php中的函式mcrypt encrypt mcrypt decrypt,乙個加密,乙個解密,但是問題又出現了,這個加密過程中會產生一些使url混亂的符號,於是在加密後對加密字元再進行一次處理,然後多了一一次解析 key...