php结合md5实现的加密解密方法
本文实例讲述了php结合md5实现的加密解密方法。分享给大家供大家参考,具体如下:
最近在整理代码发现了一个不错的东西,结合md5的加解密算法。网上关于php结合md5的加密,解密算法比较少的,其实php手册里面就有,改一改就行了。在此贴一下,用这算法要加载一个php模块mcrypt,不然用不了。
//加密
functionstring2secret($str)
{
$key="123";
$td=mcrypt_module_open(MCRYPT_DES,'','ecb','');
$iv=mcrypt_create_iv(mcrypt_enc_get_iv_size($td),MCRYPT_RAND);
$ks=mcrypt_enc_get_key_size($td);
$key=substr(md5($key),0,$ks);
mcrypt_generic_init($td,$key,$iv);
$secret=mcrypt_generic($td,$str);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return$secret;
}
//解密
functionsecret2string($sec)
{
$key="123";
$td=mcrypt_module_open(MCRYPT_DES,'','ecb','');
$iv=mcrypt_create_iv(mcrypt_enc_get_iv_size($td),MCRYPT_RAND);
$ks=mcrypt_enc_get_key_size($td);
$key=substr(md5($key),0,$ks);
mcrypt_generic_init($td,$key,$iv);
$string=mdecrypt_generic($td,$sec);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
returntrim($string);
}
echosecret2string(string2secret("11111111111111111"));//显示结果是11111111111111111
echostring2secret("11111111111111111");//显示乱码
php经常用的加解密函数,base64_encode,base64_decode。
更多关于PHP加密解密相关内容感兴趣的读者可查看本站专题:《php加密方法总结》
希望本文所述对大家PHP程序设计有所帮助。