1、设定密钥

2、JS加密

function handle_password(password_text) {
    var key = 'yourkey';
    var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-=+";
    var nh = Math.ceil(Math.random() * 64) - 1;
    var ch = chars.charAt(nh);
    var md_key = hex_md5(key + ch);
    md_key = md_key.substr(nh % 8, nh % 8 + 7);
    password_text = Base64.encode(password_text);
    var tmp = '';
    var i = 0, j = 0, k = 0;
    for (i = 0; i < password_text.length; i++) {
        k = k == md_key.length ? 0 : k;
        j = (nh + chars.indexOf(password_text[i]) + md_key.charCodeAt(k++)) % 64;
        tmp += chars[j];
    }
    return encodeURI(ch + tmp);
}

3、PHP加解密

    public static function lock($txt, $key = 'yourkey')
    {
        $chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
        $nh = rand(0, strlen($chars) - 1);
        $ch = $chars[$nh];
        $mdKey = md5($key . $ch);
        $mdKey = substr($mdKey, $nh % 8, $nh % 8 + 7);
        $txt = base64_encode($txt);
        $tmp = '';
        $k = 0;
        for ($i = 0; $i < strlen($txt); $i++) {
            $k = $k == strlen($mdKey) ? 0 : $k;
            $j = ($nh + strpos($chars, $txt[$i]) + ord($mdKey[$k++])) % (strlen($chars) - 1);
            $tmp .= $chars[$j];
        }
        return urlencode($ch . $tmp);
    }

    public static function unlock($txt, $key = 'yourkey')
    {
        $txt = urldecode($txt);
        $chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-=+";
        $ch = $txt[0];
        $nh = strpos($chars, $ch);
        $mdKey = md5($key . $ch);
        $mdKey = substr($mdKey, $nh % 8, $nh % 8 + 7);
        $txt = substr($txt, 1);
        $tmp = '';
        $k = 0;
        for ($i = 0; $i < strlen($txt); $i++) {
            $k = $k == strlen($mdKey) ? 0 : $k;
            $j = strpos($chars, $txt[$i]) - $nh - ord($mdKey[$k++]);
            while ($j < 0) $j += 64;
            $tmp .= $chars[$j];
        }
        return base64_decode($tmp);
    }

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部