PHP基于mcript擴展實現(xiàn)對稱加密功能示例
本文實例講述了PHP基于mcript擴展實現(xiàn)對稱加密功能。分享給大家供大家參考,具體如下:
1.對稱加密主要利用相同的密鑰來實現(xiàn),而非對稱加密利用公鑰和私鑰來加密,比較而言對稱加密速度快,但是安全性要低
為什么使用base64_encode()
,主要是用于傳參,直接加密完成后不是我們能理解的字符串,也就是大家所說的亂碼
2.進行加密(使用mcript擴展,DES類型),關鍵點在于$key="key:1111"
,相同的密鑰串
<?php header("content-type:text/html;charset=utf-8"); $str = "我是加密前的內容"; //加密內容 $key = "key:1111"; //密鑰 $cipher = MCRYPT_DES; //密碼類型 $modes = MCRYPT_MODE_ECB; //密碼模式 $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);//初始化向量 echo "加密明文:".$str."<p>"; $str_encrypt = mcrypt_encrypt($cipher,$key,$str,$modes,$iv); //加密函數(shù) echo "加密密文:".$str_encrypt." <p>"; echo $str_encrypt=base64_encode($str_encrypt);
運行結果:
加密明文:我是加密前的內容
加密密文:���v꺾�"����c����~�Zitrn1duq6vt4i8v66Ea9jo7qZ2X7JWmkf
3.進行解密,$key="key:1111",相同的密鑰串
<?php header("content-type:text/html;charset=utf-8"); $key = "key:1111"; //密鑰 $cipher = MCRYPT_DES; //密碼類型 $modes = MCRYPT_MODE_ECB; //密碼模式 $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);//初始化向量 $str_encrypt="trn1duq6vt4i8v66Ea9jo7qZ2X7JWmkf";//這里的值是第2步中的$str_encrypt=base64_encode($str_encrypt); $str_encrypt=base64_decode($str_encrypt); echo "加密密文:".$str_encrypt." <p>"; $str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv); //解密函數(shù) echo "還原:".$str_decrypt;
運行結果:
加密密文:���v꺾�"����c����~�Zi
還原:我是加密前的內容
PS:關于加密解密感興趣的朋友還可以參考本站在線工具:
在線DES加密/解密工具
http://tools.jb51.net/password/des_encode
MD5在線加密工具:
http://tools.jb51.net/password/CreateMD5Password
在線散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt
在線MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha
在線sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode
更多關于PHP相關內容感興趣的讀者可查看本站專題:《php加密方法總結》、《PHP編碼與轉碼操作技巧匯總》、《PHP數(shù)學運算技巧總結》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結》、《PHP數(shù)據(jù)結構與算法教程》、《php程序設計算法總結》及《php正則表達式用法總結》
希望本文所述對大家PHP程序設計有所幫助。
相關文章
php使用filter_var函數(shù)判斷郵箱,url,ip格式示例
這篇文章主要介紹了php使用filter_var函數(shù)判斷郵箱,url,ip格式,簡單分析了php filter_var函數(shù)的功能、參數(shù),并結合實例形式給出了filter_var函數(shù)判斷郵箱,url,ip格式的相關操作技巧,需要的朋友可以參考下2019-07-07php使用QueryList輕松采集js動態(tài)渲染頁面方法
這篇文章給大家分享了php使用QueryList輕松采集js動態(tài)渲染頁面的相關知識點內容,有興趣的朋友學習下。2018-09-09PHP+AJAX實現(xiàn)無刷新注冊(帶用戶名實時檢測)
PHP+AJAX實現(xiàn)無刷新注冊(帶用戶名實時檢測)...2006-12-12使用PHP實現(xiàn)密保卡功能實現(xiàn)代碼<打包下載直接運行>
PHP實現(xiàn)密??üδ軐崿F(xiàn)代碼,腳本之家提供下載可以直接運行的~!不需要數(shù)據(jù)庫也不需要其他的,下載解壓直接放環(huán)境中就可以看到效果2011-10-10使用JSON實現(xiàn)數(shù)據(jù)的跨域傳輸?shù)膒hp代碼
某網(wǎng)站后臺用php腳本得到一個JSON格式的數(shù)據(jù),交給前臺javascript進行處理,使用JSON實現(xiàn)數(shù)據(jù)的跨域調用2011-12-12