admin管理员组文章数量:1794759
PHP相关系列
今天一直折腾和JAVA对接数据加密解密的问题。
刚开始使用TEA的加密算法,但是JAVA那边和PHP端加密出来的结果不一样
只能修改算法,将算法修改成了DES的加密算法
但是PHP需要装一个mcrypt扩展,这点有点烦人
看代码吧:
/** * 加密 * @param string $str 字符串 * @param string $key 密钥 */ public static function encrypt($str, $key) { $block = mcrypt_get_block_size('des', 'ecb'); $pad = $block - (strlen($str) % $block); $str .= str_repeat(chr($pad), $pad); $str = mcrypt_encrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB); return base64_encode($str); } /** * 解密 * @param string $str 字符串 * @param string $key 密钥 */ public static function decrypt($str, $key) { $str = base64_decode($str); $str = mcrypt_decrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB); $block = mcrypt_get_block_size('des', 'ecb'); $pad = ord($str[($len = strlen($str)) - 1]); return substr($str, 0, strlen($str) - $pad); }
版权声明:本文标题:PHP相关系列 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686923434a118698.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论