12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- /**
- * SimpleSec.php UTF-8
- * 简单加解密
- *
- * @date : 2018/4/24 23:40
- *
- * @license 这不是一个自由软件,未经授权不许任何使用和传播。
- * @author : wuyonghong <wyh@huosdk.com>
- * @version : HUOSDK 8.0
- */
- namespace huolib\tool;
- class SimpleSec {
- /**
- * 简单对称加密算法之加密
- *
- * @param String $string 需要加密的字串
- * @param String $key 加密EKY
- *
- * @return String
- */
- public static function encode($string = '', $key = 'huosdk') {
- $_str_arr = str_split(base64_encode($string));
- $_str_count = count($_str_arr);
- foreach (str_split($key) as $_k => $_v) {
- $_k < $_str_count && $_str_arr[$_k] .= $_v;
- }
- return str_replace(
- array('=', '+', '/'
- ), array('O0O0O', 'o000o', 'oo00o'
- ), join('', $_str_arr)
- );
- }
- /**
- * 简单对称加密算法之解密
- *
- * @param String $string 需要解密的字串
- * @param String $key 解密KEY
- *
- * @return String
- */
- public static function decode($string = '', $key = 'huosdk') {
- $_str_arr = str_split(
- str_replace(
- array('O0O0O', 'o000o', 'oo00o'
- ), array('=', '+', '/'
- ), $string
- ), 2
- );
- $_str_count = count($_str_arr);
- foreach (str_split($key) as $_k => $_v) {
- $_k <= $_str_count && isset($_str_arr[$_k]) && $_str_arr[$_k][1] === $_v
- && $_str_arr[$_k] = $_str_arr[$_k][0];
- }
- return base64_decode(join('', $_str_arr));
- }
- }
|