php加密演算法小結

2021-06-23 00:36:10 字數 2408 閱讀 7272

<?php

#加密演算法

header('content-type:text/html;charset=utf-8;');

$password='hugehugehuge';

$pwd='hugehuge';

//md5加密,單向加密演算法,兩個引數,1必寫,要加密的字串,

//2第二個引數是bool值,為真, md5 報文摘要將以16位元組長度的原始二進位制格式返回。返回32位字串

echo 'md5預設呼叫:

';echo md5($password);

echo "

";echo 'md5配置第二個引數呼叫:

';echo md5($password,true);

//cryp,單向加密演算法,兩個引數,1.引數要加密的明文,它也只使用該明文的開始 8 個字元

//2。加密的干擾串,預設是兩位,如果不寫,則由系統隨機生成兩位字元,也叫做鹽值或金鑰。

echo '

';echo '';

echo "crypt加密演算法

";echo crypt($password);

echo '

';echo crypt($password,'hu');

if(crypt_std_des)

if(crypt_md5)

//sha1加密演算法,返回40位長度的字串,單向加密演算法

echo 'sha1預設呼叫:

';echo sha1($password);

echo "

";echo 'md5配置第二個引數呼叫:

';echo sha1($password,true);

//url加密和解密

//urlencode,傳入字串中除了-_.之外的所有非字母數字字串都將

//被替換成百分號(%)後跟兩位16進製制數,空格則編碼為加號(+)

echo 'url加密和解密

';$url1='this is a url';

echo urlencode($url1);

echo '

';$url2='www.qdweb.com?username=2+3%4 huge &king # or \1=1';

echo urlencode($url2);

/*常用的轉換

?變成 %3f

=變成 %3d

空格 變成 +

% 變成 %25

& 變成 %26

\ 變成 %5c

+ 變成 %2b

*/echo '

urldecode的乙個用處:合併引數,

';if(!empty($_get))

echo '

';$url3='';

echo 'urldecode合併引數';

//按照rfc1738進行編碼,將空格轉換20%,其他同上

echo rawurlencode($url2);

#解碼$url='this is a test!';

$enurl=urlencode($url);

echo '

urlencode編碼後:'.$enurl;

$deurl=urldecode($enurl);

echo '

urlencode解碼後:'.$deurl;

#解碼$url='this is a test!';

$enurl=rawurlencode($url);

echo '

rawurlencode編碼後:'.$enurl;

$deurl=rawurldecode($enurl);

echo '

rawurlencode反編碼後:'.$deurl;

//urldecode也可以將20%解碼成空格

$deurl=urldecode($enurl);

echo '

urlencode解碼rawurlencode編碼後的字串:'.$deurl;

//base64_encode(),使用base64對傳入字串進行編碼

//一般用在郵件中,對二進位制進行編碼

$data='虎哥是男神!!';

echo 'base64_encode加密後:';

$endata=base64_encode($data);

echo $endata;

//base64_decode(data,bool strict),對使用mime base64編碼的資料進行解碼

//如果輸入的資料超出了base64字母表,則返回false

echo '

base64_decode解密後:';

echo base64_decode($endata);

?>

加密演算法小結

根據金鑰長度不同,對稱演算法提供了多種級別的安全度。如果使用1024位或更長的金鑰,非對稱加密也被認為是安全的。對稱加密演算法有 1 des 對稱分組密碼。56位,常用的加密演算法,然而其安全效能較差 2 tripledes 對稱分組密碼,168位 112位有效 對des做了一些比較好的改進,而且它...

加密演算法小結

1.密碼為什麼要加密傳輸?防止明文密碼在傳輸過程中被竊取 2.密碼的加密方式?對稱加密演算法 非對稱加密演算法 雜湊演算法 參照詳解 3.撞庫 拖庫 洗庫名詞解釋 拖庫 是指黑客入侵有價值的網路站點,把註冊使用者的資料資料庫全部盜走的行為 洗庫 在取得大量的使用者資料之後,黑客會通過一系列的技術手段...

常見加密演算法小結

1.des 2.md5 3.aes 4.sha 衡量乙個加密演算法的優劣性,主要從以下幾個方面考慮 1.是否足夠安全,2.機密過程耗時長短 下面文字摘自百空間 乙個加密系統s可以用數學符號描述如下 s 其中 p 明文空間,表示全體可能出現的明文集合,c 密文空間,表示全體可能出現的密文集合,k 金鑰...