时间:2021-07-01 10:21:17 帮助过:25人阅读
最近在整理代码发现了一个不错的东西,结合md5的加解密算法。网上关于php结合md5的加密,解密算法比较少的,其实php手册里面就有,改一改就行了。在此贴一下,用这算法要加载一个php模块mcrypt,不然用不了。
//加密 function string2secret($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; } //解密 function secret2string($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); return trim($string); } echo secret2string(string2secret("11111111111111111")); //显示结果是11111111111111111 echo string2secret("11111111111111111"); //显示乱码
php经常用的加解密函数,base64_encode,base64_decode。
希望本文所述对大家PHP程序设计有所帮助。
更多php结合md5实现的加密解密方法相关文章请关注PHP中文网!