PHP使用DES進(jìn)行加密與解密的方法詳解
DES是一種標(biāo)準(zhǔn)的數(shù)據(jù)加密算法,關(guān)于這個(gè)算法的詳細(xì)介紹可以參考wiki和百度百科:
php中有一個(gè)擴(kuò)展可以支持DES的加密算法,是:extension=php_mcrypt.dll
在配置文件中將這個(gè)擴(kuò)展打開(kāi)還不能夠在windows環(huán)境下使用
需要將PHP文件夾下的 libmcrypt.dll 拷貝到系統(tǒng)的 system32 目錄下,這是通過(guò)phpinfo可以查看到mcrypt表示這個(gè)模塊可以正常試用了。
下面是PHP中使用DES加密解密的一個(gè)例子:
//$input - stuff to decrypt
//$key - the secret key to use
function do_mencrypt($input, $key)
{
$input = str_replace(""n", "", $input);
$input = str_replace(""t", "", $input);
$input = str_replace(""r", "", $input);
$key = substr(md5($key), 0, 24);
$td = mcrypt_module_open('tripledes', '', 'ecb', '');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$encrypted_data = mcrypt_generic($td, $input);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return trim(chop(base64_encode($encrypted_data)));
}
//$input - stuff to decrypt
//$key - the secret key to use
function do_mdecrypt($input, $key)
{
$input = str_replace(""n", "", $input);
$input = str_replace(""t", "", $input);
$input = str_replace(""r", "", $input);
$input = trim(chop(base64_decode($input)));
$td = mcrypt_module_open('tripledes', '', 'ecb', '');
$key = substr(md5($key), 0, 24);
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$decrypted_data = mdecrypt_generic($td, $input);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return trim(chop($decrypted_data));
}
- PHP中加密解密函數(shù)與DES加密解密實(shí)例
- PHP簡(jiǎn)單實(shí)現(xiàn)DES加密解密的方法
- PHP實(shí)現(xiàn)的DES加密解密封裝類完整實(shí)例
- 通過(guò)PHP的內(nèi)置函數(shù),通過(guò)DES算法對(duì)數(shù)據(jù)加密和解密
- PHP實(shí)現(xiàn)的DES加密解密實(shí)例代碼
- PHP實(shí)現(xiàn)基于3DES算法加密解密字符串示例
- PHP實(shí)現(xiàn)的DES加密解密類定義與用法示例
- 兼容PHP和Java的des加密解密代碼分享
- PHP、Java des加密解密實(shí)例
- php實(shí)現(xiàn)和c#一致的DES加密解密實(shí)例
- PHP對(duì)稱加密算法(DES/AES)類的實(shí)現(xiàn)代碼
- php中加密解密DES類的簡(jiǎn)單使用方法示例
相關(guān)文章
六個(gè)步驟,從零開(kāi)始教你搭建基于WordPress的個(gè)人博客
這篇文章主要介紹了六個(gè)步驟,從零開(kāi)始教你搭建基于WordPress的個(gè)人博客,步驟講解的很清楚,不知道如何搭建wordpress的同學(xué)可以跟著搭建下2021-01-01php數(shù)組比較實(shí)現(xiàn)查找連續(xù)數(shù)的方法
這篇文章主要介紹了php數(shù)組比較實(shí)現(xiàn)查找連續(xù)數(shù)的方法,實(shí)例分析了php數(shù)組查找及字符串操作的相關(guān)技巧,需要的朋友可以參考下2015-07-07解析php中用PHPMailer來(lái)發(fā)送郵件的示例(126.com的例子)
本篇文章是對(duì)php中用PHPMailer來(lái)發(fā)送郵件的示例(126.com的例子)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06處理(php-cgi.exe?-?FastCGI?進(jìn)程超過(guò)了配置的請(qǐng)求超時(shí)時(shí)限)的問(wèn)題
本篇文章是對(duì)解決(php-cgi.exe?-?FastCGI?進(jìn)程超過(guò)了配置的請(qǐng)求超時(shí)時(shí)限)的問(wèn)題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-07-07詳解php內(nèi)存管理機(jī)制與垃圾回收機(jī)制
在PHP中,沒(méi)有任何變量指向這個(gè)對(duì)象時(shí),這個(gè)對(duì)象就成為垃圾。PHP會(huì)將其在內(nèi)存中銷毀;這是PHP的GC垃圾處理機(jī)制。PHP的內(nèi)存管理,分為倆部分, 第一部分是PHP自身的內(nèi)存管理,而第二部分是zend_alloc中描寫的關(guān)于PHP自身的內(nèi)存管理。本文將詳細(xì)介紹這兩個(gè)內(nèi)容。2021-05-05