您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

简单PHP对称加密解密方法

2024/5/22 14:40:22发布18次查看
最近在项目中使用thinkphp自带的各种对称加密,在经过url传输后出现解释不了的情况,无论使用url转码还是什么,都不起作用,时好时坏,所以就自己随便写了一个加密解密的方法,希望能暂时满足项目的需求吧,目前至少一没有看到代码的人,是很难找到破解的方法的,而且满足在网络中传输后可以正常解码。同时也在这里分享一下,希望得到大家指正,以便完善下代码!
/** * 简单对称加密算法之加密 * @param string $string 需要加密的字串 * @param string $skey 加密eky * @author anyon zou <zoujingli@qq.com> * @date 2013-08-13 19:30 * @update 2014-10-10 10:10 * @return string */ function encode($string = '', $skey = 'cxphp') { $strarr = str_split(base64_encode($string)); $strcount = count($strarr); foreach (str_split($skey) as $key => $value) $key < $strcount && $strarr[$key].=$value; return str_replace(array('=', '+', '/'), array('o0o0o', 'o000o', 'oo00o'), join('', $strarr)); } /** * 简单对称加密算法之解密 * @param string $string 需要解密的字串 * @param string $skey 解密key * @author anyon zou <zoujingli@qq.com> * @date 2013-08-13 19:30 * @update 2014-10-10 10:10 * @return string */ function decode($string = '', $skey = 'cxphp') { $strarr = str_split(str_replace(array('o0o0o', 'o000o', 'oo00o'), array('=', '+', '/'), $string), 2); $strcount = count($strarr); foreach (str_split($skey) as $key => $value) $key <= $strcount && isset($strarr[$key]) && $strarr[$key][1] === $value && $strarr[$key] = $strarr[$key][0]; return base64_decode(join('', $strarr)); } echo '<pre>'; $str = '56,15123365247,54,四大古典风格'; echo "string : " . $str . " <br />"; echo "encode : " . ($enstring = encode($str)) . '<br />'; echo "decode : " . decode($enstring); die();
测试结果如下:
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product