PHP使用DES进行加密与解密的方法详解

2015-01-24信息快讯网

本篇文章是对PHP使用DES进行加密与解密的方法进行了详细的分析介绍,需要的朋友参考下

DES是一种标准的数据加密算法,关于这个算法的详细介绍可以参考wiki和百度百科:

wiki百科    百度百科

php中有一个扩展可以支持DES的加密算法,是:extension=php_mcrypt.dll

在配置文件中将这个扩展打开还不能够在windows环境下使用

需要将PHP文件夹下的 libmcrypt.dll 拷贝到系统的 system32 目录下,这是通过phpinfo可以查看到mcrypt表示这个模块可以正常试用了。

下面是PHP中使用DES加密解密的一个例子:

//$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中加密解密函数与DES加密解密实例
php中__destruct与register_shutdown_function执行的先后顺序问题
destoon出现验证码不显示时的紧急处理方法
destoon供应信息title调用出公司名称的方法
destoon实现不同会员组公司名称显示不同的颜色的方法
保存到桌面、设为桌面且带图标的PHP代码
php使浏览器直接下载pdf文件的方法
php ckeditor上传图片文件名乱码解决方法
php解析xml提示Invalid byte 1 of 1-byte UTF-8 sequence错误的处理方法
php遍历目录与文件夹的多种方法详解
CodeIgniter生成网站sitemap地图的方法
session在php5.3中的变化 session_is_registered() is deprecated in
CodeIgniter使用phpcms模板引擎
CodeIgniter基本配置详细介绍
PHP开发工具ZendStudio下Xdebug工具使用说明详解
PHP加密扩展库Mcrypt安装和实例
php加密解密函数authcode的用法详细解析
PHP加密函数 Javascript/Js 解密函数
php使用异或实现的加密解密实例
php实现MD5加密16位(不要默认的32位)
php定时计划任务的实现方法详解
php xml常用函数的集合(比较详细)
PHP5函数小全(分享)
解析php时间戳与日期的转换
基于header的一些常用指令详解
深入php 正则表达式的学习探讨
PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解
一个简洁的PHP可逆加密函数(分享)
深入理解require与require_once与include以及include_once的区别
深入php define()函数以及defined()函数的用法详解
基于session_unset与session_destroy的区别详解
怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
PHP和.net中des加解密的实现方法
PHP可逆加密/解密函数分享
php中3des加密代码(完全与.net中的兼容)
通过PHP的内置函数,通过DES算法对数据加密和解密
©2014-2024 dbsqp.com