p.s.只是简单的字符串处理,本质还是明文,没有特殊加密效果
PHP加密:
如果只是普通字符,则简单 base64_encode() 转为base64串即可,但是如果字符串中包含emoji等特殊字符,php解密没有问题,但是放js中没有办法直接解密,需要先将字符串urlencode()处理,然后再base64加密。
还需要特别说明的是,js只支持解密utf8编码,如果字符串是gbk的,需要先转成utf8,再加密。
所以gbk字符串的加密方法为
javascript解密:
传递给js的是base64串,所以先解base64,网上有很多js的base64函数,也可以自己用附件里面的jquery.base64.js
<script>
var s_str = "JUU0JUJBJThDJUU2JTlGJUIxJUU1JUFEJTkw";
var d_str = $.base64.decode(s_str ); //解密base64_encode()
d_str = decodeURIComponent( d_str ); //解密urlencode()
alert(d_str);
</script>
jquery.base64.js
点击下载
评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2751
PHP加密:
如果只是普通字符,则简单 base64_encode() 转为base64串即可,但是如果字符串中包含emoji等特殊字符,php解密没有问题,但是放js中没有办法直接解密,需要先将字符串urlencode()处理,然后再base64加密。
还需要特别说明的是,js只支持解密utf8编码,如果字符串是gbk的,需要先转成utf8,再加密。
所以gbk字符串的加密方法为
$title = "你好,世界。";
$title = mb_convert_encoding($title, 'UTF-8','gbk'); //先转编码gbk->utf8
$title = urlencode( $title ) ; //处理emoji等特殊字符,如果没有特殊字符这一步省略
$title = base64_encode( $title ); //对utf8字符串生成base64
$title = mb_convert_encoding($title, 'UTF-8','gbk'); //先转编码gbk->utf8
$title = urlencode( $title ) ; //处理emoji等特殊字符,如果没有特殊字符这一步省略
$title = base64_encode( $title ); //对utf8字符串生成base64
javascript解密:
传递给js的是base64串,所以先解base64,网上有很多js的base64函数,也可以自己用附件里面的jquery.base64.js
<script>
var s_str = "JUU0JUJBJThDJUU2JTlGJUIxJUU1JUFEJTkw";
var d_str = $.base64.decode(s_str ); //解密base64_encode()
d_str = decodeURIComponent( d_str ); //解密urlencode()
alert(d_str);
</script>
jquery.base64.js

[最后修改由 admin, 于 2021-01-20 15:53:23]

这篇日志没有评论。
此日志不可发表评论。