PHP使用DES进行加密与解密的方法详解
DES是一种标准的数据加密算法,关于这个算法的详细介绍可以参考wiki和百度百科:
php中有一个扩展可以支持DES的加密算法,是:
在配置文件中将这个扩展打开还不能够在windows环境下使用
需要将PHP文件夹下的libmcrypt.dll拷贝到系统的system32目录下,这是通过phpinfo可以查看到mcrypt表示这个模块可以正常试用了。
下面是PHP中使用DES加密解密的一个例子:
//$input-stufftodecrypt
//$key-thesecretkeytouse
functiondo_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);
returntrim(chop(base64_encode($encrypted_data)));
}
//$input-stufftodecrypt
//$key-thesecretkeytouse
functiondo_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);
returntrim(chop($decrypted_data));
}
相关文章
- php替换字符串中,PHP 替换字符串中的一些字符方法介绍
- 【说站】PHP有哪些屏蔽错误的方法
- 【说站】php.ini中屏蔽所有错误的方法
- PHP rmdir():删除目录
- PHP连接MySQL数据库的步骤与方法(php如何连接mysql)
- Linux切换PHP版本:快速而安全的方法(linux切换php版本)
- 版本实现Linux安装多个PHP版本的方法(linux安装多个php)
- php微信卡券logo上传方法详解编程语言
- PHP与MySQL网站开发实操指南(php和mysql开发)
- PHP连接MSSQL库的方法(php链接mssql)
- 数据PHP实现MySQL数据导出的实现方法(php导出mysql)
- Linux环境下,如何高效、简单地编写PHP代码(linux下写php)
- PHP检测MySQL性能的方法(php检测mysql)
- PHP读取Linux文件的方法(php读取linux文件)
- PHP连接MSSQL数据库的方法和步骤(php如何连接mssql)
- PHP无法连接MSSQL数据库问题的解决方法(php 无法 mssql)
- 快速学习PHP Redis的使用方法(php redis怎么用)
- PHP操作MySQL数据库详解,快速学习调用方法(php怎么调用mysql)
- PHP开启Redis扩展:实现网站快速加载(php开启redis扩展)
- Linux下轻松执行PHP文件的方法(linux执行php文件)
- php程序的国际化实现方法(利用gettext)
- php去除换行符的方法小结(PHP_EOL变量的使用)
- 使用php实现下载生成某链接快捷方式的解决方法
- 浅析PHP的ASCII码转换类
- php另类上传图片的方法(PHP用Socket上传图片)
- PHP用身份证号获取星座和生肖的方法
- PHP将字符分解为多个字符串的方法