JS混淆简单参考:几个实用的JS混淆工具。

一、 基本原理

混淆主要涉及两种思路:

成都创新互联坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。10年网站建设经验成都创新互联是成都老牌网站营销服务商,为您提供成都做网站、网站建设、网站设计、H5响应式网站、网站制作、品牌网站设计小程序制作服务,给众多知名企业提供过好品质的建站服务。

a.通过正则替换实现的混淆器;

b.通过语法树替换实现的混淆器。

第一种实现成本低,但是效果也一般,适合对混淆要求不高的场景。第二种实现成本较高,但是更灵活,而且更安全,更适合对抗场景。

二、 工具

2.1 jascriptobfascator
包含在线版和桌面版,试用了下效果还行。

桌面版:

JS混淆简单参考:几个实用的JS混淆工具。

2.2  Uglifyjs(开源)

uglifyjs是一个开源的js 压缩工具,主要用于压缩,混淆功能并不强。这

Uglify混淆主要使用了以下方法(AST指抽象语法树):
字符串解析成AST
解析AST,计算出作用域、变量名等
提供遍历AST的方法,找到你想要修改的节点
提供把AST打印成源代码的功能
提供美化代码的功能
提供定位某个word位置的功能

2.3  jshsman

jshaman是一个商业级工具,看了很多社区的评论,这个目前是最好的,可以在线免费使用,也可以购买商业版。

地址:http://jshaman.com/
网站很干净,没什么烦人的广告,用起来挺清爽。

JS混淆简单参考:几个实用的JS混淆工具。

2.4  jsfuck

jsfuck 是一个开源的js 混淆工具,原理比较简单,其实就是通过特定的字符串加上下标定位字符,再由这些字符替换源代码,从而实现混淆。
官网:http://www.jsfuck.com/,混淆功能看上去比较强大,但是本质上我认为是一种编码,而且它让会文件体积增大很多。对于太多的代码不能混淆,混淆后会出错。

三、 总结

建议:如果要做代码压缩,建议使用Uglifyjs,如果是为了安全性,做js代码混淆,建议使用jshaman。


网页名称:JS混淆简单参考:几个实用的JS混淆工具。
文章起源:http://ybzwz.com/article/iijhsd.html